:=&p_deptno在Navicat连接Oracle中,是不可用的,不知道是因为版本问题还是使用环境问题。
存储过程
DECLARE
V_deptno emp.deptno%TYPE :=&p_deptno;
BEGIN
DELETE FROM emp WHERE deptno=v_deptno;
IF SQL%NOTFOUND THEN
DELETE FROM dept WHERE deptno=v_deptno;
END IF;
END;
DECLARE V_deptno emp.deptno%TYPE,
其中emp.deptno%TYPE意思是表emp中列名deptno的数据类型,
:=&p_deptno意思是输入p_deptno的值,并复制给前面变量,:=是赋值的意思。
ORACLE中将带&的定义为变量,用户输入值后才能查询。
select * from table where id = &insertid,
&insertid就是变量,
打开ORACLE的PL/SQL网页,
输入select * from table where id = &insertid,
会出现一个文本框,要输入的值就是语句里面带&号的变量。