2016-08-29 22 views
0
INSERT INTO 
FLAG ("OPT_FLAG_KEY","H_KEY","FIRST_NAME","LAST_NAME", 
     "MIDDLE_NAME","TITLE","CREDENTIALS","ADDRESS_LINE_1", 
     "ADDRESS_LINE_2","ADDRESS_LINE_3","CITY","STATE", 
     "POSTAL_CODE","PHONE_NUMBER","BUSIN_PHONE","DECEASED", 
     "OPT_FLAG","OPT_FLAG_DATE","SOU_KEY","SOU_FILE_ID", 
     "SOU_FILE_ID_TEXT","BAT_ID","PHONE_NUMBER_SOURCE","BIRTH_DATE") 
VALUES(37009326,4,'Daniel','Boyle',NULL,NULL,NULL,'368 Road', 
     NULL,NULL,'Doylown','BVBV',1801,NULL,NULL,'NO','OUT', 
     TO_CHAR('10-AUG-16','DD/MM/YYYY'),201, 
     TO_DATE(SUBSTR('vhic_pavir_20160810.txt',12,8),YYYYMMDD), 
     '2016-08-10',598441,NULL,TO_DATE('03-FEB-1952',DD-MM-YYYY)); 

我在我的數據庫運行此查詢我得到了一些錯誤,如下面「錯誤的命令行:1列:698錯誤報告 - SQL錯誤:ORA-00984:列在這裏不允許

Error at Command Line : 1 Column : 698
Error report
SQL Error: ORA-00984: column not allowed here
00984. 00000 - "column not allowed here" *Cause:
*Action:"

編輯:這是我的我的表的說明:

Name    Null Type   
------------------- ---- ------------- 
OPT_FLAG_KEY    NUMBER(14)  
H_KEY     NUMBER(14)  
FIRST_NAME    VARCHAR2(50) 
LAST_NAME    VARCHAR2(50) 
MIDDLE_NAME    VARCHAR2(50) 
TITLE     VARCHAR2(50) 
CREDENTIALS    VARCHAR2(50) 
ADDRESS_LINE_1   VARCHAR2(100) 
ADDRESS_LINE_2   VARCHAR2(100) 
ADDRESS_LINE_3   VARCHAR2(100) 
CITY      VARCHAR2(50) 
STATE     VARCHAR2(20) 
POSTAL_CODE    VARCHAR2(20) 
PHONE_NUMBER    VARCHAR2(100) 
BUSIN_PHONE    VARCHAR2(100) 
DECEASED     VARCHAR2(5) 
OPT_FLAG     VARCHAR2(10) 
OPT_FLAG_DATE   DATE   
SOU_KEY     NUMBER(14)  
SOU_FILE_ID    DATE   
SOU_FILE_ID_TEXT   VARCHAR2(20) 
BATCH_ID     NUMBER(14)  
PHONE_NUMBER_SOURCE  VARCHAR2(100) 
BIRTH_DATE    DATE 
+1

你能否提供desc表(使用desc table_name命令)? – Abhishek

+0

我不能在這裏列出所有的專欄,我粘貼了我的答案@ abhishek –

+0

什麼是表名? – Abhishek

回答

1

有幾個問題與你的聲明首先,雙引號並不是必須的列名(除非你有混合的情況下或空間),將其刪除。

  • TO_CHAR('10-AUG-16','DD/MM/YYYY') - >10-AUG-16,不是約會。因此,它沒有任何意義的字符串轉換爲字符串

  • TO_DATE(SUBSTR('vhic_pavir_20160810.txt',12,8),YYYYMMDD) - >格式必須是單引號,即TO_DATE(SUBSTR('vhic_pavir_20160810.txt',12,8),'YYYYMMDD')

  • 「2016年8月10日」 - >你喜歡插入一個DATE值或一個字符串?你提供了一個字符串,而不是日期。

  • TO_DATE('03-FEB-1952',DD-MM-YYYY)) - >格式必須用單引號引起來,參見上文。 MM表示月份編號,而不是月份名稱。