如何让oracle接受“#34;评论"作为一个属性?

时间:2018-02-02 16:16:42

标签: sql oracle attributes

问题

我正在尝试创建一个"检查"包含doctorIDadmissionNumcomment列的表格。列doctorID引用了医生表中的主键ID,列admissionNum引用了表中的主键num。以下是我的CREATE声明:

SQL> create table examine
2 (doctorID int references doctor(id),
3 admissionNum int references admission(num),
4 comment varchar(100),
5 unique (doctorID, admissionNum));

它返回关于注释行的错误:

comment varchar(100),
*
ERROR at line 4:
ORA-00904: :  invalid identifier

如果我们将单词注释更改为其他内容,问题就解决了,但为了清楚起见,我想将注释作为属性包含在内,因为它代表了访问后的医生评论。

问题

我怎样才能包含"评论"作为Oracle数据库表中的一列?

1 个答案:

答案 0 :(得分:3)

表格没有属性,它们有列。

你可以这样做,我建议你三思而后行。

要做到这一点,请运行

create table examine
 (doctorID int ,
 admissionNum int ,
 "COMMENT" varchar2(100),
 unique (doctorID, admissionNum));

注意我必须为你修复一些拼写错误,你不能拥有vercher或varchar长度(00) - 你也应该在Oracle中使用VARCHAR2。

当它被引用时,你可以绕过保留字,但这会导致比它解决的问题更多的问题。而是考虑将其重命名为COMM,COMMENTS或非保留字。