create table TCS_Employee
(
Emp_name varchar(30),
Emp_id int identity(1,1)primary key,
Emp_Sal money not null,
Joining_data date,
login_date datetime,
Domain varchar not null
)
insert into TCS_Employee
(Emp_name,Emp_Sal,Joining_data,login_date,domain) values
('Varsha',50000,2015-01-05,GETDATE(),'retail')
请帮助解决以下错误
错误消息206,级别16,状态2,行1
操作数类型碰撞:int与日期不兼容
答案 0 :(得分:1)
日期需要在引号中,否则将其视为整数。
将2015-01-05
更改为'2015-01-05'
此外,您应设置为domain
列的长度(如Domain varchar(50) not null
或w / e长度适合您的需要)。
省略长度是一种不好的做法,可能会产生意想不到的结果,因为不同的数据库默认长度不同,有些长度是强制性的(我相信它适用于MySQL)。
答案 1 :(得分:0)
2015-01-05
实际上是执行减法的算术运算,因此结果是int,而不是有效的日期格式。
使用:'2015-01-05'
答案 2 :(得分:0)
我认为你错过了报价:
INSERT INTO TCS_Employee
(Emp_name, Emp_Sal, Joining_data, login_date, domain)
VALUES
('Varsha',50000,'2015-01-05',GETDATE(),'retail');