您的位置:首页 > 数据库

对SQL语句的基础知识总结二(DDL的增删改查)

2017-12-21 21:10 316 查看

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 数据类型,
....
)
其中,常用的数据库的数据类型如下:

数据类型描述
int(size)
smallint(size)
tinyint(size)
整数,首位表示正负,31位。4byte。

小整数,首位表示正负,15位。2byte。

超小数,从 0 - 255 。                                        可选:“size”规定数字的最大位数。
decimal(size,d)
numeric(size,d)
小数。

"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语句总结。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: