获取名字?
CREATE OR REPLACE FUNCTION GETName(p_id in number) RETURN varchar2 IS
v_name varchar2(100);
BEGIN
select max(name) INTO V_NAME from A where id=p_id;
RETURN V_NAME;
END;
CREATE OR REPLACE FUNCTION GETName(p_id in number) RETURN varchar2 IS
v_name varchar2(100);
BEGIN
select max(name) INTO V_NAME from A where id=p_id;
RETURN V_NAME;
END;
这个工具从对象导航器可以直接创建参数的
如创建的参数P_A
在写查询语句时可以直接用:P_A访问参数的值
%rowtype 和 %type,觉得你这个里面可能用得到,
你自己百度下吧
CREATE OR REPLACE PROCEDURE SP_STU(IDNO IN NUMBER)
AS
STU_NAME VARCHAR2(32);
BEGIN
SELECT NAME INTO STU_NAME FROM STU WHERE NO=IDNO;
DBMS_OUTPUT.put_line(STU_NAME);
END;
使用存储过程,可将name值输出。
函数可以在调用的时候获得结果,如下:
CREATE FUNCTION FN_STU(IDNO IN NUMBER)RETURN varchar2
AS
STU_NAME VARCHAR2(32);
BEGIN
SELECT NAME INTO STU_NAME FROM STU WHERE NO=IDNO;
RETURN(STU_NAME);
END;
select fn_stu(3) from dual;
CREATE OR REPLACE PROCEDURE SP_XXX(T_ID IN NUMBER , T_NAME OUT VARCHAR2)
IS
BEGIN
SELECT NAME INTO T_NAME FROM STUDENTS WHERE ID=T_ID;
END;
调用存储过程,打印nameDECLARE
ID STUDENTS.ID%TYPE:=1;
NAME STUDENTS.NAME%TYPE;--定义一个和students中name列类型相同的变量
BEGIN
SP_XXX(ID,NAME);
DBMS_OUTPUT.put_line(NAME);--打印name信息
END;
函数就不在演示了