utf-8에서 MySql 테이블 생성이 되지 않습니다. 정보
utf-8에서 MySql 테이블 생성이 되지 않습니다.
본문
사랑비 BGM 을 설치해 볼려고 하였으나... euc-kr 에서는 잘 설치가 되나
소스를 utf-8로 바꾸어 인스톨 시키니 테이블 생성실패라는 에러 메시지가 출력됩니다.
phpMyAdmin 으로 확인해 보니 딸랑 테이블이 하나만 생성이 됩니다.
4개가 생성이 되어야 하는데.....
아래는 테이블 스키마 입니다.
도움주시면 감사하겠습니다....
<?
$table="default";
$sarangbi_bgm_query1 = "CREATE TABLE sarangbi_setup_".$table."(
no int(1) NOT NULL auto_increment,
pw varchar(50),
use_start int(1) DEFAULT '0' NOT NULL,
use_random int(1) DEFAULT '0' NOT NULL,
use_context int(1) DEFAULT '0' NOT NULL,
use_category int(1) DEFAULT '0' NOT NULL,
use_status int(1) DEFAULT '0' NOT NULL,
use_user int(1) DEFAULT '1' NOT NULL,
use_sort int(1) DEFAULT '0' NOT NULL,
use_frame int(1) DEFAULT '0' NOT NULL,
init_volume int(2) DEFAULT '7' NOT NULL,
bgm_frame varchar(255),
list_frame varchar(255),
skin_dir varchar(255),
play_alt varchar(255),
stop_alt varchar(255),
back_alt varchar(255),
forward_alt varchar(255),
pause_alt varchar(255),
vol_up_alt varchar(255),
vol_down_alt varchar(255),
one_alt varchar(255),
loop_alt varchar(255),
sound_on_alt varchar(255),
sound_off_alt varchar(255),
sequence_alt varchar(255),
random_alt varchar(255),
list_alt varchar(255),
admin_alt varchar(255),
num_list int(2) DEFAULT '20' NOT NULL,
PRIMARY KEY (no)) ENGINE=MyISAM DEFAULT CHARSET=utf8 ";
$sarangbi_bgm_query2 = "CREATE TABLE sarangbi_category_".$table."(
no int(13) NOT NULL auto_increment,
name varchar(255) DEFAULT '일반' NOT NULL,
PRIMARY KEY (no)) ENGINE=MyISAM DEFAULT CHARSET=utf8 ";
$sarangbi_bgm_query3 = "CREATE TABLE sarangbi_music_".$table."(
no int(13) NOT NULL auto_increment,
subject varchar(255) DEFAULT 'MUSIC' NOT NULL,
context text,
filename varchar(255),
s_filename varchar(255),
ftp int(13),
link varchar(255),
linkfile int(1) DEFAULT '1' NOT NULL,
use_this int(1) DEFAULT '1' NOT NULL,
category int(13) DEFAULT '1' NOT NULL,
use_caption int(1) DEFAULT '0' NOT NULL,
caption_url varchar(255) DEFAULT '',
caption_filename varchar(255) DEFAULT '',
caption_s_filename varchar(255) DEFAULT '',
PRIMARY KEY(no)) ENGINE=MyISAM DEFAULT CHARSET=utf8 ";
$sarangbi_bgm_query4 = "CREATE TABLE sarangbi_ftp_".$table."(
no int(13) NOT NULL auto_increment,
name varchar(255) DEFAULT '0' NOT NULL,
address varchar(255) DEFAULT '0' NOT NULL,
directory varchar(255),
link varchar(255) DEFAULT '0' NOT NULL,
id varchar(255) DEFAULT '0' NOT NULL,
pw varchar(255) DEFAULT '0' NOT NULL,
port varchar(10) DEFAULT '21' NOT NULL,
PRIMARY KEY (no)) ENGINE=MyISAM DEFAULT CHARSET=utf8 ";
// 초기값 입력
$sarangbi_bgm_query5 = "INSERT INTO sarangbi_setup_".$table." values('1',password('sarangbi'),'1','0','0','0','1','1','3','0','7','top.bgm','top.bgmlist','pink','Play','Stop','Previous Music Play','Next Music Play', 'Pause','Volume Up','Volume Down','No Loop','Loop','Sound On', 'Sound Off', 'Sequence', 'Random', 'Show BGM List','Administrator','20')";
$sarangbi_bgm_query6 = "INSERT INTO sarangbi_category_".$table." values('1','일반')";
?>
소스를 utf-8로 바꾸어 인스톨 시키니 테이블 생성실패라는 에러 메시지가 출력됩니다.
phpMyAdmin 으로 확인해 보니 딸랑 테이블이 하나만 생성이 됩니다.
4개가 생성이 되어야 하는데.....
아래는 테이블 스키마 입니다.
도움주시면 감사하겠습니다....
<?
$table="default";
$sarangbi_bgm_query1 = "CREATE TABLE sarangbi_setup_".$table."(
no int(1) NOT NULL auto_increment,
pw varchar(50),
use_start int(1) DEFAULT '0' NOT NULL,
use_random int(1) DEFAULT '0' NOT NULL,
use_context int(1) DEFAULT '0' NOT NULL,
use_category int(1) DEFAULT '0' NOT NULL,
use_status int(1) DEFAULT '0' NOT NULL,
use_user int(1) DEFAULT '1' NOT NULL,
use_sort int(1) DEFAULT '0' NOT NULL,
use_frame int(1) DEFAULT '0' NOT NULL,
init_volume int(2) DEFAULT '7' NOT NULL,
bgm_frame varchar(255),
list_frame varchar(255),
skin_dir varchar(255),
play_alt varchar(255),
stop_alt varchar(255),
back_alt varchar(255),
forward_alt varchar(255),
pause_alt varchar(255),
vol_up_alt varchar(255),
vol_down_alt varchar(255),
one_alt varchar(255),
loop_alt varchar(255),
sound_on_alt varchar(255),
sound_off_alt varchar(255),
sequence_alt varchar(255),
random_alt varchar(255),
list_alt varchar(255),
admin_alt varchar(255),
num_list int(2) DEFAULT '20' NOT NULL,
PRIMARY KEY (no)) ENGINE=MyISAM DEFAULT CHARSET=utf8 ";
$sarangbi_bgm_query2 = "CREATE TABLE sarangbi_category_".$table."(
no int(13) NOT NULL auto_increment,
name varchar(255) DEFAULT '일반' NOT NULL,
PRIMARY KEY (no)) ENGINE=MyISAM DEFAULT CHARSET=utf8 ";
$sarangbi_bgm_query3 = "CREATE TABLE sarangbi_music_".$table."(
no int(13) NOT NULL auto_increment,
subject varchar(255) DEFAULT 'MUSIC' NOT NULL,
context text,
filename varchar(255),
s_filename varchar(255),
ftp int(13),
link varchar(255),
linkfile int(1) DEFAULT '1' NOT NULL,
use_this int(1) DEFAULT '1' NOT NULL,
category int(13) DEFAULT '1' NOT NULL,
use_caption int(1) DEFAULT '0' NOT NULL,
caption_url varchar(255) DEFAULT '',
caption_filename varchar(255) DEFAULT '',
caption_s_filename varchar(255) DEFAULT '',
PRIMARY KEY(no)) ENGINE=MyISAM DEFAULT CHARSET=utf8 ";
$sarangbi_bgm_query4 = "CREATE TABLE sarangbi_ftp_".$table."(
no int(13) NOT NULL auto_increment,
name varchar(255) DEFAULT '0' NOT NULL,
address varchar(255) DEFAULT '0' NOT NULL,
directory varchar(255),
link varchar(255) DEFAULT '0' NOT NULL,
id varchar(255) DEFAULT '0' NOT NULL,
pw varchar(255) DEFAULT '0' NOT NULL,
port varchar(10) DEFAULT '21' NOT NULL,
PRIMARY KEY (no)) ENGINE=MyISAM DEFAULT CHARSET=utf8 ";
// 초기값 입력
$sarangbi_bgm_query5 = "INSERT INTO sarangbi_setup_".$table." values('1',password('sarangbi'),'1','0','0','0','1','1','3','0','7','top.bgm','top.bgmlist','pink','Play','Stop','Previous Music Play','Next Music Play', 'Pause','Volume Up','Volume Down','No Loop','Loop','Sound On', 'Sound Off', 'Sequence', 'Random', 'Show BGM List','Administrator','20')";
$sarangbi_bgm_query6 = "INSERT INTO sarangbi_category_".$table." values('1','일반')";
?>
댓글 전체

PRIMARY KEY (no)) ENGINE=MyISAM DEFAULT CHARSET=utf-8 ";
부분에서 DEFAULT CHARSET=utf8 이부분을 삭제하십시오.
또는 DEFAULT CHARSET=utf8 을 DEFAULT CHARSET='utf8' 로 감싸 보십시오.
부분에서 DEFAULT CHARSET=utf8 이부분을 삭제하십시오.
또는 DEFAULT CHARSET=utf8 을 DEFAULT CHARSET='utf8' 로 감싸 보십시오.

최신 버전 MY-SQL 사용하시는 분들중에
테이블 생성 실패시... schema.php 을 수정해 주세요.
4개 항목이 있습니다. 모두 아래와 같이 수정해주세요.
no int(1) NOT NULL auto_increment
** DEFAULT '0' 을 삭제하는 것입니다.
관리자 비번도 달라서 접속이 안될수 있습니다.
그러면 아래와 같이 수정해 주세요.
pw varchar(41)
** 초기 값이 20으로 되어있을텐데 41로 수정해주시면 됩니다.
schema.php 수정하신후 DB 테이블 생성되어 있으면 모두 삭제해주신후
다시 설치를 진행하시면 될겁니다.
[출처] 사랑비bgm 테이블생성실패 오류해결|작성자 어머나
http://blog.naver.com/lskyon/40049873237
테이블 생성 실패시... schema.php 을 수정해 주세요.
4개 항목이 있습니다. 모두 아래와 같이 수정해주세요.
no int(1) NOT NULL auto_increment
** DEFAULT '0' 을 삭제하는 것입니다.
관리자 비번도 달라서 접속이 안될수 있습니다.
그러면 아래와 같이 수정해 주세요.
pw varchar(41)
** 초기 값이 20으로 되어있을텐데 41로 수정해주시면 됩니다.
schema.php 수정하신후 DB 테이블 생성되어 있으면 모두 삭제해주신후
다시 설치를 진행하시면 될겁니다.
[출처] 사랑비bgm 테이블생성실패 오류해결|작성자 어머나
http://blog.naver.com/lskyon/40049873237

블루의 기사님 DEFAULT CHARSET=utf8 삭제 후 역시 생성실패로 나옵니다.
DEFAULT CHARSET='utf8' 로 감싸도 역시 실패로 나옵니다.
MySql 버젼은 5.0.27 입니다.
꽈배기님 검색해서 시행해 보았으나 역시 실패했었습니다. 관심에 감사드립니다.
DEFAULT CHARSET='utf8' 로 감싸도 역시 실패로 나옵니다.
MySql 버젼은 5.0.27 입니다.
꽈배기님 검색해서 시행해 보았으나 역시 실패했었습니다. 관심에 감사드립니다.

딸랑 sarangbi_setup_default 요거 하나만 생성되고 나머지는 실패입니다...

일단 두가지다 전 생성이 되던데 쩝;;
근데 궁금한건 예입니다.
$sarangbi_bgm_query5 = "쿼리문"; 은 존재하는데
$sarangbi_bgm_result5 = mysql_query($sarangbi_bgm_query5); 같은 실행문은 어디 있나요 ?
if ($sarangbi_bgm_result5) { echo" 생성성공"; } else { mysql_error(); }
이런 문장은 보이지가 않네요.
저기 조건으로는 가만히 보니까 -_- 단순히 쿼리만 저장을 하고 실행은 하지 않는듯 한데요.
phpmyadmin 자체에서 테스트에도 이상없이 생성됩니다.
------------------------------------------------------------------------------------------SSET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
--
-- 데이터베이스: `보안상의 이유료 생략 XXX`
--
-- --------------------------------------------------------
--
-- 테이블 구조 `sarangbi_setup_default`
--
CREATE TABLE IF NOT EXISTS `sarangbi_setup_default` (
`no` int(1) NOT NULL auto_increment,
`pw` varchar(50) default NULL,
`use_start` int(1) NOT NULL default '0',
`use_random` int(1) NOT NULL default '0',
`use_context` int(1) NOT NULL default '0',
`use_category` int(1) NOT NULL default '0',
`use_status` int(1) NOT NULL default '0',
`use_user` int(1) NOT NULL default '1',
`use_sort` int(1) NOT NULL default '0',
`use_frame` int(1) NOT NULL default '0',
`init_volume` int(2) NOT NULL default '7',
`bgm_frame` varchar(255) default NULL,
`list_frame` varchar(255) default NULL,
`skin_dir` varchar(255) default NULL,
`play_alt` varchar(255) default NULL,
`stop_alt` varchar(255) default NULL,
`back_alt` varchar(255) default NULL,
`forward_alt` varchar(255) default NULL,
`pause_alt` varchar(255) default NULL,
`vol_up_alt` varchar(255) default NULL,
`vol_down_alt` varchar(255) default NULL,
`one_alt` varchar(255) default NULL,
`loop_alt` varchar(255) default NULL,
`sound_on_alt` varchar(255) default NULL,
`sound_off_alt` varchar(255) default NULL,
`sequence_alt` varchar(255) default NULL,
`random_alt` varchar(255) default NULL,
`list_alt` varchar(255) default NULL,
`admin_alt` varchar(255) default NULL,
`num_list` int(2) NOT NULL default '20',
PRIMARY KEY (`no`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;
--
-- 테이블의 덤프 데이터 `sarangbi_setup_default`
--
INSERT INTO `sarangbi_setup_default` (`no`, `pw`, `use_start`, `use_random`, `use_context`, `use_category`, `use_status`, `use_user`, `use_sort`, `use_frame`, `init_volume`, `bgm_frame`, `list_frame`, `skin_dir`, `play_alt`, `stop_alt`, `back_alt`, `forward_alt`, `pause_alt`, `vol_up_alt`, `vol_down_alt`, `one_alt`, `loop_alt`, `sound_on_alt`, `sound_off_alt`, `sequence_alt`, `random_alt`, `list_alt`, `admin_alt`, `num_list`) VALUES
(1, '*51AEA877351D10A9159587D34F4C8969C27A1826', 1, 0, 0, 0, 1, 1, 3, 0, 7, 'top.bgm', 'top.bgmlist', 'pink', 'Play', 'Stop', 'Previous Music Play', 'Next Music Play', 'Pause', 'Volume Up', 'Volume Down', 'No Loop', 'Loop', 'Sound On', 'Sound Off', 'Sequence', 'Random', 'Show BGM List', 'Administrator', 20);
아마 이점을 확인해 보시길 바랍니다. -_-;;
근데 궁금한건 예입니다.
$sarangbi_bgm_query5 = "쿼리문"; 은 존재하는데
$sarangbi_bgm_result5 = mysql_query($sarangbi_bgm_query5); 같은 실행문은 어디 있나요 ?
if ($sarangbi_bgm_result5) { echo" 생성성공"; } else { mysql_error(); }
이런 문장은 보이지가 않네요.
저기 조건으로는 가만히 보니까 -_- 단순히 쿼리만 저장을 하고 실행은 하지 않는듯 한데요.
phpmyadmin 자체에서 테스트에도 이상없이 생성됩니다.
------------------------------------------------------------------------------------------SSET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
--
-- 데이터베이스: `보안상의 이유료 생략 XXX`
--
-- --------------------------------------------------------
--
-- 테이블 구조 `sarangbi_setup_default`
--
CREATE TABLE IF NOT EXISTS `sarangbi_setup_default` (
`no` int(1) NOT NULL auto_increment,
`pw` varchar(50) default NULL,
`use_start` int(1) NOT NULL default '0',
`use_random` int(1) NOT NULL default '0',
`use_context` int(1) NOT NULL default '0',
`use_category` int(1) NOT NULL default '0',
`use_status` int(1) NOT NULL default '0',
`use_user` int(1) NOT NULL default '1',
`use_sort` int(1) NOT NULL default '0',
`use_frame` int(1) NOT NULL default '0',
`init_volume` int(2) NOT NULL default '7',
`bgm_frame` varchar(255) default NULL,
`list_frame` varchar(255) default NULL,
`skin_dir` varchar(255) default NULL,
`play_alt` varchar(255) default NULL,
`stop_alt` varchar(255) default NULL,
`back_alt` varchar(255) default NULL,
`forward_alt` varchar(255) default NULL,
`pause_alt` varchar(255) default NULL,
`vol_up_alt` varchar(255) default NULL,
`vol_down_alt` varchar(255) default NULL,
`one_alt` varchar(255) default NULL,
`loop_alt` varchar(255) default NULL,
`sound_on_alt` varchar(255) default NULL,
`sound_off_alt` varchar(255) default NULL,
`sequence_alt` varchar(255) default NULL,
`random_alt` varchar(255) default NULL,
`list_alt` varchar(255) default NULL,
`admin_alt` varchar(255) default NULL,
`num_list` int(2) NOT NULL default '20',
PRIMARY KEY (`no`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;
--
-- 테이블의 덤프 데이터 `sarangbi_setup_default`
--
INSERT INTO `sarangbi_setup_default` (`no`, `pw`, `use_start`, `use_random`, `use_context`, `use_category`, `use_status`, `use_user`, `use_sort`, `use_frame`, `init_volume`, `bgm_frame`, `list_frame`, `skin_dir`, `play_alt`, `stop_alt`, `back_alt`, `forward_alt`, `pause_alt`, `vol_up_alt`, `vol_down_alt`, `one_alt`, `loop_alt`, `sound_on_alt`, `sound_off_alt`, `sequence_alt`, `random_alt`, `list_alt`, `admin_alt`, `num_list`) VALUES
(1, '*51AEA877351D10A9159587D34F4C8969C27A1826', 1, 0, 0, 0, 1, 1, 3, 0, 7, 'top.bgm', 'top.bgmlist', 'pink', 'Play', 'Stop', 'Previous Music Play', 'Next Music Play', 'Pause', 'Volume Up', 'Volume Down', 'No Loop', 'Loop', 'Sound On', 'Sound Off', 'Sequence', 'Random', 'Show BGM List', 'Administrator', 20);
아마 이점을 확인해 보시길 바랍니다. -_-;;