日期:2014-05-16  浏览次数:20710 次

mysql常用命令剪辑

一、表、库的显示

1.show databases;显示所有库

2.use dbname; 进入数据库,ex: use test; 进入test库。

3.status 显示当前所在数据库以及相关数据。

4.show tables;显示所有表,进入某一个库时,显示该库里所有的表。

5.desc tablename;显示表结构,可以想查看表相关字段设置。

二、表结构的相关操作。

1.create table tablename(

?? ->id int(4) primary key auto_increment,

?? -> name varchar(16) not null,

?? ->birthday date);

? 新建表 设id为主键 并且为自增型 ,name 为varchar 型 不能为空

2.alter table tablename

?->add classID int(2);

?更新表结构,加了一列classID 类型为int.

3.alter table tablename

->drop classID;

删除表中的列classID.

4.alter table tablename

->change class classID ?int(4)(change 旧的列名 新的列名 类型属性)

5.rename table test to testnew;

更新表名,把原来的test 改为 testnew

6、增加主键

alter table test

->add primary key(ID)

增加列ID为表test的主键

7、删除主键

alter table test

->drop primary key

删除test表中的主键 变为普通列

8、删除自增长

alter table test

->change ID ID int(12);

删除原来ID上的自增长。

?

三、表内容查询

1.select * from test;

查出表test中的所有内容。

2.select name,studentID from test;

查出表test中的name和studentID 这两列数据。

3.select * from test where name="Denny";

查出表test中name 为Denny的这个人的所有信息。

4.select count(*) from test;

查出表test中共有多少条数据。

5.select name,studentID from test order by studentID;

查出表test中的name和studentID 这两列 并且按studentID排序。

6.select name,studentID from test group by name;

查出表test中的name和studentID这两列 并且以name为组,也就是说重名的人只出现一次。

7select * from test limit 5;

查出表test中的前5条数据。

8.select * from test limit 2,8;

查出表test中第2到8之间的数据。

9.select * from test order by name limit 2,8;

把test以name排序,取第2到8之间的数据。

10.select s.name,s.classID,c.classname from student s ,class c where c.classID = 2 and s.sex = 'F';

联合查询,查出表class 和student 两中表中 classID为2,性别为F的人的名子和班级名和班级号。

四、update 更新表内容

1.update test set name= "DDenny" where name ="Denny";

把test表里面,原来名叫Denny的人改为DDenny,

注意:字符串用“”号或‘’,int类型的直接写

五、insert 插入数据

insert into student

->(name,sex,classID) values?? /*注释:最好用括号把列括起来,看起来清晰一些

->("YY","F",2);?? /*注释:注意列的数据类型,最好先desc student看看表结构和各个列的数据类型

六、delete 删除数据

delete from student where name="YY";

注意where后面的条件 以防删除不该删的东西

?

?

?

?

?