sql - 如果我无法在sql中插入表,如何解决主键问题?
问题描述
如果我无法插入到 sql PLUS 中的表中,如何解决主键问题?我的意思是我需要添加更多列
CREATE TABLE SETS (
2 ID NUMBER (4) CONSTRAINT SETS_PK PRIMARY KEY,
3 COM NUMBER (7,2),
4 ENAME VARCHAR2(15),
5 SAL NUMBER(8,2)
6* );
INSERT INTO SETS VALUES (1, 1, 'COMFORT', 0);
插入 1 行。
INSERT INTO SETS VALUES (1, 2, ''Progressive', 5000);
Error starting at line : 1 in command -
insert into sets values(1, 2, 'Progressive', 5000)
Error report -
ORA-00001: нарушено ограничение уникальности (AIDAR.SETS_PK)
解决方案
因为您已将 id 声明为主键,所以它对于每一行都是唯一的
INSERT INTO SETS VALUES (1, 1, 'COMFORT', 0);
INSERT INTO SETS VALUES (2, 2, 'Progressive', 5000);
但是您为两行提供了相同的 id,这就是它引发错误的原因。顺便说一句,我已经编辑了第二行的值,它现在可以工作了
推荐阅读
- excel - 刽子手游戏在步进模式下运行良好,但在正常模式下延迟使形状可见
- azure-maps - 将响应从 REST API 传递到 AzureMap Control SDK
- kentico - 无法成功应用/运行 Kentico 修补程序 12.0.29
- docker - kubernetes 使用 docker 本地镜像创建部署 - 镜像拉取失败
- tensorflow - 训练期间损失率突然增加
- python - 使用 NumPy 枚举大数据列
- google-maps-api-3 - Mootools 打破谷歌地图街景 - 黑屏
- python-2.6 - 生成随机日期/时间 Python 2.6
- php - 联系表格 7 注册表的功能
- java - Java 中的 lambda 表达式 ClassCastException