导出MYSQL数据库中的部分数据
(2012-04-10 16:42:43)
标签:
mysql
1、用sqlyong 工具可以很方便的导出部分列的数据,cvs、html、xml、execl xml、sql等格式。
2、如果一定用命令的话,用下面的操作吧:
mysqldump -u用户名 -p密码 数据库名 表名 > 路径\xxx.sql
说明:上面这个命令只能导出一个表的全部数据不能导出部分数据,为了导出部分数据,先把users表的user和password列导出到临时表,再讲临时表导出,需要的时候再倒入从临时表中拿出数据。
1)create table tmp as select user,name from users;
2)mysqldump [-h地址 -P端口] -u用户名 -p密码 数据库名 tmp > 路径\xxx.sql
※注意create命令要在mysql中执行,mysqldump在cmd中执行就可以。
3、使用 -e 参数,如下:
mysqldump [-h地址 -P端口] -u用户名 -p密码 -e "select * from database.table where 1" > /path/xxx.txt
-e 后接的sql语句根据自身的情况填写。
这时候导出的数据都是完整的数据,以\t为间隔,
若需要导入到其它表,稍作处理(去掉第一行的字段名,可用于以下的field),使用load data infile导入,如:
load data local infile "/path/xxx.txt" into table xxx(field1,field2,....)
注,以下操作未验证:
***************
补充:只导入部分数据
mysqldump -u用户名 -p密码 数据库名 表名 "--w='where 条件'"< 路径\xxx.sql
如:mysqldump -u用户名 -p密码 test t1 "--w='where name='张三'"< 路径\xxx.sql
就是只导入 name='张三'的数据。
&&&&&&&&&&
再补充:
mysqldump -u用户名 -p密码 test t1 "--w=where uid between 1 and 100"< 路径\xxx.sql
说明:【"--w=where uid between 1 and 100"】就是你要写的where条件,你想怎么写,写进去就可以了。
分享:
喜欢
0
赠金笔
加载中,请稍候......
评论加载中,请稍候...
发评论
登录名: 密码: 找回密码 注册记住登录状态
昵 称:
评论并转载此博文
发评论
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。