Hello,大家晚上好呀 又到了每周的开始

作为一个测试人员,有些人连mysql常用命令都忘记了...

mysql 修改字段备注sql mysql 修改字段备注_表名

大湿现在就给大家带来了我们常用的一些快捷命令,快来跟我一起来重新复习吧。

数据库连接

1. 通过命令行连接数据库

[root@localhost ~]# mysql -u root -p

Enter password:

输入以上命令,回车后输入密码,回车,出现 mysql>命令提示窗口则表示登录成功,在mysql>下输入任何 SQL 语句。

2.退出 MySQL

mysql> exit

Bye

创建数据库

语法:CREATE DATABASE ;

先连接 MySQL 服务后,再使用 SQL 语句。可以通过命令连接也可以通过客户端工具例如 navicat 连接,以下创建一个库名为 lemon 的数据库

mysql> create DATABASE lemon;

显示数据库

语法:show databases;

示例:查看 MySQL 服务所有数据库

mysql> show databases;
+--------------------+
| Database              |
+--------------------+
|information_schema|
| future                   |
| lemon                   |
| mysql                    |
| test                       |
| test_mysql             |
+--------------------+

删除数据库

语法:drop database ;

drop删除数据库命令谨慎使用,一旦删除,所有数据都没有了。以下示例:删除一个库名为 test 的数据库。

mysql> drop DATABASE test;

选择数据库

语法:use ;

示例:选取数据库 lemon 进行操作。

mysql> use lemon;

Database changed

创建表

语法:create table ( , , ..., );

示例:需要创建一个学员信息表,用于存储学号、姓名、性别、班级、年龄。

create table student(
   sno int(8) not null primary key auto_increment comment '学号',
   sname varchar(20) NOT NULL comment '姓名',
   ssex varchar(4) NOT NULL comment '性别',
   sclass int(8) NOT NULL comment '班级',
   sage int(4) NOT NULL comment '年龄'
)DEFAULT CHARSET=utf8;

解析:

int 为整型,这里学号 sno、班级编号 sclass 设定为整型;

varchar 字符型,这里姓名 sname、性别 ssex、年龄 sage 设定为字符型;

字段属性设定为 not null,表示字段值不允许空;

primary key 关键字用于定义列为主键。主键唯一、不重复,一般以编号为主键;

auto_increment 定义列属性为自增,一般用于主键,插入数据时数值会自动加 1;

comment 相当于给列添加备注;

DEFAULT CHARSET 设置编码,utf8 对传值中文防止乱码。

显示数据表

mysql> show tables;
+----------------+
| Tables_in_test  |
+----------------+
| student           |
| student1         |
+----------------+

查看表结构

mysql 修改字段备注sql mysql 修改字段备注_表名_02

删除表

语法:drop table ;  

drop 删除表请谨慎操作,因为执行删除命令后该表及包含的数据都会消失。以下示例:删除一个表名为 student 的数据表。

mysql> drop table student;

插入表数据

语法:insert into ( 字段名1,字段名2,...字段名N)

                       values

                       ( 值1, 值2,...值N );

示例:

1.往学员信息表中插入一条学员信息

insert 

into student (sno,sname,ssex,sclass,sage) 

values (6301,'柠檬','女',20190163,18);

注意:如果数据值为字符型必须用单引号或者双引号括起来。

2.批量插入,插入多条学员信息

insert

into student (sname,ssex,sclass,sage)

                 values

                 ('毛毛','女',20190163,20),('大大','女',20190163,22);

修改表数据

语法:update 表名 set 字段名1= 新值1,字段名2=新值2, … where 条件表达式1 and(or)  条件表达式2 …;

示例:修改学员姓名为毛毛的性别为男

update student set ssex = '男' where sname = '毛毛';

查询单表数据

语法:select 字段名1,字段名2,… from    where  条件表达式1 and(or) 条件表达式2  … ;

1. 查询所有字段列信息

示例:查询 student 表中,性别女且年龄在 20 岁以上的学员信息

select * from  student where  ssex = '女' and sage > 20;

2. 查询指定字段列信息

示例:查询 student 表中,性别女或者年龄在 20 岁以上的学员姓名

select sname from student where ssex = '女' or sage > 20;

3. 查询前几行信息

示例:查询 student 表中,性别女且年龄在 20 岁以上的前 2 行学员信息

select sname from student where ssex = '女' and sage > 20 limit 0,2;

查询多表关联数据

语法:

1.关联查询:select 字段名1,… from 表名1,表名2,…where  关联条件表达式 and 过滤条件表达式 …;

2. 等值连接:select 字段名1,… from 表名1 inner join 表名2 on 关联条件表达式 and 过滤条件表达式… ;

3. 左连接:select 字段名1,… from 表名1 left join 表名2 on 关联条件表达式 and 过滤条件表达式… ;

4. 右连接:select 字段名1,… from 表名1 right join 表名2 on 关联条件表达式 and 过滤条件表达式… ;

示例:

mysql 修改字段备注sql mysql 修改字段备注_字段名_03

1. 以上左表 user 表,右表为左表的对象信息 user_lover 表,查询两表中存在对象关系的信息

SELECT * FROM `user`, user_lover WHERE `user`.id = user_lover.u_id;

SELECT * FROM `user`INNER JOIN user_lover on `user`.id = user_lover.u_id;

运行结果:

mysql 修改字段备注sql mysql 修改字段备注_mysql 修改字段备注sql_04

2.读取左表全部数据,即使右表没有关联数据

SELECT * FROM `user`LEFT JOIN  user_lover on `user`.id = user_lover.u_id;

运行结果:

mysql 修改字段备注sql mysql 修改字段备注_表名_05

3.以右表为基础,与 LEFT JOIN 相反

SELECT * FROM `user` RIGHT JOIN user_lover on `user`.id = user_lover.u_id;

运行结果:

mysql 修改字段备注sql mysql 修改字段备注_mysql_06


删除表数据

语法:delete from 表名 where 条件1 and(or) 条件2……;

示例:删除 student 表中年龄小于 18 岁的用户信息

delete from student where sage < 18;


MySQL 学习教程

MySQL 官网:

https://dev.mysql.com/doc/

runoob.com:

https://www.runoob.com/mysql/

w3cschool:

https://www.w3cschool.cn/mysql/

苦尽甘来的那一天,山河星月都作贺礼


END