1.创建表:
CREATE TABLE table_name (column_name datetype [null | not null],column_name datetype [null | not null],... [constraint] )
说明:
一个数据库中表名不可以重复,一个表中列名不可以重复
null not null是否允许该列为空
constraint 为表中的列设置约束
CREATE TABLE productinfo( productid varchar2(10),productname varchar2(20),productprice number(8,2),quantity number(10),category varchar2(10),desperation varchar2(1000),origin varchar2(10) );
根据其他表创建表
CREATE TABLE table_name AS SELECT column_name1,column_name2,...FROM source_table;
AS 关键字不能省略。
创建后原表记录同时会插入到新表中。
2.修改表
ALTER TABLE table_name ADD column_name | MODIFY column_name | DROP COLUMN column_name;
drop column 时一般要加上CASCADE CONSTRAINTS,把与该列有关的约束一起删除。
例:
-- 添加列 ALTER TABLE productinfo ADD remark varchar2(200); -- 修改列 ALTER TABLE productinfo MODIFY remark number(2,2); -- 删除列 ALTER TABLE productinfo DROP column remark;
3.约束
(1)主键约束
在创建时指定:primary key (字段名)
通过alter指定:
-- 添加主键约束 ALTER TABLE table_name ADD CONSTRAINTS constraint_name PRIMAY KEY (column_name); -- 删除主键约束 ALTER TABLE table_name DROP CONSTRAINTS constraint_name;
(2)外键约束
在创建时指定:
CONSTRAINT constraint_name FOREIGN KEY (column_name) REFERENCE table_name (column_name) ON DELETE CASCADE;
通过alter指定:
-- 增加外键约束 ALTER TABLE table_name ADD CONSTRAINT constraint_name FOREIGN KEY (column_name) REFERENCE table_name (column_name) ON DELETE CASCADE; -- 删除外键约束 ALTER TABLE table_name DROP CONSTRAINT constraint_name;
(3)CHECK约束(UNIQUE约束)
在创建时指定:
CONSTRAINT constraint_name CHECK | UNIQUE(condition);
condition是约束条件,如 CHECK(age >= 18 AND age <= 60),CHECK(gender='男' or gender='女')
UNIQUE唯一约束,
通过alter指定:
-- 增加检查约束 ALTER TABLE table_name ADD CONSTRAINT constraint_name CHECK | UNIQUE(condition); -- 删除检查约束 ALTER TABLE table_name DROP CONSTRAINT constraint_name;
(4)NOT NULL非空约束
在创建时指定:
column_name datatype NOT NULL
通过alter指定:
-- 增加非空约束 ALTER TABLE table_name MODIFY column_name NOT NULL; -- 删除非空约束 ALTER TABLE table_name MODIFY column_name NULL;
4.插入INSERT
INSERT INTO table_name(column_name1,...) VALUES(data1,data2,...);
通过子查询插入数据
INSERT INTO table_name1 (column_name1,...) SELECT column_name1,... FROM table_name2;
注意:一定要确保两个表的列的个数和列的数据类型都一致。
5.修改UPDATE
UPDATE table_name SET column_name1=data1,column_name2=data2,...[WHERE condition];
6.删除DELETE
DELETE table_name [WHERE condition];原文链接:https://www.f2er.com/oracle/207201.html