2014-12-06 61 views
0

什么是错我的PLSQLPLS-00103:在期待以下某种情况时遇到符号“文件结束”::=。 ?(@%;

CREATE OR REPLACE PROCEDURE REGISTRO_CLIENTE_TARJETA(
v_nombre IN VARCHAR2, 
v_ap_paterno IN VARCHAR2, 
v_ap_paterno IN VARCHAR2, 
v_rfc IN VARCHAR2, 
v_email IN VARCHAR2, 
v_direccion IN VARCHAR2, 
v_numero IN VARCHAR2, 
v_num_seg IN VARCHAR2, 
v_mes_exp IN VARCHAR2, 
v_anio_expiracion IN VARCHAR2) 
AS 
BEGIN 
INSERT INTO TARJETA_DE_CREDITO(TARJETA_ID, NUMERO, NUM_SEGURIDAD, MES_EXPIRACION, ANIO_EXPIRACION) 
VALUES(TARJETA_CREDITO_SEQ.NEXTVAL, v_numero, v_num_seg, v_mes_exp, v_anio_expiracion) 

INSERT INTO CLIENTE(CLIENTE_ID,NOMBRE, AP_PATERNO, AP_MATERNO, RFC, EMAIL, DIRECCION, TARJETA_ID) 
VALUES(CLIENTE_SEQ.NEXTVAL, v_nombre, v_ap_paterno, v_ap_paterno, v_rfc, v_email, v_direccion, (SELECT LAST_NUMBER FROM ALL_SEQUENCES WHERE SEQUENCE_NAME = 'TERCERO_SEQ')) 

END; 

我得到使用show错误下列错误命令:

LINE/COL ERROR 
-------- ----------------------------------------------------------------- 
14/1  PL/SQL: SQL Statement ignored 
15/88 PL/SQL: ORA-00933: SQL command not properly ended 
19/3  PLS-00103: Encountered the symbol "end-of-file" when expecting 
     one of the following: 
     := . (@ % ; 
+4

你需要在每个VALUES(...) – Multisync 2014-12-06 21:13:04

回答

1

INSERT语句必须以semi-colon结束

insert into table (columns list) values (values list);

作为一个很好的做法,始终编译代码SQL*Plus并做SHOW ERROR。查看error stack中的line number。如果没有任何EXCEPTION块(或有适当的异常处理),您将得到正确的行号。通过转到行号并验证,尝试debug您的代码。

+0

结尾处使用分号谢谢,那是做了这个部分。在ap_paterno上也有一个重复的记录名称。 – 2014-12-06 21:49:27

+0

感谢您的反馈。 – 2014-12-06 21:51:58

相关问题