库/////////////////////////////////////////////
建库:
CREATE DATABASE 数据库名称
删除库:
DROP DATABASE 数据库名称
表/////////////////////////////////////////////
建表:
CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
)
CREATE TABLE Persons
(
Id_P int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
修改表:
把表名A 修改成表名B
ALTER TABLE A RENAME TO B
ALTER TABLE table_name
ADD column_name datatype
ALTER TABLE table_name
ALTER COLUMN column_name datatype
ALTER TABLE table_name
DROP COLUMN column_name
删除表:
DROP TABLE 表名称
TRUNCATE TABLE 表名称//仅删除表数据
//////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////
约束:
1.主键PRIMARY KEY
唯一且不为空
每个表都应该有一个主键,并且每个表只能有一个主键。
建表时
CREATE TABLE Persons
(
Id_P int NOT NULL,
PRIMARY KEY (Id_P)
)
CREATE TABLE Persons
(
Id_P int AUTOINCREMENT PRIMARY KEY,//自增的
}
CREATE TABLE Persons
(
P_Id int NOT NULL,
PRIMARY KEY (P_Id)
)
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
CONSTRAINT uc_PersonID PRIMARY KEY (Id_P,LastName)//多字段时。并命名主键
)
更改表时
ALTER TABLE Persons
ADD PRIMARY KEY (Id_P)
ALTER TABLE Persons
ADD CONSTRAINT pk_PersonID PRIMARY KEY (Id_P,LastName)
删除
ALTER TABLE Persons
DROP PRIMARY KEY
ALTER TABLE Persons
DROP CONSTRAINT pk_PersonID
2.外键FOREIGN KEY
FOREIGN KEY 约束用于预防破坏表之间连接的动作。
FOREIGN KEY 约束也能防止非法数据插入外键列,因为它必须是它指向的那个表中的值之一。
建表时
CREATE TABLE Orders
(
Id_P int,
FOREIGN KEY (Id_P) REFERENCES Persons(Id_P)
)
CREATE TABLE Orders
(
Id_P int FOREIGN KEY REFERENCES Persons(Id_P)
)
CREATE TABLE Orders
(
Id_P int,
CONSTRAINT fk_PerOrders FOREIGN KEY (Id_P)//多键时
REFERENCES Persons(Id_P)
)
ALTER TABLE Orders
ADD FOREIGN KEY (Id_P)
REFERENCES Persons(Id_P)
ALTER TABLE Orders
ADD CONSTRAINT fk_PerOrders
FOREIGN KEY (Id_P)
REFERENCES Persons(Id_P)
删除
ALTER TABLE Orders
DROP FOREIGN KEY fk_PerOrders
ALTER TABLE Orders
DROP CONSTRAINT fk_PerOrders
3.唯一UNIQUE
UNIQUE 约束唯一标识数据库表中的每条记录。
UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证。
PRIMARY KEY 拥有自动定义的 UNIQUE 约束。
请注意,每个表可以有多个 UNIQUE 约束,但是每个表只能有一个 PRIMARY KEY 约束。
建表时
CREATE TABLE Persons
(
Id_P int NOT NULL,
UNIQUE (Id_P)
)
CREATE TABLE Persons
(
Id_P int NOT NULL UNIQUE,
)
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName)//多键时
)
修改表时
ALTER TABLE Persons
ADD UNIQUE (P_Id)
ALTER TABLE Persons
ADD CONSTRAINT uc_PersonID UNIQUE (P_Id,LastName)
删除
ALTER TABLE Persons
DROP INDEX uc_PersonID
ALTER TABLE Persons
DROP CONSTRAINT uc_PersonID
4.非空NOT NULL
NOT NULL 约束强制列不接受 NULL 值。
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
)
5.检查CHECK
CHECK 约束用于限制列中的值的范围。
如果对单个列定义 CHECK 约束,那么该列只允许特定的值。
如果对一个表定义 CHECK 约束,那么此约束会在特定的列中对值进行限制。
建表时
CREATE TABLE Persons
(
Id_P int NOT NULL,
CHECK (Id_P>0)
)
CREATE TABLE Persons
(
Id_P int NOT NULL CHECK (Id_P>0),
)
修改表时
ALTER TABLE Persons
ADD CHECK (Id_P>0)
ALTER TABLE Persons
ADD CONSTRAINT chk_Person CHECK (Id_P>0 AND City='Sandnes')
删除
ALTER TABLE Persons
DROP CONSTRAINT chk_Person
6.默认DEFAULT
DEFAULT 约束用于向列中插入默认值。
如果没有规定其他的值,那么会将默认值添加到所有的新纪录。
CREATE TABLE Persons
(
City varchar(255) DEFAULT 'Sandnes'
)
CREATE TABLE Orders
(
OrderDate date DEFAULT GETDATE()//可用系统函数
)
修改表时
ALTER TABLE Persons
ALTER City SET DEFAULT 'SANDNES'
ALTER TABLE Persons
ALTER COLUMN City SET DEFAULT 'SANDNES'
删除
ALTER TABLE Persons
ALTER City DROP DEFAULT
ALTER TABLE Persons
ALTER COLUMN City DROP DEFAULT
索引:
视图:
|
仅容纳整数。在括号内规定数字的最大位数。 integer与int没有区别 |
|
容纳带有小数的数字。 "size" 规定数字的最大位数。"d" 规定小数点右侧的最大位数。 暂看没有区别 |
char(size) | 容纳固定长度的字符串(可容纳字母、数字以及特殊字符)。 在括号中规定字符串的长度。是char类型当你输入字符小于长度时,后补空格; |
varchar(size) | 容纳可变长度的字符串(可容纳字母、数字以及特殊的字符)。 在括号中规定字符串的最大长度。而varchar类型时,则表示你输入字符的实际长度 |
date(yyyymmdd) | 容纳日期。 |
联通100仅售99.00
移动100仅售99.30