命令行下具体用法如下: mysqldump -u用户名 -p密码 -d数据库名表名脚本名;
1、导出数据库为dbname的表结构(其中用户名为root,密码为dbpasswd,生成的脚本名为db.sql)
mysqldump -uroot -pdbpasswd -d dbname >db.sql;
2、导出数据库为dbname某张表(test)结构
mysqldump -uroot -pdbpasswd -d dbname test>db.sql;
3、导出数据库为dbname所有表结构及表数据(不加-d)
mysqldump -uroot -pdbpasswd dbname >db.sql;
4、导出数据库为dbname某张表(test)结构及表数据(不加-d)
mysqldump -uroot -pdbpasswd dbname test>db.sql;
导入表结构,表数据
mysql -u root databasename(数据库名)< db.sql;
会把,导出的表结构表数据导入到databasename数据库内
表之间的数据批量导入可以用 insert into table1 select * from table2;
这种格式,注意各列数值类型对应,不对应需要写清楚,insert into talbe1 select parm1,parm2,parm3...from talbe2;
删除表可以用 drop table tablename;
新建表并且表里面要有table1的数据,包括字段,可以用 create table table2 select * from table1;
同时可以指定导出数据的条件。
这样导入的时候就可以不用处理不符合条件的数据。
如果导出了全部的数值,那么在导入的时候也可以指定数据类型。insert into talbe1 select parm1,parm2,parm3...from talbe2 where 。。。;
修改表字段类型等
1.登录数据库
>mysql -u root -p 数据库名称
2.查询所有数据表
>show tables;
3.查询表的字段信息
>desc 表名称;
4.1.修改某个表的字段类型及指定为空或非空
>alter table 表名称 change 字段名称 字段名称 字段类型 [是否允许非空];
>alter table 表名称 modify 字段名称 字段类型 [是否允许非空];
实例
alter table statistics change loginTwo loginTwo double;
alter table statistics change loginTwoTotal loginTwoTotal double;
4.2.修改某个表的字段名称及指定为空或非空
>alter table 表名称 change 字段原名称 字段新名称 字段类型 [是否允许非空];
例如:
修改表expert_info中的字段birth,允许其为空
>alter table expert_info change birth birth varchar(20) null;