MySQL命令学习

上面两篇博客讲了MySQL的安装、登录,密码重置,为接下来的MySQL命令学习做好了准备,现在开启MySQL命令学习之旅吧。

首先打开CMD,输入命令:mysql -u root -p  登录MySQL。

注意:MySQL命令终止符为分号 (;) 

1.show databases;显示当前用户的数据库

2.use 数据库名;   选择数据库

3.create database 数据库名; 创建数据库

4. drop database  数据库名 ;删除数据库 

5.create table if not exists `表名`()engine= InnoDB default charset=utf8;创建数据表 

例:

create table if not exists `test_user`(
`test_id` int unsigned auto_increment,
`test_title` varchar(100) not null,
 `test_name` varchar(100) not null,
`test_createDate` date, primary key (`test_id`)
)engine= InnoDB default charset=utf8;

6. drop  table 表名; 删除数据表 

7.show tables; 显示当前数据库的表

8.insert  into table_name ( 字段1,字段2,...字段) values   ( value1, value2,...valueN );为表插入数据

9. where是查询条件语句与select,update,delete一起用的

10.select 查询命令,select 读取一条或者多条记录

  10.1  select * from 表名  查看表里的所有数据 ,显示所有字段  

  10.2  select column_name,column_name from 表名 where 条件 limit n offset m ;查询满足条件的数据,只显示字段column_name,column_name

  • 查询语句中可以使用一个或者多个表,表之间使用逗号(,)分割
  • 用星号(*)来代替其他字段,select语句会返回表的所有字段数据
  • 使用 where语句写查询条件。
  • 使用limit 属性来设定返回的记录数。
  • offset指定select语句查询数据的偏移量。默认偏移量为0。
例1:
select test_title from test_user where test_id>2 limit 3 offset 3;
查询结果只显示了字段:test_title
test_id>2的记录有3,4,5,6,7,8,9,10,11,然后offset为3,所以查询结果偏移3后,最后的数据为:6,7,8
例2:
select test_title from test_user where test_id>7 limit 3 offset 3;
查询结果只显示了字段:test_title
test_id>7的记录有8,9,10,11,然后offset为3,所以查询结果偏移3后,最后的数据为:11

11.update 表名 set field1=new-value1, field2=new-value2 where 条件; 更新满足条件的记录

    例:update test_user set test_createDate="2018-11-02" where test_id<5;

12.delete from 表名 where 条件; 删除表里满足条件的记录 
 
    delete from test_user where id>6 && id<8; 删除第7条数据

13.like,like与where联合使用,表示包含的情况,其中like语句的%表示任意字符,如果like语句中没有用%,那么它就与等号没有差别

like "%my":表示以my结尾
like "%my%":表示中间或开始有my
like "my%":表示以my开始
like "my" :表示等于my

14.order by 字段  ASC |DESC ;这个命令一般跟select联合使用, 根据什么字段排序,默认情况下是升序

        asc:升序

        desc:降序    

        按拼音来排序:

      14.1 如果字符集采用的是 gbk(汉字编码字符集),直接在查询语句后边添加 order by:

             select * from 表名 order by 字段  ASC ;

      14.2 如果字符集采用的是 utf8(万国码),需要先对字段进行转码然后排序:

      select * from 表名 order by convert(runoob_title using gbk)

15. show columns from 表名查看表的字段定义格式

 例:show columns from test_user;

16.alter 

    16.1 alter table 表名 add 新字段 数据类型;为数据表添加新的字段(为已经建好的表增加一列)

         例:

              alter table test_user add score int; 为表test_user,添加类型为int的新字段score;

              alter table test_user add score int first;为表test_user,添加类型为int的新字段score,并且放在第一位

             alter table test_user add score int  after  name;      添加类型为int的新字段score,并且放在字段name的后面

 

   16.2 alter table 表名 drop 字段;删除数据表的字段(为已经建好的表删除一列)

   例:alter table test_user drop score;

  16.3 alter table 表名 modify 字段  新类型;修改已有字段的类型

     例:alter table test_user modify test_title  varchar(200) not null default  "hello";

            修改表test_user的字段test_title 的类型为varchar(200) ,并且不能为null,默认值为hello

  16.4 alter table 表名 change 字段  新字段 新字段数据类型;更改旧字段的名称及类型

 例:alter table test_user change score middle_score int;

  16.5 alter table 表名 engine=myisam;修改存储引擎为myisam

  16.6 alter table 表名 drop foreign key 键名;删除外键约束

  16.7 alter table 表名 modify 字段1  数据 first|after 字段2;

     修改字段的相对位置,字段1为想要修改的字段,类型为该字段原来类型,first和after二选一,first放在第一位,after放在字段2后面

  16.8 alter table 表名 alter 字段 set default ;为数据表字段设置默认值;

 例:alter table test_user alter score set default 0;表test_user的score字段 设置默认值0;

  16.9 alter table 表名 rename to 新的表名;更改数据表的名字

 

  1. show databases; 显示当前用户的数据库

2.  use 数据库名;   选择数据库

3. create database 数据库名; 创建数据库

 

4. drop database 数据库名 ;删除数据库

 5.create table if not exists `test_user`()engine= InnoDB default charset=utf8;创建数据表

create table if not exists `test_user`(
`test_id` int unsigned auto_increment,
`test_title` varchar(100) not null,
 `test_name` varchar(100) not null,
`test_createDate` date, primary key (`test_id`)
)engine= InnoDB default charset=utf8;

6. drop  table 表名; 删除数据表

7.show tables; 显示当前数据库的表

8.insert  into table_name ( field1, field2,...fieldN ) values   ( value1, value2,...valueN );为表插入数据

 

9. where是查询条件语句与select,update,delete一起用的

10.select 查询命令,select 读取一条或者多条记录

   select * from 表名;   查看表里的所有数据 ,显示所有字段  

 select column_name,column_name from 表名 where 条件 limit n offset m ;查询满足条件的数据,只显示字段column_name,column_name

  • 查询语句中可以使用一个或者多个表,表之间使用逗号(,)分割
  • 用星号(*)来代替其他字段,select语句会返回表的所有字段数据
  • 使用 where语句写查询条件。
  • 使用limit 属性来设定返回的记录数。
  • offset指定select语句查询数据的偏移量。默认偏移量为0。
select test_title from test_user where test_id>2 limit 3 offset 3;
查询结果只显示了字段:
test_title
test_id>2的记录有3,4,5,6,7,8,9,10,11,然后offset为3,所以查询结果偏移3后,最后的数据为:6,7,8

select test_title from test_user where test_id>7 limit 3 offset 3;
查询结果只显示了字段:test_title
test_id>7的记录有8,9,10,11,然后offset为3,所以查询结果偏移3后,最后的数据为:11


11.update
表名 set field1=new-value1, field2=new-value2 where 条件; 更新满足条件的记录

 update test_user set test_createDate="2018-11-02" where test_id<5;



12.delete from 表名 where 条件; 删除表里满足条件的记录 

 
delete from test_user where id>6 && id<8; 删除第7条数据

 

13.like,like与where联合使用,表示包含的情况,其中like语句的%表示任意字符,如果like语句中没有用%,那么它就与等号没有差别

like "%my":表示以my结尾
like "%my%":表示中间或开始有my
like "my%":表示以my开始
like "my" :表示等于my
查询结果如下:

 14.order by 字段  ASC |DESC ;这个命令一般跟select联合使用, 根据什么字段排序,默认情况下是升序

        asc:升序

        desc:降序    

        按拼音来排序:

      14.1 如果字符集采用的是 gbk(汉字编码字符集),直接在查询语句后边添加 order by:

             select * from 表名 order by 字段  ASC ;

      14.2 如果字符集采用的是 utf8(万国码),需要先对字段进行转码然后排序:

      select * from 表名 order by convert(runoob_title using gbk); 

           

 

15. alter table 表名 add 新字段 数据类型;为数据表添加新的字段(为已经建好的表增加一列)

         alter table test_user add score int;

 

16.alter table 表名 drop 字段;删除数据表的字段(为已经建好的表删除一列)

 alter table test_user drop score;

 

 

17. alter table 表名 modify 字段  新类型;修改已有字段的类型

 alter table test_user modify test_title  varchar(200);

 

18. show columns from 表名; 查看表的字段定义格式

 show columns from test_user;

 

 

 

posted @ 2018-11-22 10:28  绿茶叶  阅读(576)  评论(0编辑  收藏  举报