暑期自学 Day 09 | 数据库(一)- SQL,DDL
SQL (Structured Query Language)
- 是一种规则,定义了如何操作所有关系型数据库(如Oracle, Mysql DB2)
SQL 通用语法
- 单行多行书写,分号结尾
- 不区分大小写,但关键字建议大写
- 注释
- 单行:
-- 这是一段注释
或# 这是一段注释
- 多行
/* 这是一段注释 */
- 单行:
SQL 分类
- DDL (Data Definition Language): 操作数据库和表
- DML (Data Manipulation Language): 增删改表中数据
- DQL (Data Query Language): 查询数据
- DCL (Data Control Language): 授权访问权限,创建用户
DDL
操作数据库:
- CRUD:
- Create
create database mysql
创建指定名称的数据库create database if not exists mysql
创建前判断是否存在该名称create database mysql character set gbk
创建指定字符集的数据库
- Retrieve
show databases;
查询所有数据库show create database 'mysql';
查询该数据库的创建语句和字符集
- Update
alter database mysql character set uft8;
- Delete
drop databse mysql;
或drop database if exists mysql;
- Create
操作表:
- CRUD:
- Create
create table t_name ( column1 type1, column2 type2, ... columnN typeN );
- 数据库类型:
- int: age int
- double: score double(5, 2)
- date: yyyy-MM-dd
- datetime: yyyy-MM-dd HH:mm:ss
- timestamp: yyyy-MM-dd HH:mm:ss, 不赋值为当前值
- varchar: name varchar(20), 最大20字符
create table t_name ( id int, name varchar(32), age int, score double(4, 1), birthday date, insert_time timestamp );
- 复制表
create table t_name like origin_table_name;
- Retrieve
show tables
显示某个数据库中所有的表desc table_name
查询某个表的结构
- Update
- 修改表名
alter table old_name rename to new_table;
- 修改字符集
alter table t_name character set utf8;
- 添加一列
alter table t_name add col_name type;
- 修改一列
alter table t_name change name new_name varchar(20);
alter table t_name modify name varchar(20);
- 删除一列
alter table t_name drop name;
- 修改表名
- Delete
drop table t_name
或drop table if exists t_name
- Create
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: