用Orale代碼建表時,出現
SQL> comment on column SCORE.cno
2 is '學號(外鍵)';
comment on column SCORE.cno
is '學號(外鍵)'
ORA-04044: 此處不允許過程, 函數, 程序包或類型
SQL> comment on column SCORE.cname
2 is '課程號(外鍵)';
comment on column SCORE.cname
is '課程號(外鍵)'
ORA-04044: 此處不允許過程, 函數, 程序包或類型
SQL> comment on column SCORE.tno
2 is '成績';
comment on column SCORE.tno
is '成績'
ORA-04044: 此處不允許過程, 函數, 程序包或類型
SQL> alter table SCORE
2 add constraint PK_SCORE primary key (SNO,CNO);
alter table SCORE
add constraint PK_SCORE primary key (SNO,CNO)
ORA-00942: 表或視圖不存在
解決:
看代碼有沒有寫錯,比如列名,標點英文的逗號和分號。建表時,每一列結束用逗號,每一個階段結束用分號。分號在oracle相當於生活中句號。
比如student主鍵sno沒建成功,任何與主鍵sno有關的外鍵就不會建成功。主鍵沒成功可能是因為學號sno的序號數字有重復。