Sql 我正在尝试在ORACLE数据库中设置一个表,当我尝试运行此命令时,收到一个无效的数据类型错误: CREATE TABLE LIGNE DE COMMANDE( ligne_命令ID号(6)约束ligne_命令ID_pk主键, QuantitéNUMBER(3)约束ligne_comm_qtt不为空, 第条ID号(6)约束木质素第条fk参考第条(第条ID), Catégorie_ID编号(6)约束木质素MM_Catégorie_fk参考Catégorie(Catégorie_ID), Commande_ID编号(6)约束木质素COM_comm_fk引用Commande(Commande_ID));

Sql 我正在尝试在ORACLE数据库中设置一个表,当我尝试运行此命令时,收到一个无效的数据类型错误: CREATE TABLE LIGNE DE COMMANDE( ligne_命令ID号(6)约束ligne_命令ID_pk主键, QuantitéNUMBER(3)约束ligne_comm_qtt不为空, 第条ID号(6)约束木质素第条fk参考第条(第条ID), Catégorie_ID编号(6)约束木质素MM_Catégorie_fk参考Catégorie(Catégorie_ID), Commande_ID编号(6)约束木质素COM_comm_fk引用Commande(Commande_ID));,sql,oracle,Sql,Oracle,使用NLS_CHARACTERSET=AL32UTF8,只需将列名(QUANTITÉ和CATÉGORIE_ID)和表名(LIGNE DE COMMANDE)用双引号(“)括括起来即可 干杯!!欢迎来到Stack Overflow!请回顾并帮助您提出一个好问题,从而获得一个好答案。如果表格名称包含空格,则必须用引号括起来。我建议将表格命名为LIGNE_DE_COMMANDE,即不包含空格。可能Quantité也需要引用:Quantité“ SQL> SELECT * FROM NLS_DAT

使用
NLS_CHARACTERSET=AL32UTF8
,只需将列名(
QUANTITÉ
CATÉGORIE_ID
)和表名(
LIGNE DE COMMANDE
)用双引号(
)括括起来即可


干杯!!

欢迎来到Stack Overflow!请回顾并帮助您提出一个好问题,从而获得一个好答案。如果表格名称包含空格,则必须用引号括起来。我建议将表格命名为
LIGNE_DE_COMMANDE
,即不包含空格。可能
Quantité
也需要引用:
Quantité“
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.