1.SQL语句基础之DDL

简介: <div style="font-family:微软雅黑; font-size:14px; line-height:21px; widows:auto"><strong>SQL(Structured Query Language 结构化查询语言)</strong></div> <div style="font-family:微软雅黑; font-size:14px; line-heigh
SQL(Structured Query Language 结构化查询语言)

标准SQL语句类型
查询语句
select关键字,SQL语句中最复杂但功能最丰富
DML
数据操作语言
insert、update、delete
DDL
数据定义语言
create(创建)、alter(修改)、drop(删除)、truncate(快速删表) 数据库对象
DCL
数据控制语言
grant、revoke;【授权、回收用户权限,通常无需程序员操作】
事物控制语句
commit、rollback、savepoint
1、SQL语句 关键字不区分大小写;
2、SQL语句字符串:单引号
3、 标识符:以字母开头,包括字母、数字和三个特殊符号(#_$),建议多单词下划线连缀;

DDL语句:操作数据库对象的语句

4、常见数据库对象:
table表:列是字段,行是记录
数据字典:就是系统表,存放数据库相关信息的表,程序员一般不用手动改
constraint约束:数据检验规则
view视图:数据的逻辑显示,不储存数据
index索引:为了提高数据查询的性能
function函数:完成特定计算,具有返回值
procedure存储过程:完成特定的业务处理,没有返回值
trigger触发器:相当于一个事件监听器

5、《MySql建表》

6、修改表结构ALTER
增加列定义、修改列定义、删除列、重命名列。
增加列定义ADD:(新增不存在的)

ALTER TABLE student

ADD new_id INT; #新增一列可以省略圆括号

 

ALTER TABLE student ADD(

    #指定初始值为dog

    love VARCHAR(255)DEFAULT'dog',

    noLove VARCHAR(255)

)

修改列定义MODIFY:(修改已存在的)
MySql 持一 modify 令修改多 列定义,可在ALTER TABLE后使用多个MODIFY)

ALTER TABLE student 

MODIFY new_id VARCHAR(255),

 MODIFY noLove INT

# 同样,若表中已有数据,修改列定义很容易失败。
删除列定义 DROP

ALTER TABLE student DROP noLove

以上是标准SQL语法,对所有数据库均适用,NySQL还提供了两种特殊语法:
重命名数据表RENAME

ALTER TABLE student RENAME TO newstu

完全改变列定义CHANGE
# 同样,若表中已有数据,修改列定义很容易失败。

ALTER TABLE student CHANGE new_id idid INT


7、删除表DROP

DROP TABLE personnew

表结构被删除,表对象不在存在;表中所有数据被删除;表相关的索引、约束被删除。

8、表 TRUNCATE
TRUNCATE table
截断表,清空所有数据但保留表结构;只能一次性删除所有数据。
MySQL对其处理较特殊,若使用非InnoDB机制,truncate比delete快;
对于InnoDB机制,在5.0.3之前,truncate和delete一样;在5.0.3之后,truncate比delete高效,但如果表被外键约束参照,则变为delete操作;5.1.3后,快速truncate总是可用,即更高效。




1、数据库中不能重复的字段
主键、唯一键:
PRIMARY KEY (`KeyID`),
UNIQUE KEY `UK_BaseDataDetailed201512_` (`PayNum`),



目录
相关文章
|
15天前
|
SQL 关系型数据库 MySQL
数据库开发之SQL简介以及DDL的详细解析
数据库开发之SQL简介以及DDL的详细解析
26 0
|
6月前
|
SQL 关系型数据库 MySQL
【MySQL入门到精通-黑马程序员】MySQL基础篇-SQL概述及DDL
(精度指数的所有位数;标度指小数点后数的位数) 字符串类型
62 0
|
6月前
|
SQL 关系型数据库 MySQL
MySQL基本SQL语句1(DDL)
SQL(Structured Query Language)结构化查询语言,用于存取,查询,更新数据以及管理关系型数据库系统SQL指令分为四类DDL Data Defintion language 数据库定义语言 用于完成对数据库对象(数据表,数据库,视图,索引)的创建,删除,修改 DML Data Manipulation language 数据操作语言 用于完成对数据表中的数据添加,删除,修改 DQL
47 0
|
5月前
|
SQL 存储 大数据
【大数据技术Hadoop+Spark】Hive基础SQL语法DDL、DML、DQL讲解及演示(附SQL语句)
【大数据技术Hadoop+Spark】Hive基础SQL语法DDL、DML、DQL讲解及演示(附SQL语句)
80 0
|
6天前
|
SQL 关系型数据库 MySQL
【MySQL-4】简述SQLの通用语法及4种基本语句介绍(DDL/DML/DQL/DCL)
【MySQL-4】简述SQLの通用语法及4种基本语句介绍(DDL/DML/DQL/DCL)
|
2月前
|
SQL 关系型数据库 MySQL
Flink 提供了一种名为 Flink SQL 的查询语言,它支持多种数据库之间的 DDL 语句转换
【2月更文挑战第18天】Flink 提供了一种名为 Flink SQL 的查询语言,它支持多种数据库之间的 DDL 语句转换
172 2
|
5月前
|
SQL 存储 关系型数据库
Mysql数据库 1.SQL语言分类 DDL.数据定义语言
Mysql数据库 1.SQL语言分类 DDL.数据定义语言
71 0
|
7月前
|
SQL 消息中间件 API
Flink---14、Flink SQL(SQL-Client准备、流处理中的表、时间属性、DDL)
Flink---14、Flink SQL(SQL-Client准备、流处理中的表、时间属性、DDL)
|
8月前
|
SQL 调度 数据库
OBCP第三章 SQL引擎高级技术-DDL语句处理
OBCP第三章 SQL引擎高级技术-DDL语句处理
51 0
|
9月前
|
SQL 数据可视化 数据库