OracleSQL DDL 基础语法

1、SQL TRUNCATE TABLE 语句

假使大家只是须求除去表内的数额,但并不删除表自个儿,那么大家该咋做啊?

请使用 TRUNCATE TABLE 命令(仅仅删除表格中的数据):

TRUNCATE TABLE 表名称

 二、AUTO INCREMENT 自增字段

咱俩常见希望在历次插入新记录时,自动地创立主键字段的值。

我们能够在表中成立贰个 auto-increment 字段。

用于 MySQL 的语法

下列 SQL 语句把 “Persons” 表中的 “P_Id” 列定义为 auto-increment 主键:

CREATE TABLE Persons
(
P_Id int NOT NULL AUTO_INCREMENT,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
PRIMARY KEY (P_Id)
)

用于 SQL Server 的语法

下列 SQL 语句把 “Persons” 表中的 “P_Id” 列定义为 auto-increment 主键:

CREATE TABLE Persons
(
P_Id int PRIMARY KEY IDENTITY(20,10),     //从20开始,每次增加10
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)

用于 Oracle 的语法

在 Oracle 中,代码稍微复杂一点。

您必须透过 sequence 对创设 auto-increment 字段(该对象生成数字系列)。

请使用下边包车型客车 CREATE SEQUENCE 语法:

CREATE SEQUENCE seq_person
MINVALUE 1
START WITH 1
INCREMENT BY 1
CACHE 10

地点的代码成立名称为 seq_person 的行列对象,它以 一 开头且以 一递增。该目的缓存 十 个值以拉长品质。CACHE
选项规定了为了提升访问速度要存款和储蓄多少个连串值。

要在 “Persons” 表中插入新记录,我们必须使用 nextval 函数(该函数从
seq_person 系列中取回下三个值):

INSERT INTO Persons (P_Id,FirstName,LastName)
VALUES (seq_person.nextval,'Lars','Monsen')

上面的 SQL 语句会在 “Persons” 表中插入一条新记录。”P_Id” 的赋值是根源
seq_person 体系的下一个数字。”FirstName” 会被安装为 “Bill”,”LastName”
列会被安装为 “Gates”。

相关文章