一、SQL分类
DDL Data Definition Language 数据定义语言
用于完成对数据库对象(数据库、数据表、试图、索引等)的创建、删除、修改
DML Data Manipulation Language 数据操作/操纵语言
用于完成对数据表中数据的添加、删除、修改操作
添加:将数据存储到数据表
删除:将数据从数据表中删除
修改:对数据表中的数据进行修改
DQL Data Query Language 数据查询语言
用于将数据表总的数据查询出来
DCL Data Control Language 数据控制语言
用于完成
二、基本语法
SQL指令不区分大小写
每条SQL表达式结束之后都以 ;结束
SQL关键字之间以空格进行分隔
SQL之间可以不限制换行(可以有空格的地方就可以换行)
三、DDL
3.1 DDL-数据库操作
查询数据库
显示当前mysql中的数据库列表
show database;
显示指定名称的数据库创建的SQL指令
show create database <dbName>;
创建数据库
创建数据库
create database <dbName>;
创建数据库,当指定名称的数据库不存在时执行创建
create database if not exists <dbName>;
在创建数据库的同事指定数据库的字符集(字符集:数据存储在数据库中采用的编码格式 utf8、gbk)
create database <dbName> character set utf8;
修改数据库 修改数据库字符集
alter database <dbName> character set utf8;
删除数据库 删除数据库时会删除当前数据库中所有的数据表以及数据表中的数据
删除数据库
drop database <dbName>;
如果数据库存在则删除数据库
drop database if exists <dbName>;
使用/切换数据库
use <dbName>;
3.2 DDL-数据表操作
创建数据表
数据表实际就是一个二维的表格,一个表格是由多列组成,表格中的每一列称之为表格的一个字段
create table students {
stu_num char(8) not null unique,
stu_num varchar(20) not null,
stu_gender char(2) not null,
stu_age int not null,
stu_tel char(11) not null unique,
stu_qq varchar(11) unique
};
查询数据表
show tables;
查询表结构
desc <tableName>;
删除数据表
删除数据表
drop table students;
当数据表存在是删除数据表
drop table if exists students;
修改数据表
修改名
alter table <tableName> rename to <newTableName>;
修改数据表字符集。数据表也是有字符集的,默认字符集和数据库一致。
alter table <tableName> character set utf8;
添加列(字段)
alter table <tableName> add <columnName> varchar(200);
修改列(字段)的列表和类型
alter table <tableName> change <oldColumnName> <newColumnName> <type>;
只修改列(字段)类型
alter table <tableName> modify <columnName> <newType>;
删除列(字段)
alter table <tableName> drop <columnName>;
3.3 MySQL数据类型
数据类型指的是数据表中的列中支持存放的数据的类型
数值类型
在mysql中有多种数据类型可以存放数值,不同的数据存放的数值范围或者形式是不同的

字符串类型
存储字符串序列的类型

日期类型
在MySQL数据库中,我们可以使用字符串来存储时间,但是如果我们需要基于时间字段进行查询操作(查询在某个时间段内的数据)就不便于查询实现

3.4 字段约束
约束介绍
在创建数据表的时候,指定的对数据表的列的数据限制性的要求(对标的列中的数据进行限制)
为什么要给表中的列添加约束呢?
保证数据的有效性
保证数据的完整性
保证数据的正确性
字段常见的约束有哪些呢?
非空约束(not null):限制此列的值必须提供,不能为null
唯一约束(unique):在表中的多条数据中,此列的值不能重复
主键约束(primary key):非空+唯一,能够唯一标识数据表中的一条数据
外键约束(foreign key):建立不同表之间的关联关系
非空约束
限制数据表中此列的值必须提供
创建表:设置图书表的book_name not null
create table boo

最低0.47元/天 解锁文章
10万+

被折叠的 条评论
为什么被折叠?



