[英]Foreign key insertion error SQL Developer
I have tried applying the foreign key in many ways, but I am getting the same error when inserting a row to my table which is: 我尝试了多种方式应用外键,但是在表中插入一行时却遇到了相同的错误:
INSERT INTO MEDICINE
VALUES (50, 'PREDNISONE', '8 BOTTLES', 'N',
TO_DATE('12-MAR-2019','DD-MON-YYYY'),
TO_DATE('09-JAN-2016','DD-MON-YYYY'), 2);
I have created my table in many ways: 我已经以多种方式创建了表格:
CREATE TABLE MEDICINE
(
M_ID NUMBER PRIMARY KEY,
M_NAME VARCHAR2(50),
QUANTITY NUMBER,
OTC VARCHAR2(1),
EXPR DATE,
LAST_AUDIT DATE,
PT_ID NUMBER,
CONSTRAINT fk_MED FOREIGN KEY (PT_ID)
REFERENCES PHARM_TECH(PT_ID)
);
I've also tried: 我也尝试过:
CREATE TABLE MEDICINE
(
M_ID NUMBER PRIMARY KEY,
M_NAME VARCHAR2(50),
QUANTITY NUMBER,
OTC VARCHAR2(1),
EXPR DATE,
LAST_AUDIT DATE,
PT_ID NUMBER
);
ALTER TABLE MEDICINE
ADD FOREIGN KEY (PT_ID)
REFERENCES PHARM_TECH(PT_ID);
I've also attempted: 我也尝试过:
CREATE TABLE MEDICINE
(
M_ID NUMBER PRIMARY KEY,
M_NAME VARCHAR2(50),
QUANTITY NUMBER,
OTC VARCHAR2(1),
EXPR DATE,
LAST_AUDIT DATE,
PT_ID NUMBER REFERENCES PHARM_TECH(PT_ID)
);
These all run fine and creates the table without issues, however, I keep receiving this error when inserting the row above: 这些都运行良好,并且创建了没有问题的表,但是,在插入上面的行时,我一直收到此错误:
Error report -
错误报告 -
SQL Error: ORA-01722: invalid numberSQL错误:ORA-01722:无效的数字
01722. 00000 - "invalid number"01722. 00000-“无效编号”
*Cause: The specified number was invalid.*原因:指定的号码无效。
*Action: Specify a valid number.*操作:指定一个有效数字。
What's causing this? 是什么原因造成的?
You cannot insert the value '8 BOTTLES' into column QUANTITY. 您不能将值“ 8瓶”插入QUANTITY列中。 The data type is Number not varchar.
数据类型为Number而不是varchar。 try 8 or try changing the datatype of column Quantity to varchar2
尝试8或尝试将“数量”列的数据类型更改为varchar2
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.