oracle常用sql命令

前端之家收集整理的这篇文章主要介绍了oracle常用sql命令前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

打开cmd,输入sqlplus,输入用户名密码登陆。

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

猜你在找的Oracle相关文章