2014-12-06 24 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

相關問題