1-03:基本的MySQL命令

发布于 2022年 01月 18日 09:25

mysql基本的语句

> mysql -u 用户名 -p  //命令行连接Mysql;

> show databases;   //显示当前所有的数据库名;

> show tables;     //显示当前数据库中的所有表名;

> use 数据库名;   //选择一个数据库;

选择语句

> select [字段名称] from [表名] [还有一些可选参数] [例如:limit,限制查询返回的行数];
> 如果字段名是\*符号,意思是查询表中的所有列;

可选参数

> 根据条件选择的行
> select name from 学生表 where 列名 = 'zhangsan';
> 这句代码的意思就是:查询学生表中name字段为zhangsan的所有数据,选择的是name列,name列有很多叫各种名字的学生,那么每一行代表一个学生,目的是返回当前name列中重名的学生有多少个,where就是条件,符合条件的则返回,返回name='zhangsan'的所有行,就是这意思;
> 条件参数可以使用比较运算符:
   =      >       <       !=/<>     >=         <=
> 等于   大于    小于     不等于    大于等于    小于等于

> select name from 学生表 where 列名 != '张三';
> 返回name不等于张三的所有学生名的行;

创建库:

> create database myDB;  //这条语句就是创建了一个名为myDB的数据库;
> drop database myDB;    //这条语句就是删除了一个名为myDB的数据库;

创建表:

> use myDB;   //要先选择一个数据库;
> create table user(id int,user_name varchar(40),password varchar(60));   //创建一个名为user的表,其中有三个字段:id,user_name,password;

修改表名:

> rename table 原来的表名 to 新表名

删除表:

> drop tables 表名;   //删除数据库中的一个表

删除视图:

> drop view 视图名;

查看表结构:

> desc 表名;  //查看当前表中的所有字段

修改表中的字段:

> alter table 表名 change column 字段 修改后的字段 int(10);  //修改一个字段

删除表中的字段:

> alter table user drop user_id;

在表中插入一个字段:

> alter table user add user_id int(32); 
> 这个语句的后面有两个参数:first和after;
> first:插入在前面
> after:插入在后面

修改表的名字:

> alter table user rename user_table; 

修改表中字段的值:

> alter table user modify 字段名 修改后的值;  //这里改的不是字段储存的值,而是字段的类型,长度等值;

查看当前选择的数据库:

> select database();

显示Mysql的版本:

> select version();

显示当前时间:

> select new();

列的增删改

alter table 表名 add 列名 列类型 列属性...; //默认是在表的最后

alert table 表名 add 列名 列类型 列属性... after 列名;//添加一列到指定列的后面

alter table 表名 drop column 列名; //删除一个列



alter table 表名 change 列名 新列名 列类型 列属性...
alter table 表名 modify 列名 列类型 列属性...

change 和 modify 都是用来修改列的,change要求每次修改列都必须提供新列名,而modify则不需要;

查看建表过程

> show create table 表名;

查看建视图过程

> show create view 视图名;

查看当前库下的所有表的详细信息

> show table status;

- 可选参数\G

> show table status;

- 加上\G改变显示的方式,竖着显示;

- 可以使用where条件等;
  • 示例:
	show table status where name='users' \G;

	 /*Name: users
         Engine: MyISAM
        Version: 10
     Row_format: Dynamic
           Rows: 3
 Avg_row_length: 48
    Data_length: 144
Max_data_length: 281474976710655
   Index_length: 1024
      Data_free: 0
 Auto_increment: NULL
    Create_time: 2018-08-09 17:38:38
    Update_time: 2018-08-09 17:42:49
     Check_time: NULL
      Collation: utf8mb4_unicode_ci
       Checksum: NULL
 Create_options:
        Comment:*/

快速清空一张表

> delete from 表名;   //删除数据,直接将当前表数据清空

> truncate from 表名;    //删除表,瞬间重建
  • 区别就在于,delete清空表之后,就跟人死了,虽然死了,但是你曾经来过这个世界,所以你在这个世界占着一个位置,虽然你已经不在了;
  • 而truncate则是直接将这个地球毁灭,瞬间在弄一个地球,而这个新的地球,你从来都没有来过,你也从未占着一个位置;
  • delete 和truncate 相比,truncate的速度要更快;

推荐文章