쪽지 DB 생성 에러 도와주세요.. 정보
쪽지 DB 생성 에러 도와주세요..
본문
쪽지2를 처음 올려서 /adm/memo2_upgrade.php 하면 디비 생성 중에 에러가 나타납니다.
utf-8 로 다 변경하였고요....
1067 에러는 검색으로는 거의 경로 문제라고 나와있는데... 다른 그누 스키마들은 다 이상 없이 테이블이 생성이 됩니다.
PhpMyAdmin 으로 확인 해 보면 테이블이 4개 생성이 되어 있습니다.
g4_memo_recv 0 MyISAM utf8_unicode_ci 1.0 KB -
g4_memo_save 0 MyISAM utf8_unicode_ci 1.0 KB -
g4_memo_send 0 MyISAM utf8_unicode_ci 1.0 KB -
g4_memo_spam 0 MyISAM utf8_unicode_ci 1.0 KB -
`g4_memo_notice` 와 `g4_friend` `g4_memo_group` `g4_memo_group_member`도 생성이 되어야 하는게 아닌가요 ?
CREATE TABLE `g4_memo_notice` ( `me_id` int(11) NOT NULL default '0' auto_increment, `me_recv_mb_id` varchar(255) NOT NULL default '', `me_send_mb_id` varchar(255) NOT NULL default '', `me_send_datetime` datetime NOT NULL default '0000-00-00 00:00:00', `me_read_datetime` datetime NOT NULL default '0000-00-00 00:00:00', `me_memo` mediumtext NOT NULL default '', `me_file_local` varchar(255) NOT NULL default '', `me_file_server` varchar(255) NOT NULL default '', `me_subject` varchar(255) NOT NULL default '', `memo_type` varchar(255) NOT NULL default '', `memo_owner` varchar(255) NOT NULL default '', PRIMARY KEY (`me_id`), KEY `me_recv_mb_id_idx` (`me_recv_mb_id`), KEY `me_send_mb_id_idx` (`me_send_mb_id`) ) ENGINE=MyISAM;
1067 : 'me_id'�� ��ȿ���� ���� ����Ʈ ���� �����ϼ̽��ϴ�.
error file : /adm/memo2_upgrade.php
도움 간절히 바라겠습니다.
밤새 삽질 중 입니다.
물론.. config.php에
$g4['memo_recv_table'] = $g4['table_prefix'] . "memo_recv"; // 메모 테이블 (수신)
$g4['memo_send_table'] = $g4['table_prefix'] . "memo_send"; // 메모 테이블 (발신)
$g4['memo_save_table'] = $g4['table_prefix'] . "memo_save"; // 메모 테이블 (저장)
$g4['memo_spam_table'] = $g4['table_prefix'] . "memo_spam"; // 메모 테이블 (스팸)
$g4['memo_notice_table'] = $g4['table_prefix'] . "memo_notice"; // 메모 테이블 (공지)
$g4['memo_group_table'] = $g4['table_prefix'] . "memo_group"; // 메모 테이블 (그룹)
$g4['memo_group_member_table'] = $g4['table_prefix'] . "memo_group_member"; // 메모 테이블 (그룹멤버)
$g4['friend_table'] = $g4['table_prefix'] . "friend"; // 친구 테이블
도 추가 하였습니다..
참고로 MySQL version: 5.0.27
utf-8 로 다 변경하였고요....
1067 에러는 검색으로는 거의 경로 문제라고 나와있는데... 다른 그누 스키마들은 다 이상 없이 테이블이 생성이 됩니다.
PhpMyAdmin 으로 확인 해 보면 테이블이 4개 생성이 되어 있습니다.
g4_memo_recv 0 MyISAM utf8_unicode_ci 1.0 KB -
g4_memo_save 0 MyISAM utf8_unicode_ci 1.0 KB -
g4_memo_send 0 MyISAM utf8_unicode_ci 1.0 KB -
g4_memo_spam 0 MyISAM utf8_unicode_ci 1.0 KB -
`g4_memo_notice` 와 `g4_friend` `g4_memo_group` `g4_memo_group_member`도 생성이 되어야 하는게 아닌가요 ?
CREATE TABLE `g4_memo_notice` ( `me_id` int(11) NOT NULL default '0' auto_increment, `me_recv_mb_id` varchar(255) NOT NULL default '', `me_send_mb_id` varchar(255) NOT NULL default '', `me_send_datetime` datetime NOT NULL default '0000-00-00 00:00:00', `me_read_datetime` datetime NOT NULL default '0000-00-00 00:00:00', `me_memo` mediumtext NOT NULL default '', `me_file_local` varchar(255) NOT NULL default '', `me_file_server` varchar(255) NOT NULL default '', `me_subject` varchar(255) NOT NULL default '', `memo_type` varchar(255) NOT NULL default '', `memo_owner` varchar(255) NOT NULL default '', PRIMARY KEY (`me_id`), KEY `me_recv_mb_id_idx` (`me_recv_mb_id`), KEY `me_send_mb_id_idx` (`me_send_mb_id`) ) ENGINE=MyISAM;
1067 : 'me_id'�� ��ȿ���� ���� ����Ʈ ���� �����ϼ̽��ϴ�.
error file : /adm/memo2_upgrade.php
도움 간절히 바라겠습니다.
밤새 삽질 중 입니다.
물론.. config.php에
$g4['memo_recv_table'] = $g4['table_prefix'] . "memo_recv"; // 메모 테이블 (수신)
$g4['memo_send_table'] = $g4['table_prefix'] . "memo_send"; // 메모 테이블 (발신)
$g4['memo_save_table'] = $g4['table_prefix'] . "memo_save"; // 메모 테이블 (저장)
$g4['memo_spam_table'] = $g4['table_prefix'] . "memo_spam"; // 메모 테이블 (스팸)
$g4['memo_notice_table'] = $g4['table_prefix'] . "memo_notice"; // 메모 테이블 (공지)
$g4['memo_group_table'] = $g4['table_prefix'] . "memo_group"; // 메모 테이블 (그룹)
$g4['memo_group_member_table'] = $g4['table_prefix'] . "memo_group_member"; // 메모 테이블 (그룹멤버)
$g4['friend_table'] = $g4['table_prefix'] . "friend"; // 친구 테이블
도 추가 하였습니다..
참고로 MySQL version: 5.0.27
추천
0
0
댓글 전체
ENGINE=MyISAM 라고 된 부분을 지워보세요.

/adm/memo2_upgrade.php 는 성공했으나
/adm/memo2_upgrade2.php 에서 역시 디비 insert 에러가 나타납니다...
<?
$sub_menu = "100600";
include_once("./_common.php");
check_demo();
if ($is_admin != "super")
alert("최고관리자만 접근 가능합니다.", $g4[path]);
$g4[title] = "업그레이드";
include_once("./admin.head.php");
// 일반적인 메모의 경우
$sql = " select * from $g4[memo_table] ";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++)
{
$me_subject = $row[me_send_mb_id] . "님이 보내신 쪽지 입니다";
$me_memo_text = nl2br($row[me_memo]);
$sql = " insert into $g4[memo_recv_table] (me_id, me_recv_mb_id, me_send_mb_id, me_send_datetime, me_read_datetime, me_memo, me_file_local, me_file_server, me_subject, memo_type, memo_owner)
values ($i+1, '$row[me_recv_mb_id]', '$row[me_send_mb_id]', '$row[me_send_datetime]', '$row[me_read_datetime]', '" . addslashes($me_memo_text) . "', '$bmemos', '$memofile', '" . addslashes(cut_str($me_memo_text,30)) . "', 'recv', '$row[me_recv_mb_id]')";
sql_query($sql);
//$me_id = mysql_insert_id();
$sql = " insert into $g4[memo_send_table] (me_id, me_recv_mb_id, me_send_mb_id, me_send_datetime, me_read_datetime, me_memo, me_file_local, me_file_server, me_subject, memo_type, memo_owner)
values ($i+1, '$row[me_recv_mb_id]', '$row[me_send_mb_id]', '$row[me_send_datetime]', '$row[me_read_datetime]', '" . addslashes($me_memo_text) . "', '$bmemos', '$memofile', '" . addslashes(cut_str($me_memo_text,30)) . "', 'send', '$row[me_send_mb_id]')";
sql_query($sql);
echo "i: " . $i;
}
echo "UPGRADE 완료.";
include_once("./admin.tail.php");
?>
/adm/memo2_upgrade2.php 에서 역시 디비 insert 에러가 나타납니다...
<?
$sub_menu = "100600";
include_once("./_common.php");
check_demo();
if ($is_admin != "super")
alert("최고관리자만 접근 가능합니다.", $g4[path]);
$g4[title] = "업그레이드";
include_once("./admin.head.php");
// 일반적인 메모의 경우
$sql = " select * from $g4[memo_table] ";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++)
{
$me_subject = $row[me_send_mb_id] . "님이 보내신 쪽지 입니다";
$me_memo_text = nl2br($row[me_memo]);
$sql = " insert into $g4[memo_recv_table] (me_id, me_recv_mb_id, me_send_mb_id, me_send_datetime, me_read_datetime, me_memo, me_file_local, me_file_server, me_subject, memo_type, memo_owner)
values ($i+1, '$row[me_recv_mb_id]', '$row[me_send_mb_id]', '$row[me_send_datetime]', '$row[me_read_datetime]', '" . addslashes($me_memo_text) . "', '$bmemos', '$memofile', '" . addslashes(cut_str($me_memo_text,30)) . "', 'recv', '$row[me_recv_mb_id]')";
sql_query($sql);
//$me_id = mysql_insert_id();
$sql = " insert into $g4[memo_send_table] (me_id, me_recv_mb_id, me_send_mb_id, me_send_datetime, me_read_datetime, me_memo, me_file_local, me_file_server, me_subject, memo_type, memo_owner)
values ($i+1, '$row[me_recv_mb_id]', '$row[me_send_mb_id]', '$row[me_send_datetime]', '$row[me_read_datetime]', '" . addslashes($me_memo_text) . "', '$bmemos', '$memofile', '" . addslashes(cut_str($me_memo_text,30)) . "', 'send', '$row[me_send_mb_id]')";
sql_query($sql);
echo "i: " . $i;
}
echo "UPGRADE 완료.";
include_once("./admin.tail.php");
?>
$g4[memo_recv_table]의 값이 정상인지 확인하시고, recv, send 테이블이 비어 있는지 확인하세요.

테이블 구조상 이상이 없어 보입니다.
당연히 테이블이 비어져 있습니다.
--
-- 테이블 구조 `g4_memo_recv`
--
CREATE TABLE `g4_memo_recv` (
`me_id` int(11) NOT NULL default '0',
`me_recv_mb_id` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`me_send_mb_id` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`me_send_datetime` datetime NOT NULL default '0000-00-00 00:00:00',
`me_read_datetime` datetime NOT NULL default '0000-00-00 00:00:00',
`me_memo` mediumtext collate utf8_unicode_ci NOT NULL,
`me_file_local` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`me_file_server` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`me_subject` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`memo_type` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`memo_owner` varchar(255) collate utf8_unicode_ci NOT NULL default '',
PRIMARY KEY (`me_id`),
KEY `me_recv_mb_id_idx` (`me_recv_mb_id`),
KEY `me_send_mb_id_idx` (`me_send_mb_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
--
-- 테이블의 덤프 데이터 `g4_memo_recv`
--
--
-- 테이블 구조 `g4_memo_send`
--
CREATE TABLE `g4_memo_send` (
`me_id` int(11) NOT NULL default '0',
`me_recv_mb_id` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`me_send_mb_id` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`me_send_datetime` datetime NOT NULL default '0000-00-00 00:00:00',
`me_read_datetime` datetime NOT NULL default '0000-00-00 00:00:00',
`me_memo` mediumtext collate utf8_unicode_ci NOT NULL,
`me_file_local` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`me_file_server` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`me_subject` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`memo_type` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`memo_owner` varchar(255) collate utf8_unicode_ci NOT NULL default '',
PRIMARY KEY (`me_id`),
KEY `me_recv_mb_id_idx` (`me_recv_mb_id`),
KEY `me_send_mb_id_idx` (`me_send_mb_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
--
-- 테이블의 덤프 데이터 `g4_memo_send`
--
당연히 테이블이 비어져 있습니다.
--
-- 테이블 구조 `g4_memo_recv`
--
CREATE TABLE `g4_memo_recv` (
`me_id` int(11) NOT NULL default '0',
`me_recv_mb_id` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`me_send_mb_id` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`me_send_datetime` datetime NOT NULL default '0000-00-00 00:00:00',
`me_read_datetime` datetime NOT NULL default '0000-00-00 00:00:00',
`me_memo` mediumtext collate utf8_unicode_ci NOT NULL,
`me_file_local` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`me_file_server` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`me_subject` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`memo_type` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`memo_owner` varchar(255) collate utf8_unicode_ci NOT NULL default '',
PRIMARY KEY (`me_id`),
KEY `me_recv_mb_id_idx` (`me_recv_mb_id`),
KEY `me_send_mb_id_idx` (`me_send_mb_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
--
-- 테이블의 덤프 데이터 `g4_memo_recv`
--
--
-- 테이블 구조 `g4_memo_send`
--
CREATE TABLE `g4_memo_send` (
`me_id` int(11) NOT NULL default '0',
`me_recv_mb_id` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`me_send_mb_id` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`me_send_datetime` datetime NOT NULL default '0000-00-00 00:00:00',
`me_read_datetime` datetime NOT NULL default '0000-00-00 00:00:00',
`me_memo` mediumtext collate utf8_unicode_ci NOT NULL,
`me_file_local` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`me_file_server` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`me_subject` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`memo_type` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`memo_owner` varchar(255) collate utf8_unicode_ci NOT NULL default '',
PRIMARY KEY (`me_id`),
KEY `me_recv_mb_id_idx` (`me_recv_mb_id`),
KEY `me_send_mb_id_idx` (`me_send_mb_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
--
-- 테이블의 덤프 데이터 `g4_memo_send`
--

다른 테이블 필드하고의 구조 차이가 납니다.
다른 테이블 필드 테이블의 덤프(스키마) 데이터 보기를 했을 때
collate utf8_unicode_ci 가 붙게 됩니다.
-euckr-에서 덤프데이터는 다음과 같습니다.
--
-- 테이블 구조 `g4_memo_notice`
--
CREATE TABLE `g4_memo_notice` (
`me_id` int(11) NOT NULL auto_increment,
`me_recv_mb_id` varchar(255) NOT NULL default '',
`me_send_mb_id` varchar(255) NOT NULL default '',
`me_send_datetime` datetime NOT NULL default '0000-00-00 00:00:00',
`me_read_datetime` datetime NOT NULL default '0000-00-00 00:00:00',
`me_memo` mediumtext NOT NULL,
`me_file_local` varchar(255) NOT NULL,
`me_file_server` varchar(255) NOT NULL,
`me_subject` varchar(255) NOT NULL,
`memo_type` varchar(255) NOT NULL,
`memo_owner` varchar(255) NOT NULL,
PRIMARY KEY (`me_id`),
KEY `me_recv_mb_id_idx` (`me_recv_mb_id`),
KEY `me_send_mb_id_idx` (`me_send_mb_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
--
-- 테이블의 덤프 데이터 `g4_memo_notice`
--
다른 테이블 필드 테이블의 덤프(스키마) 데이터 보기를 했을 때
collate utf8_unicode_ci 가 붙게 됩니다.
-euckr-에서 덤프데이터는 다음과 같습니다.
--
-- 테이블 구조 `g4_memo_notice`
--
CREATE TABLE `g4_memo_notice` (
`me_id` int(11) NOT NULL auto_increment,
`me_recv_mb_id` varchar(255) NOT NULL default '',
`me_send_mb_id` varchar(255) NOT NULL default '',
`me_send_datetime` datetime NOT NULL default '0000-00-00 00:00:00',
`me_read_datetime` datetime NOT NULL default '0000-00-00 00:00:00',
`me_memo` mediumtext NOT NULL,
`me_file_local` varchar(255) NOT NULL,
`me_file_server` varchar(255) NOT NULL,
`me_subject` varchar(255) NOT NULL,
`memo_type` varchar(255) NOT NULL,
`memo_owner` varchar(255) NOT NULL,
PRIMARY KEY (`me_id`),
KEY `me_recv_mb_id_idx` (`me_recv_mb_id`),
KEY `me_send_mb_id_idx` (`me_send_mb_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
--
-- 테이블의 덤프 데이터 `g4_memo_notice`
--
# 쪽지2 - 수신테이블의 경우
`me_id` int(11) NOT NULL auto_increment,
입니다. 그누는 me_id를 계산하지만 쪽지2는 자동으로 부여합니다.
`me_id` int(11) NOT NULL auto_increment,
입니다. 그누는 me_id를 계산하지만 쪽지2는 자동으로 부여합니다.

테이블 필드가 달라 보입니다.
euckr 에서는 `me_id` int(11) NOT NULL auto_increment,이나
utf8에서는 `me_id` int(11) NOT NULL default '0', 로 테이블이 생성됩니다.
홈피가 다른 euckr과 utf8에서 비교해 본 결과입니다.
euckr 에서는 `me_id` int(11) NOT NULL auto_increment,이나
utf8에서는 `me_id` int(11) NOT NULL default '0', 로 테이블이 생성됩니다.
홈피가 다른 euckr과 utf8에서 비교해 본 결과입니다.