--创建索引 关键词 index
create[unique] index index_name
on table_name(column_name [,column_name…])
[tablespace tablespace_name]
--创建唯一索引 unique index
create unique index suoyinname on student(sname)
--创建同义词 可以理解为其他对象的一个别名,由它映射到另一个对象 关键词 synonym
--有两种 一种是public 一种是私有的
create [public] synonym table_name for user.table_name;
drop [public] synonym table_name;
--创建序列 关键词 sequence
create sequence name start with 1 increment by 1
--返回序列的下一个值 关键字 nextval
select name.nextval as 下一个值 from dual
-- 返回序列的当前值 关键字 currval
select name.currval as 当前值 from dual
--创建视图 关键字 view
create or replace view student_v
as select* from student
--查询视图
select * from student_v
--删除视图
drop view student_v
--存储过程 关键字 procedure
create or replace procedure name(
--定义参数
)
is|as
begin
pl/sql语句块
end
--用EXECUTE命令调用存储过程的格式如下:
execute proc_name(par1,par2…);
--存储过程也可以被另外的PL/SQL块调用,调用的语句是:
declare
par1,par2;
BEGIN
proc_name(par1,par2…);
END;
--删除存储过程:
drop procedure proc_name;
--函数:语法:
CREATE[OR REPLACE] FUNCTION<函数名> [(参数列表)]
RETURN数据类型
IS|AS (is或as完全等价 )
[局部变量声明]
BEGIN
PL/SQL函数体
END[<函数名>]
--函数的结束一定要使用return语句返回一个与声明匹配的值
--删除函数可使用如下命令:
drop function funname;
--触发器 关键字 trigger
--语法:
CREATE[ OR REPLACE ] TRIGGER name
{BEFORE | AFTER } { event [ OR ... ] }
ON table [FOR [ EACH ] { ROW | STATEMENT } ]
[WHEN(condition) ]
plsql block| call procedure s_statement
--删除触发器语法:
drop trigger name ON table