认识 SQL
SQL 是 Structured Query Language 的缩写,中文名称是“结构化查询语言”。虽然名字中只包含了“查询”二字,但是它还支持创建,修改,删除等操作。SQL 是一种用来操作关系型数据库的编程语言。SQL 是一套操作关系型数据的统一标准。
SQL 语法
使用 SQL 编写的语句,叫作 SQL语句。任何编程语言都有自己的语法规范,SQL 也不例外。下面是它的一些语法规范。
- SQL 语句支持单行和多行书写,用分号结尾
- SQL 语句可以使用空格和缩进来增加可读性
- MySQL 数据库的 SQL 语句不区分大小写,通常关键字会使用大写,比如 SELECT,CREATE,TABLE 等
- 使用
--
或#
表示单行注释 - 使用
/* 注释内容 */
表示多行注释
SQL 语句分类
SQL 语句按照其用途可以分为四类:
分 类 | 全称 | 说明 |
DDL | Data Definition Language | 数据定义语言,用来定义数据库对象(数据库,表, 字段) |
DML | Data Manipulation Language | 数据操作语言,用来对数据库中表的数据进行增、删、改(注意不包括查) |
DQL | Data Query Language | 数据查询语言,用来查询数据库中表的记录 |
DCL | Data Control Language | 数据控制语言,用来创建数据库用户、控制数据库和表的访问权限 |
DDL
DDL 语句用来定义对数据库、表和字段。
1.查看所有数据库
2.使用某一个数据库
3.创建一个新的数据库
4.删除一个数据库
数据库操作
查询当前所有数据库
show databases;
创建数据库
create database cms;
很明显,同一个数据库服务中,不能创建两个名字相同的数据库。所以在创建数据库时,通常都会带上 IF NOT EXISTS
,它表示如果不存在这样一个数据库,就创建。如果已经存,就不再创建。
create database [ if not exists ] cms;
方括号[]
表示用到的关键字是可选的。
创建数据库时还可以指定编码格式:
使用数据库
use cms;
查询当前正在使用中的数据库
select database();
+------------+
| database() |
+------------+
| cms |
+------------+
1 row in set (0.03 sec)
删除数据库
drop database cms;
注意,如果删除一个不存在的数据库,执行就会报错。所以可以像创建数据库那样,使用 if exists
:
drop database if exists cms;
查看建库的语句
可以查看创建 cms 数据库时的建库语句:
show create database cms;
表操作
当进入到一个数据库中时,就可以对数据表进行操作。
查询所有数据表
show tables;
创建数据表
创建一张用户表:
create table user(
id int comment 'id',
name varchar comment '用户名',
age int comment '年龄',
gender varchar comment '性别'
) comment '用户表';
查看表结构
可以查看某一张数据表的字段有哪些,类型是什么,是否允许为 null 等信息。
desc user;
查看建表语句
show creata table user;
删除表
drop table user;
删除一张不存在的表会执行报错,可以使用:
drop table if exists user;
小结
本文介绍了什么是 SQL,同时对常用的 DDL 语句做了总结。