前言:因为平时使用数据库的机会不是很多,所以偶然需要的时候总是东奔西跑的搜索!感觉很烦,也很耽误时间,于是将mysql的基本操作小结了一下,以便日后查证!
shell> mysql -uroot -p //以root用户连接mysql,默认密码为空
注意:mysql的大部分命令都需以";"(分号)结束;对大小写不敏感!
mysql> show databases; //显示数据库列表
mysql> use 数据库名 //选中指定的数据库
mysql> show tables; //显示选中数据库中的数据表列表
mysql> select * from 表名; //显示指定数据表的内容
mysql> create database 数据库名; //创建数据库
mysql> create table user_info( //创建数据表
-> id int(6) not null auto_increment,
-> username varchar(20) not null
-> password varchar(20) not null
-> email varchar(50) not null,
-> key id (id)); //说明:因为指定了auto_increment,所以最后必须指定一个key id
mysql> decribe 表名; //显示表的结构
mysql> insert into user_info values //插入数据到表中
-> ('1', 'admin', 'admin', 'admin@abc.com'),
-> ('2', '123', '123', '123@abc.com'),
-> ('3', '456', '456', '456@abc.com');
这种方式下,因为没有显示的写出表的各项列值,所以插入的数据项必须与列一一对应,否则就会提示列值不符的信息!
因为指定了auto_increment,所以也可以这样:
mysql> insert into user_info(username, password, email) values
-> ('admin', 'admin', 'admin@abc.com'),
-> ('123', '123', '123@abc.com'),
-> ('456', '456', '456@abc.com');
至于第一项id由系统自动生成了!
mysql> drop database 数据库名; //删除数据库
mysql> drop table 表名; //删除数据表
mysql> delete from 表名; //清空数据表
mysql> grant select,insert,delete,update //为数据库指定一个专门的用户进行管理
-> on 数据库名.* to wzc0066@localhost //注意:用户名和密码不能太简单,我用123和123测试过,好像没成功!
-> identified by 'wzc0066';
mysql> mysql -uwzc0066 -p //然后输入wzc0066用户的密码后就会以wzc0066用户进行管理该指定数据库了
mysql> alter table 表名 add '列名' VARCHAR(12); //在表中增加一列
mysql> alter table 表名 change '列名1' '列名2' VARCHAR(12); //更改列名
mysql> alter table 表名 drop '列名'; //删除一列
mysql> alter table 表名 rename t2; //修改表名
mysql> drop database if exists school; //如果存在school数据库则删除
mysql> load data local infile "file" into table 表名; //文本数据应符合的格式:字段数据之间用tab键隔开,null值用\n来代替.
备份数据库:
导出:mysqldump -u用户名 -p密码 数据库名 表名 > out.sql
导入:mysql -u用户名 -p密码 --database=数据库名 < out.sql
备份数据表:
导出:mysqldump -uroot test table1 > ./out.sql
导入:mysql -uroot --database=test < ./out.sql
列数据类型:分为数字型、字符串型和日期
1、数字型:以字串的形式存储,decima/numeric;分为整形和浮点型,可以有两个选项:unsigned(无符号,只存储正数)和zerofill(用0填充而不是空格)
小数型:float/double
整数型:int bigint tinyint
范例:create table a (id int zerofill);
2、字符串型
char varchar等
3、日期型
datetime timestamp等
4、枚举型
enum('男','女')
-----------------------------------------
更多>>
http://dev.csdn.net/article/44/44932.shtm
http://hi.baidu.com/tianlong1569/blog/item/0206efcdf90cb2550eb345e1.html