DDL数据定义语言
1.对数据库
CREATE DATABASE database_name --增
CREATE DATABASE table_user --创建一个名叫table_user的数据库
DROP DATABASE 数据库名称 --删
DROP DATABASE table_user --删掉table_user这个数据库
ALTER DATABASE --改
用于更改数据库的全局特性。在数据库中添加或删除文件和文件组;也可用于更改文件和文件组的属性,例如更改文件的名称和大小。这些特性储存在数据库目录中的db.opt文件中。要使用ALTER DATABASE,您需要获得数据库ALTER权限。
2.对表
SQL CREATE TABLE
CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
)
其中,常用的数据库的数据类型如下:
数据类型 | 描述 |
---|---|
| 整数,首位表示正负,31位。4byte。 小整数,首位表示正负,15位。2byte。 超小数,从 0 - 255 。 可选:“size”规定数字的最大位数。 |
| 小数。 "size" 规定数字的最大位数,包括小数位。"d" 规定小数点右侧的最大位数。 |
char(size) | 容纳固定长度的字符串(可容纳字母、数字以及特殊字符)。 “size”在括号中规定字符串的长度。 |
varchar(size) | 容纳可变长度的字符串(可容纳字母、数字以及特殊的字符)。 “size”在括号中规定字符串的最大长度。 |
date(yyyymmdd) | 容纳日期。 |
CREATE TABLE Persons
(
Id_P int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
) --例子01
SQL TABLE DELETE
删除表(表的结构、属性以及索引也会被删除)。
DROP TABLE 表名称 --删除表
TRUNCATE TABLE 表名 --只删除表内的数据,保留结构
注:drop和truncate都没有回滚!!!慎用。
SQL ALTER TABLE
alter主要是对列进行操作。包括添加、修改、删除列。
ALTER TABLE table_name ADD column_name datatype
ALTER TABLE Persons ADD Birthday date --例子02:添加新的列
ALTER TABLE table_name ALTER COLUMN column_name datatype
ALTER TABLE Persons ALTER COLUMN Birthday year --例子03:修改列的数据类型
ALTER TABLE table_name DROP COLUMN column_name
ALTER TABLE Person DROP COLUMN Birthday --例子04:删除列
3.对索引
index是为了在不读取整个表的情况下,使数据库应用程序可以更快地查找数据。用户无法看到索引,它们只能被用来加速搜索/查询。注:更新一个包含索引的表需要比更新一个没有索引的表更多的时间,这是由于索引本身也需要更新。因此,理想的做法是仅仅在常常被搜索的列(以及表)上面创建索引。
SQL CREATE INDEX 语句
CREATE UNIQUE INDEX index_name ON table_name (column_name) --UNIQUE是可选项,写上UNIQUE后就是在表上创建唯一的索引,每行之间都不能拥有相同的索引值。
CREATE INDEX PersonIndex ON Person (LastName DESC,FirstName) --DESC代表降序,使用时是在列后面加。其次,多个列之间用都好隔开。
SQL DROP INDEX 语句
删除表格中的索引,各个数据库之间各有不同。常用的如下:DROP INDEX table_name.index_name --Microsoft SQL Server版
ALTER TABLE table_name DROP INDEX index_name --MySQL版
DROP INDEX index_name --Oracle版
DDL语句的总结到此为止。至此,基本的SQL语句就完了。下一篇将进行一些高级的SQL语句总结。