Oracle 错误PLS-00103?

Oracle 错误PLS-00103?,oracle,plsql,oracle-sqldeveloper,Oracle,Plsql,Oracle Sqldeveloper,我正在编写一些PL/SQL代码,将一条新记录插入数据库。程序需要检查合理的输入,并在两个表中放置新记录 到目前为止,我的代码不起作用-我一直收到错误PLS-00103。我看了其他线程,它表明有一个丢失或错位的“/”,但我看不到它可能在哪里 非常感谢您的帮助 CREATE OR REPLACE PROCEDURE add_book( b_isbn IN books.isbn%type, b_title IN books.title%type, b_summary IN bo

我正在编写一些PL/SQL代码,将一条新记录插入数据库。程序需要检查合理的输入,并在两个表中放置新记录

到目前为止,我的代码不起作用-我一直收到错误PLS-00103。我看了其他线程,它表明有一个丢失或错位的“/”,但我看不到它可能在哪里

非常感谢您的帮助

CREATE OR REPLACE PROCEDURE add_book(
    b_isbn IN books.isbn%type,
    b_title IN books.title%type,
    b_summary IN books.summary%type,
    b_author IN books.author%type,
    b_datepub IN books.date_published%type,
    b_pagecount IN books.page_count%type)
AS
BEGIN
    IF b_isbn is NULL
    THEN
        DBMS_OUTPUT.put_line('Enter a valid ISBN');
    END IF;

    INSERT INTO books (isbn, title, summary, author, date_published, page_count)
    VALUES (b_isbn, b_title, b_summary, b_author, bdatepub, b_pagecount);
END add_book;
/

BEGIN
    add_book ('b_isbn','b_title','b_summary','b_datepub','b_pagecount');
END;
/

CREATE OR REPLACE PROCEDURE add_bookcopies(
    bc_barcode IN book_copies.barcode_id%type,
    bc_isbn IN book_copies.isbn%type)
AS
BEGIN
    IF bc_isbn is NULL
    THEN
        DBMS_OUTPUT.put_line('Enter a valid ISBN');
    END IF;

    INSERT INTO book_copies (barcode_ID, isbn)
    VALUES (bc_barcode, bc_isbn);
END add_bookcopies;
/

BEGIN
    add_bookcopies(abc_barcode, 'abc_isbn');
END;

您有两个过程和两个匿名块。四个中的哪一个抛出错误?此外:错误消息的详细信息不仅仅是错误代码;始终完整发布。这还取决于您在何处/如何创建过程。它们是在一个包中还是独立的?我假设是一个包,因为上面的代码中有两个过程。话虽如此,代码中第二个“/”之后的所有内容都将导致错误,请删除第一个“/”和第二个“/”之后的所有代码。您只需要一个“/”来结束包体。哦,我忘了另一个匿名区块,也删除它。如果是独立的,删除第一个“/”,“/”表示整个代码块的结束。这一切都假设您正在使用Sql*Plus或类似的东西。显示“输入有效的ISBN”不会阻止INSERT运行。如果列上有NOTNULL约束,则插入将失败,但DBMS_输出调用在任何意义上都不是“验证”。