2016-04-14 5 views
1

Ich versuche, eine Tabelle (Kunde) zur Datenbank zu erstellen, indem Sie diese Abfrage mit,SQL-Fehler: ORA-00904: ungültige Kennung 3

CREATE TABLE customers(
    "customer_id" VARCHAR2(20), 
    f_name VARCHAR2(30), 
    CONSTRAINT f_name_not_null NOT NULL, 
    l_name VARCHAR2(30), 
CONSTRAINT l_name_not_null NOT NULL, 
    mobile_no VARCHAR2(30), 
    CONSTRAINT mobile_no_not_null NOT NULL, 
    address VARCHAR2(30), 
    CONSTRAINT address_not_null NOT NULL, 
    CONSTRAINT customer_pk PRIMARY KEY(customer_id), 
    CONSTRAINT mobile_no_address_unique UNIQUE(mobile_no,address)); 

i die erhalten folgende zurück:

Error report - SQL Error: ORA-00904: : invalid identifier 00904. 00000 - "%s: invalid identifier"

+6

'„customer_id“' ist ein anderer Name dann 'customer_id' das Handbuch für Details https://docs.oracle. com/datenbank/121/SQLRF/sql_element s008.htm # SQLRF00223 entfernen Sie einfach all diese gefürchteten Anführungszeichen –

Antwort

1

Es gibt zwei Probleme in dieser Aussage

zunächst die inkonsistente Verwendung der angegebenen Spalte (wie in Kommentar von @a_horse_with_no_name angegeben)

zweites Problem ist, dass die Spaltenbedingung nicht mit einem Komma von der Spaltendefinition

Die richtige Aussage mit Änderungen in den Kommentaren ist

ist
CREATE TABLE customers(
    /*"*/customer_id/*"*/ VARCHAR2(20), 
    f_name VARCHAR2(30) /*,*/ 
    CONSTRAINT f_name_not_null NOT NULL, 
    l_name VARCHAR2(30)/*,*/ 
CONSTRAINT l_name_not_null NOT NULL, 
    mobile_no VARCHAR2(30)/*,*/ 
    CONSTRAINT mobile_no_not_null NOT NULL, 
    address VARCHAR2(30) /*,*/ 
    CONSTRAINT address_not_null NOT NULL, 
    CONSTRAINT customer_pk PRIMARY KEY(customer_id), 
    CONSTRAINT mobile_no_address_unique UNIQUE(mobile_no,address)); 

Interessante getrennt werden soll, dass der Fehler Sie betrifft die zweite Ausgabe zu sehen , nachdem es die Lösung werden Sie den Fehler für die erste Ausgabe erhalten, die präziser ist:

ORA-00904: "CUSTOMER_ID": invalid identifier 
Verwandte Themen