所以我有这个代码和两个简单的表1-GGroup 2-时间表
这是它们的代码:
CREATE TABLE GGroup(
ClassRoom varchar(7),
GroupNum number(5),
C_Code varchar(6),
C_Name varchar(35), Field
Teacher varchar(30),
primary key (ClassRoom)
);
CREATE TABLE TimeTable(
ClassRoom varchar(7),
StudentID number(9),
FirstName varchar(30),
LastName varchar(30),
primary key(ClassRoom, StudentID),
foreign key(ClassRoom) references GGroup(ClassRoom)
);
而且我已经用np在表GGroup中插入了行!
但是现在我正在尝试插入这一行
insert into GGroup values (
'A/3/54',
1608,
'ISM223',
'Data Warehouse & Data Mining',
'Dr. Yasser Al-Mshhor'
);
我得到了这个错误:
ORA-00001:唯一约束
(SQL_XAKKMDKZQBPBDDQFTDEXENGDH.SYS_C0025290829)违反了ORA-06512: at "SYS.DBMS“_SQL",第1721行
我想这是因为我之前插入的这行:
insert into GGroup values (
'A/3/54',
1608,
'ISM223',
'Data Warehouse & Data Mining',
'Dr. Yasser Al-Mshhor'
);
我怎么才能解决这个问题呢?我对sql了解不多
发布于 2020-02-27 21:22:13
表格GGroup
定义列ClassRoom
作为主键。这明确禁止此列中存在重复项。您的代码失败,因为您正在尝试使用ClassRoom
'A/3/54'
,而tabe中已存在该列中具有相同值的另一条记录。
可能的选项:
ClassRoom
将新插入的记录中的值设置为表中尚不存在的值https://stackoverflow.com/questions/60434122
复制相似问题