--1.无参函数
CREATE OR REPLACE FUNCTION func1 RETURN VARCHAR2
IS
BEGIN
RETURN '欢迎你:'||USER||',现在是:'||to_char(SYSDATE,'yyyy-mm-dd');
END func1;
--调用测试
BEGIN
dbms_output.put_line(func1);
END;
--有参函数
SELECT * FROM emp;
CREATE OR REPLACE FUNCTION getWorkTime(hiredate DATE) RETURN NUMBER
IS
BEGIN
RETURN trunc(months_between(SYSDATE,hiredate)/12);
END getWorkTime;
SELECT ename,job,getWorkTime(hiredate) FROM emp;
--触发器
--语句触发器(select/insert/update/delete)
CREATE OR REPLACE TRIGGER trg_dept BEFORE INSERT OR UPDATE OR DELETE ON dept
DECLARE
BEGIN
dbms_output.put_line(USER||','||to_char(SYSDATE,'yyyy-mm-dd')||',对dept进行操作。');
END trg_dept;
UPDATE dept SET dname='测试' WHERE deptno=60;
INSERT INTO dept VALUES(23,'触发器','数据库');
--行触发器(FOR EACH ROW)
--before触发器
--伪记录 :NEW :OLD
--3个条件谓词:INSERTING UPDATING DELETING
CREATE OR REPLACE TRIGGER trg_dept_before
BEFORE INS
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)