DDL:
创建/删除数据库
create database databaseName;
drop database databaseName;
创建/删除表
create table tableName(column1 datatype[column_constraint],column2 datatype[column_constraint],...) [Constrain primary key pk_table_name(columnN)];
CREATE TABLE Persons
(
Id_P int NOT NULL AUTO_INCREMENT,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)DEFAULT 'Sandnes',
PRIMARY KEY (Id_P),
CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName),
FOREIGN KEY (Id_P) REFERENCES Persons(Id_P),
CONSTRAINT chk_Person CHECK (Id_P>0 AND City='Sandnes'),
)
drop table tableName;
创建/删除索引
create index
drop index
修改表
表增加/删除字段
alter table tableName add column1 datatype[column_constraint];
alter table tableName DROP column column_name;
表字段增加/删除 约束/索引
ALTER TABLE Persons
ADD CONSTRAINT pk_PersonID PRIMARY KEY (Id_P,LastName)
ALTER TABLE Persons
ALTER City SET DEFAULT 'SANDNES'
删除表字段的约束/索引
alter table tableName drop CONSTRAINT/INDEX constraint/index_name;
修改表字段:
Alter table tableName MODIFY column column_name datatype[column_constraint]
Data Constraint:
NOT NULL
UNIQUE
PRIMARY KEY
FOREIGN KEY
CHECK
DEFAULT
AUTO INCREMENT 字段
我们通常希望在每次插入新纪录时,自动地创建主键字段的值。
我们可以在表中创建一个 auto-increment 字段。
DML:对元组(记录)操作
增:
insert into tableName(column1,column2,...,columnN) values(value1,value2,...,valueN);
删:没有where则删除所有记录 == TRUNCATE TABLE 表名称
delete from tableName [where...];
改:
update tableName set column1 = newValue1 ,...,volumnN = newValueN [where...];
查:
select [distinct]a.column1,...,a.columnN,b.column1,...,b.columnN ,c.column1,...,c.columnN from
tableA a,tableB b,...,tableN n [where...]
DCL:Data Control Language
GRANT、REVOKE、COMMIT、ROLLBACK