[select into]利用SELECT ... OUTFILE来备份MySQL数据库

jackxiang 2008-11-5 16:11 | |

select FQQ,FScoreCount from Tbl_User into outfile "/tmp/terminatedtest.txt" fields terminated by ",";



http://blog.chinaunix.net/u/29134/showart_1074828.html


select * into destTbl from srcTbl
insert into destTbl(fld1, fld2) select fld1, 5 from srcTbl
以上两句都是将 srcTbl 的数据插入到 destTbl,但两句又有区别的:

•第一句(select into from)要求目标表(destTbl)不存在,因为在插入时会自动创建。
•第二句(insert into select from)要求目标表(destTbl)存在,由于目标表已经存在,所以我们除了插入源表(srcTbl)的字段外,还可以插入常量,如例中的:5。

mysql> select * into user_score_20090429  from user_score_20090430;
要求目标表( user_score_20090429  )不存在



insert into user_score_20090504 select * from user_score_20090505 where uid=1608843755;
//这个靠谱些验证过

ERROR 1062 (23000): Duplicate entry '67' for key 1
唯一键id冲突,那就:
truncate table `user_score_20090504`;


修改表名称(发现权限不够):

RENAME TABLE user_score_20090505 TO user_score_20090504;

作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:https://jackxiang.com/post/1362/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!


最后编辑: jackxiang 编辑于2010-4-21 14:31
评论列表
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]