- SQL:结构化查询语言
- DB:datebase 数据库
SQL语句主要有三个部分构成:DDL、DML、DCL
一、DDL:数据定义语言
定义(表的结构、库的结构、视图的结构…)
1、库结构:
(1) 添加一个库 create
create database CY1212;
为了避免创建时库名重复,库名前加(if not exit)
create database if not exit CY1212;
(2) 删除一个库
drop datebase test;
为了避免删除不存在的库,库名前加(if exits)
drop datebase if exits test;
(3)查看一个库
- 查看所有的库
show databases;
- 查看库的创建信息
show create database CY1212;
2、表结构
(1)添加一个表 == create==
( 需要字段列表+字段约束)
字段约束:
- 主键约束:非空且唯一 primary key
- 外键约束:一般指在外键数值是另一个表中主键已存在的数据
- 唯一键约束:不能重复 union
- 非空约束:有数据 not null
- 默认约束:default
注:char、varchar的区别:
- char:固长类型
char(10) "lisi" , //开辟10个字节,用了5个,浪费了空间
- varchar: 变长类型
varchar(10) "lisi", //开辟5个字节,用了5个字节
学生表stu: 学号 姓名 性别 年龄
create table Stu
( #字段列表=字段名称+字段类型+字段约束+【注释】
sid varchar(10) primary key COMMENT"学生学号",
name varchar(15) not null COMMENT "学生姓名",
sex enum("man","woman") COMMENT "学生性别",
age int default 18
);
(2)删除一个表 drop
drop table Stu;
(3)修改一个表 alter
[1]修改字段类型 modify
alter table Stu modify sid varchar(20);
[2]修改字段名称 change旧的名称 新的新的名称
alter table Stu change sid id varchar(20);
也可修改字段类型
alter table Stu change id id varchar(15);
[3]添加一个字段 add after或first
alter table Stu add score float default 0;
alter table Stu add score1 float default 0 after id;
//在id字段后添加一个score1字段
alter table Stu add score2 float default 0 first;
//将score2 字段放在字符列表首位
[4]删除字段 drop
alter table Stu drop score;
(4)查看一个表 show
【1】查看当前库下有什么表
show tables;
【2】查看表的创建信息
show create table table_name;
【3】查看字段desc
desc stu(表名);