微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

sql – 操作数类型冲突:int与日期不兼容INSERT语句与FOREIGN KEY约束冲突

create table pilot (
emp_num int,pl_license varchar (3),pl_ratings varchar (30),pl_med_type int,pl_med_date date,pl_pt135_date date,constraint PK_pilot primary key (emp_num)
)

insert into pilot(emp_num,pl_license,pl_ratings,pl_med_type,pl_med_date,pl_pt135_date)
values (101,'ATP','SEL/MEL/instr/CFII',1,12-4-2005,15-6-2005)
insert into pilot(emp_num,pl_pt135_date)
values (104,'SEL/MEL/instr',10-5-2005,23-3-2006)
insert into pilot(emp_num,pl_pt135_date)
values (105,'COM','SEL/MEL/instr/CFI',2,25-2-2006,12-2-2005)
insert into pilot(emp_num,pl_pt135_date)
values (106,02-4-2006,24-12-2005)
insert into pilot(emp_num,pl_pt135_date)
      values (109,14-4-2006,21-4-2006)

我的问题是每个插入都有一个错误

Operand type clash: int is incompatible with date

如何解决这个问题?

在这里

create table employee (
emp_num int,constraint PK_employee primary key (emp_num),foreign key(emp_num) references pilot(emp_num),emp_title varchar (4),emp_lname varchar (20),emp_fname varchar (30),emp_initial varchar (2),emp_dob date,emp_hire_date date,)
insert into employee(emp_num,emp_title,emp_lname,emp_fname,emp_initial,emp_dob,emp_hire_date)
values (100,'Mr.','Kolmycz','George','D',15-5-1942,15-3-1987)
insert into employee(emp_num,emp_hire_date)
values (101,'Ms.','Lewis','Rhonda','G',19-3-1965,25-4-1988)
insert into employee(emp_num,emp_hire_date)
values (102,'Vandam','Rhett',' ',14-11-1958,20-12-1992)
insert into employee(emp_num,emp_hire_date)
values (103,'Jones','Anne','M',16-10-1974,28-8-2005)
insert into employee(emp_num,emp_hire_date)
values (104,'Lange','John','P',08-11-1971,20-10-1996)
insert into employee(emp_num,emp_hire_date)
values (105,'williams','Robert',14-3-1975,08-1-2006)
insert into employee(emp_num,emp_hire_date)
values (106,'Mrs.','Duzak','Jeanine','K',12-2-1968,05-1-1991)
insert into employee(emp_num,emp_hire_date)
values (107,'Diante','Jorge',21-8-1974,emp_hire_date)
values (108,'Wlesenbach','Paul','R',14-2-1966,18-11-1994)
insert into employee(emp_num,emp_hire_date)
values (109,'Travis','Elizabeth',18-6-1961,14-4-1991)
insert into employee(emp_num,emp_hire_date)
values (110,'Genkazi','Leighla','W',19-5-1970,01-12-1992)

Msg 547,Level 16,State 0,Line 1
The INSERT statement conflicted with the FOREIGN KEY constraint “FK__crew__emp_num__0F975522”. The conflict occurred in database “melisa”,table “dbo.employee”,column ’emp_num’. error on
this table

create table earndrating(
emp_num int,constraint PK_earndarating primary key(emp_num,rtg_code),rtg_code varchar(6),foreign key (emp_num) references pilot(emp_num),foreign key(rtg_code) references rating(rtg_code),earningth_date varchar(20),)
    insert into earndrating(emp_num,rtg_code,earningth_date)
    values(101,'CFI','18-Feb-98' )
    insert into earndrating(emp_num,'CFII','14-Dec-05' )
    insert into earndrating(emp_num,'INSTR','08-Nov-93' )
    insert into earndrating(emp_num,'MEL','23-Jun-94' )
    insert into earndrating(emp_num,'SEL','21-Apr-93' )
    insert into earndrating(emp_num,earningth_date)
    values(104,'14-Jul-96' )
    insert into earndrating(emp_num,'29-Jan-97' )
    insert into earndrating(emp_num,'12-Mar-95' )
    insert into earndrating(emp_num,earningth_date)
    values(105,'18-Nov-97' )
    insert into earndrating(emp_num,'17-Apr-95' )
    insert into earndrating(emp_num,'12-Aug-95' )
    insert into earndrating(emp_num,'23-Sep-94' )
    insert into earndrating(emp_num,earningth_date)
    values(106,'20-Dec-95' )
    insert into earndrating(emp_num,'02-Apr-95' )
    insert into earndrating(emp_num,'10-Mar-94' )
    insert into earndrating(emp_num,earningth_date)
    values(109,'05-Nov-98' )
    insert into earndrating(emp_num,'21-Jun-03' )
    insert into earndrating(emp_num,'23-Jul-96' )
    insert into earndrating(emp_num,'15-marc-97' )
    insert into earndrating(emp_num,'05-Feb-96' )
    insert into earndrating(emp_num,'SES','12-May-96' )

解决方法

这个表达式12-4-2005是一个计算的int,值为-1997.你应该这样做,而不是’2005-04-12’与’前后.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐