简体   繁体   中英

I am trying to set up a table in an ORACLE database and am getting an invalid data type error when I try to run this command:

CREATE TABLE LIGNE DE COMMANDE ( ligne_Commande_ID NUMBER (6) CONSTRAINT ligne_commande_id_pk PRIMARY KEY, Quantité NUMBER (3) CONSTRAINT ligne_comm_qtt NOT NULL, Article_ID NUMBER (6) CONSTRAINT ligneComm_article_fk REFERENCES article(article_id), Catégorie_ID NUMBER (6) CONSTRAINT ligneComm_catégorie_fk REFERENCES catégorie(catégorie_id), Commande_ID NUMBER (6) CONSTRAINT ligneComm_comm_fk REFERENCES commande(commande_id)) ;

With NLS_CHARACTERSET = AL32UTF8 , it will work when you just wrap the column names( QUANTITÉ and CATÉGORIE_ID ) and table name ( LIGNE DE COMMANDE ) in double-quotes( " ).

SQL> SELECT * FROM NLS_DATABASE_PARAMETERS
  2  WHERE PARAMETER = 'NLS_CHARACTERSET';

PARAMETER                                VALUE
---------------------------------------- ----------
NLS_CHARACTERSET                         AL32UTF8

SQL>

SQL> CREATE TABLE "LIGNE DE COMMANDE" (
  2      LIGNE_COMMANDE_ID   NUMBER(6)
  3          CONSTRAINT LIGNE_COMMANDE_ID_PK PRIMARY KEY,
  4      "QUANTITÉ"            NUMBER(3)
  5          CONSTRAINT LIGNE_COMM_QTT NOT NULL,
  6      ARTICLE_ID          NUMBER(6),
  7  --        CONSTRAINT LIGNECOMM_ARTICLE_FK
  8  --            REFERENCES ARTICLE ( ARTICLE_ID ),
  9      "CATÉGORIE_ID"        NUMBER(6),
 10  --        CONSTRAINT LIGNECOMM_CATÉGORIE_FK
 11  --            REFERENCES CATÉGORIE ( CATÉGORIE_ID ),
 12      COMMANDE_ID         NUMBER(6)
 13  --        CONSTRAINT LIGNECOMM_COMM_FK
 14  --            REFERENCES COMMANDE ( COMMANDE_ID )
 15  );

Table created.

Cheers!!

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM