一、DDL(Data Definition Language)数据库定义语言(无需commit)
1.CREATE-------创建
实例:
(1)创建一个数据库:
CREATE DATABASE 【IF NOT EXISTS】数据库名称
IF NOT EXISTS:在同一系统下创建两个相同名称的数据库会报错
(2)创建一个表:
CREATE TABLE 表名称
( 列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
)
/*
创建一个runoob_tbl数据库表
*/
CREATE TABLE IF NOT EXISTS `runoob_tbl`(
`runoob_id` INT UNSIGNED AUTO_INCREMENT,
`runoob_title` VARCHAR(100) NOT NULL,
`runoob_author` VARCHAR(40) NOT NULL,
`submission_date` DATE,
PRIMARY KEY ( `runoob_id` )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
实例解析:
- 如果你不想字段为 NULL 可以设置字段的属性为 NOT NULL, 在操作数据库时如果输入该字段的数据为NULL ,就会报错。
- AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1。
- PRIMARY KEY关键字用于定义列为主键。 您可以使用多列来定义主键,列间以逗号分隔。
- ENGINE 设置存储引擎,CHARSET 设置编码。
2.ALTER------修改
3.DROP------删除
删除一个数据库:
DROP DATABASE 数据库名
4.TRUNCATE------截断表内容(开发期,还是挺常用的)
5.COMMENT--------为数据字典添加备注
6.RENAME
二、DML(Data Manipulation Language)数据操纵语言(需要commit)
依据语言的级别,DML又可分成过程性DML和非过程性DML两种。
1.SELECT-------查询
2.INSERT------插入
3.UPDATE------修改
4.DELETE------删除
5.MERGE
6.CALL------调用一个PL/SQL或Java子程序
7.EXPLAIN PLAN------解析分析数据访问路径
8.LOCK TABLE
三、DCL(Data Control Language)数据库控制语言
1.GRANT------ 授权
2.REVOKE------- 取消授权
四、TCL(Transaction Control Language)事务控制语言
1.SAVEPOINT -----设置保存点
2.ROLLBACK -----回滚
3.SET TRANSACTION------改变事务选项