-
테이블 데이터를 뽑아 다시 insert하는 방법Full-Stack/Back-end 2008. 1. 28. 22:56
mysql> DESC CALLUSE;
+----------------+---------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------------+---------------------+------+-----+---------+----------------+
| SEQ | int(11) | | PRI | NULL | auto_increment |
| PHONE | varchar(16) | | MUL | | |
| CALLING_NUMBER | varchar(24) | YES | | | |
| START_TIME | datetime | YES | MUL | NULL | |
| END_TIME | datetime | YES | | NULL | |
| TEL_TIME | time | YES | | NULL | |
| IN_OUT | tinyint(2) unsigned | | | 0 | |
| CALL_TYPE | tinyint(1) unsigned | | | 0 | |
+----------------+---------------------+------+-----+---------+----------------+
8 rows in set (0.00 sec)위와 같이 정의된 테이블에서 데이터를 뽑아서, 테이블에 넣는 방법
mysql >
SELECT ' ', PHONE, CALLING_NUMBER, START_TIME, END_TIME, TEL_TIME, IN_OUT, CALL_TYPE into outfile '/home/ering/CALLUSE.txt' from 테이블명 where 조건;
이렇게 하면 CALLUSE.txt 파일에 검색된 데이터가 들어간다.
아래와 같이 하면 DBERING이라는 데이터베이스의 CALLUSE 테이블에 데이터가 들어간다.
# mysqlimport --local DBERING ./CALLUSE.txt -u root -p
이렇게 하면 기존에 들어있는 데이터와 중복이 되면 들어가지 않고,
중복되지 않으면 들어간다.
[기존추가내용] : 구분자 |를 두어 데이터백업(장점:엑셀에서 파일 편집이 용이하다)
mysql >
SELECT GROUP_ID, CAT_ID, MID, TITLE, SINGER, CONTENTS, DATE, MAKER, MTYPE, USED_COUNT, USED_ONOFF, TTS_CONTENTS into outfile '/home/ering/MUSIC.txt' FIELDS TERMINATED BY '|' LINES TERMINATED BY '\n' FROM MUSIC;
mysql >
SELECT ' ', PHONE, CALLING_NUMBER, START_TIME, END_TIME, TEL_TIME, IN_OUT, CALL_TYPE into outfile '/home/ering/CALLUSE.txt' FIELDS TERMINATED BY '|' LINES TERMINATED BY '\n' from 테이블명 where 조건;
원상복귀시킴
$ mysqlimport --local DBERING --fields-terminated-by='|' /home/ering/MUSIC.txt -u root -p
댓글