묻고답하기
게시판 내용 옮기기 질문
2014.07.24 18:21
예전에 만들어두었던 사이트에 게시판이 있습니다. 그곳에 있는데이터를
제로보드 XE 게시판으로 옮겨야 하는데요. 근데 데이터 양이 좀 많습니다.
그래서 이전 사이트의 게시판의 DB를 백업해서 제로보드XE가 설치된 Mysql로 옮겼습니다.
즉 테이블은 같은 위치에 있는데요.
문제는 두개의 게시판이 서로 다른 형태여서 필요한 내용만 옮기는데 문제가 있습니다.
+-----------+---------------------+------+-----+---------------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+---------------------+------+-----+---------------------+----------------+
| idx | int(10) unsigned | NO | PRI | NULL | auto_increment |
| code | varchar(50) | NO | MUL | | |
| subject | varchar(100) | NO | MUL | | |
| name | varchar(30) | NO | MUL | | |
| pwd | varchar(30) | NO | | | |
| email | varchar(50) | NO | | | |
| read_cnt | int(10) unsigned | NO | | 0 | |
| reg_date | datetime | NO | MUL | 0000-00-00 00:00:00 | |
| tag | tinyint(3) unsigned | NO | | 0 | |
| notice | tinyint(3) unsigned | NO | MUL | 0 | |
| content | text | NO | | | |
| ref | int(10) unsigned | NO | | 0 | |
| re_level | int(10) unsigned | NO | | 0 | |
| re_step | int(10) unsigned | NO | | 0 | |
| bbs_file | varchar(100) | NO | | | |
| bbs_file2 | varchar(100) | NO | | | |
| bbs_file3 | varchar(100) | NO | | | |
| bbs_file4 | varchar(100) | NO | | | |
| bbs_file5 | varchar(100) | NO | | | |
| secret | char(2) | YES | | NULL | |
+-----------+---------------------+------+-----+---------------------+----------------+
20 rows in set (0.00 sec)
이것은 이전 게시판의 테이블 정보 입니다. 옮겨야할 내용은 제목,글쓴이, 내용, 날짜 입니다.
나머지는 옮기진 않아도 되구요.
mysql> desc xe_documents;
+-----------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------------+--------------+------+-----+---------+-------+
| document_srl | bigint(11) | NO | PRI | | |
| module_srl | bigint(11) | NO | MUL | 0 | |
| category_srl | bigint(11) | NO | MUL | 0 | |
| lang_code | varchar(10) | NO | | | |
| is_notice | char(1) | NO | MUL | N | |
| title | varchar(250) | YES | | NULL | |
| title_bold | char(1) | NO | | N | |
| title_color | varchar(7) | YES | | NULL | |
| content | longtext | NO | | | |
| readed_count | bigint(11) | NO | MUL | 0 | |
| voted_count | bigint(11) | NO | MUL | 0 | |
| blamed_count | bigint(11) | NO | MUL | 0 | |
| comment_count | bigint(11) | NO | MUL | 0 | |
| trackback_count | bigint(11) | NO | MUL | 0 | |
| uploaded_count | bigint(11) | NO | MUL | 0 | |
| password | varchar(60) | YES | | NULL | |
| user_id | varchar(80) | YES | | NULL | |
| user_name | varchar(80) | NO | | | |
| nick_name | varchar(80) | NO | | | |
| member_srl | bigint(11) | NO | MUL | | |
| email_address | varchar(250) | NO | | | |
| homepage | varchar(250) | NO | | | |
| tags | text | YES | | NULL | |
| extra_vars | text | YES | | NULL | |
| regdate | varchar(14) | YES | MUL | NULL | |
| last_update | varchar(14) | YES | MUL | NULL | |
| last_updater | varchar(80) | YES | | NULL | |
| ipaddress | varchar(128) | NO | MUL | | |
| list_order | bigint(11) | NO | MUL | | |
| update_order | bigint(11) | NO | MUL | | |
| allow_trackback | char(1) | NO | | Y | |
| notify_message | char(1) | NO | | N | |
| status | varchar(20) | YES | | PUBLIC | |
| comment_status | varchar(20) | YES | | ALLOW | |
+-----------------+--------------+------+-----+---------+-------+
34 rows in set (0.00 sec)
제로보드XE 게시판 테이블의 정보를 보면 위와 같은데요.
저는 Insert Select 문을 이용해서 기존 데이터의 제목,글쓴이,내용,날짜를 읽어서 제로보드XE 게시판에 넣으려고 했습니다.
Insert into (title,user_name,user_id,content,regdate) values(
SELECT subject,name,name,content,reg_date from 옛날게시판테이블)
이런식으로 해서 옮기려고 했습니다.
근데 문제는 제로보드XE 테이블의 일부 컬럼을 보니 document_srl, module_srl 라고 해서 값이 자동증가도 아니고 뭔가 들어가는 값이 있더군요. 그래서 게시판을 막상 내용을 옮겨보니 재대로 내용이 안뜨고 다 깨져버립니다.
그냥 저는 글쓴이 내용 날짜 정보 정도만 간단히 옮겨놓고 싶은것인데요. 이게 쉽지 않네요.
혹시 관련 내용이나 조언해주실것이 있으면 알려주셨으면 합니다.