oracle 中的过程不会 运行
Procedure in oracle wont run
-- procedure--
CREATE OR REPLACE PROCEDURE getDBUSERByUserId(
p_userid IN DBUSER.USER_ID%TYPE,
o_username OUT DBUSER.USERNAME%TYPE,
o_createdby OUT DBUSER.CREATED_BY%TYPE,
o_createddate OUT DBUSER.CREATED_DATE%TYPE)
IS
BEGIN
SELECT USERNAME , CREATED_BY
INTO o_username, o_createdby
**FROM DBUSER WHERE USER_ID = p_userid;
END;
DECLARE
o_username DBUSER.USERNAME%TYPE;
o_createdby DBUSER.CREATED_BY%TYPE;
o_date DBUSER.CREATED_DATE%TYPE;
BEGIN
GETDBUSERBYUSERID(1001,o_username,o_createdby,o_date);
DBMS_OUTPUT.PUT_LINE('username : ' || o_username);
DBMS_OUTPUT.PUT_LINE('createdby : ' || o_createdby);
END;
- DBUSER TABLE 列:
- USER_ID,
- 用户名,
- CREATED_BY,
CREATED_DATE,
错误报告 -
ORA-06550:第 11 行,第 3 列:
PLS-00103:在期望以下之一时遇到符号 "end-of-file":
;
符号“;”被替换为 "end-of-file" 以继续。
- 00000 - "line %s, column %s:\n%s"
*原因:通常是 PL/SQL 编译错误。
*动作:'
我正在尝试测试一个程序,因为我正在自学如何完成它们,因为我的学校缺乏任何超出基础知识的教学。我在 Oracle sqldeveloper 程序中 运行 这段代码,我无法弄清楚我到达文件末尾意味着什么,因为我安装了一个 1 数据成员来匹配里面的代码。我不想显示它的添加日期,所以它不在声明语句中。
如果您是 运行 显示为脚本的所有内容,则在 PL/SQL 代码的每个独立部分之后需要一个 /
:
CREATE OR REPLACE PROCEDURE getDBUSERByUserId(
p_userid IN DBUSER.USER_ID%TYPE,
o_username OUT DBUSER.USERNAME%TYPE,
o_createdby OUT DBUSER.CREATED_BY%TYPE,
o_createddate OUT DBUSER.CREATED_DATE%TYPE)
IS
BEGIN
SELECT USERNAME , CREATED_BY
INTO o_username, o_createdby
FROM DBUSER WHERE USER_ID = p_userid;
END;
/
DECLARE
o_username DBUSER.USERNAME%TYPE;
o_createdby DBUSER.CREATED_BY%TYPE;
o_date DBUSER.CREATED_DATE%TYPE;
BEGIN
GETDBUSERBYUSERID(1001,o_username,o_createdby,o_date);
DBMS_OUTPUT.PUT_LINE('username : ' || o_username);
DBMS_OUTPUT.PUT_LINE('createdby : ' || o_createdby);
END;
/
This documentation if for SQL*Plus,但也主要适用于 SQL 开发人员。
-- procedure--
CREATE OR REPLACE PROCEDURE getDBUSERByUserId(
p_userid IN DBUSER.USER_ID%TYPE,
o_username OUT DBUSER.USERNAME%TYPE,
o_createdby OUT DBUSER.CREATED_BY%TYPE,
o_createddate OUT DBUSER.CREATED_DATE%TYPE)
IS
BEGIN
SELECT USERNAME , CREATED_BY
INTO o_username, o_createdby
**FROM DBUSER WHERE USER_ID = p_userid;
END;
DECLARE
o_username DBUSER.USERNAME%TYPE;
o_createdby DBUSER.CREATED_BY%TYPE;
o_date DBUSER.CREATED_DATE%TYPE;
BEGIN
GETDBUSERBYUSERID(1001,o_username,o_createdby,o_date);
DBMS_OUTPUT.PUT_LINE('username : ' || o_username);
DBMS_OUTPUT.PUT_LINE('createdby : ' || o_createdby);
END;
- DBUSER TABLE 列:
- USER_ID,
- 用户名,
- CREATED_BY,
CREATED_DATE,
错误报告 - ORA-06550:第 11 行,第 3 列: PLS-00103:在期望以下之一时遇到符号 "end-of-file":
; 符号“;”被替换为 "end-of-file" 以继续。
- 00000 - "line %s, column %s:\n%s" *原因:通常是 PL/SQL 编译错误。 *动作:'
我正在尝试测试一个程序,因为我正在自学如何完成它们,因为我的学校缺乏任何超出基础知识的教学。我在 Oracle sqldeveloper 程序中 运行 这段代码,我无法弄清楚我到达文件末尾意味着什么,因为我安装了一个 1 数据成员来匹配里面的代码。我不想显示它的添加日期,所以它不在声明语句中。
如果您是 运行 显示为脚本的所有内容,则在 PL/SQL 代码的每个独立部分之后需要一个 /
:
CREATE OR REPLACE PROCEDURE getDBUSERByUserId(
p_userid IN DBUSER.USER_ID%TYPE,
o_username OUT DBUSER.USERNAME%TYPE,
o_createdby OUT DBUSER.CREATED_BY%TYPE,
o_createddate OUT DBUSER.CREATED_DATE%TYPE)
IS
BEGIN
SELECT USERNAME , CREATED_BY
INTO o_username, o_createdby
FROM DBUSER WHERE USER_ID = p_userid;
END;
/
DECLARE
o_username DBUSER.USERNAME%TYPE;
o_createdby DBUSER.CREATED_BY%TYPE;
o_date DBUSER.CREATED_DATE%TYPE;
BEGIN
GETDBUSERBYUSERID(1001,o_username,o_createdby,o_date);
DBMS_OUTPUT.PUT_LINE('username : ' || o_username);
DBMS_OUTPUT.PUT_LINE('createdby : ' || o_createdby);
END;
/
This documentation if for SQL*Plus,但也主要适用于 SQL 开发人员。