ORACLE基本SQL语句
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ORACLE基本定义、操作语句
一、表
1.创建表
CREATE TABLE TAB_NAME
(
COL_01 V ARCHAR2(10) NOT NULL,
COL_02 NUMBER(8,2),
COL_03 DATE
);
2.添加主键约束
ALTER TABLE TAB_NAME ADD CONSTRAINT PK_COL_01 PRIMARY KEY(COL_01); 3.添加唯一性约束
ALTER TABLE TAB_NAME ADD CONSTRAINT UK_COL_02 UNIQUE(COL_02);
4.添加外键约束
ALTER TABLE TAB_NAME ADD CONSTRAINT FK_COL0_03 FOREIGN KEY(COL_03) REFERENCES TAB_2(COL_03);
5.添加check约束
ALTER TABLE TAB_NAME ADD CONSTRAINT CHK_COL_03 CHECK(COL_01 <> ‘ABC’);
6.创建索引
――创建唯一索引
CREATE UNIQUE INDEX IDX_NAME ON TAB_NAME(COL_01);
――创建非唯一索引
CREATE INDEX IDX_NAME ON TAB_NAME(COL_01);
7.给表添加一个新列
ALTER TABLE TAB_NAME ADD COL_04 V ARCHAR2(10);
8.修改列的数据类型
ALTER TABLE TAB_NAME MODIFY COL_04 NUMBER(8);
9.删除一列
ALTER TABLE TAB_NAME DROP COLUMN COL_04;
10.更改表的名称
ALTER TABLE TAB_NAME RENAME TO TAB_NEW_NAME;
11.更改表的列名
ALTER TABLE TAB_NAME RENAME COLUMN COL_04 TO COL_05;
12.给表和列添加注释说明
--add comments to the table
COMMENT ON TABLE TAB_NAME IS‘示例表’;
--add comments to the column
COMMENT ON COLUMN TAB_NAME.COL_01 IS‘列名’;
13.删除表
DROP TABLE TAB_NAME;
14.MERGE
merge into tj_test1 tt1
using tj_test tt
on (tt1.id=tt.id)
when matched then
update set
=,
tt1.age=tt.age
when not matched then
insert values(
tt.id,
,
tt.age)
alter table Tab_Name modify(字段varchar(20), 字段varchar(50));
二、视图
1.创建视图
CREATE OR REPLACE VIEW VW_NAME AS
SELECT A.COL_01,
A.COL_02,
A.COL_03,
B.COL_04
FROM TAB_ONE A,TAB_TWO B
WHERE A.COL_01 = B.COL_01;
三、序列
1.创建序列
CREATE SEQUENCE SQ_NAME
INCREMENT BY 10 --序列增量
START WITH 20 --开始值
MAXV ALUE 1000 --最大值
MINV ALUE 20 --最小值
NOCACHE /*如果要指定cache给序列,应该写成CACHE N
其中N为要指定的数值*/
NOCYCLE; /*如果序列到了最大值还要继续取值,
就写成CYCLE*/
2.修改序列
ALTER SEQUENCE SQ_NAME
INCREMENT BY 10 --序列增量
START WITH 20 --开始值
MAXV ALUE 1000 --最大值
MINV ALUE 20 --最小值
CACHE 5
CYCLE;
注:如果想要按不同的值从新开始一个序列,该序列必须删掉重建
四、同义词
1.创建同义词
CREATE SYNONYM SY_NAME FOR TAB_NAME;
五、函数
创建函数
CREATE OR REPLACE FUNCTION FN_NAME([参数1],[参数2],[…..]) RETURN return_type
AS
--定义变量
BEGIN
--函数内容
Return [返回值];
END;
六、存储过程
创建过程
CREATE OR REPLACE PROCEDURE SP_NAME([参数1],[参数2],[…..]) AS
--定义变量
BEGIN
--过程内容
END;
七、触发器
创建过程
CREATE OR REPLACE TRIGGER TR_NAME
AFTER[BEFORE ] [INSERT/UPDATE/DROP] ON TAB_NAME
REFERENCING OLD AS old NEW AS new
FOR EACH ROW
DECLARE
--定义变量
BEGIN
--触发器内容
END;
八、包和包体
创建包
CREATE OR REPLACE PACKAGE PK_NAME
AS
--包内容
END PK_NAME;
创建保体
CREATE OR REPLACE PACKAGE BODY PK_NAME
AS
--包体的内容
END PK_NAME;
九、用户
1.创建一个用户