sql-server-2008 - 在计算列上使用触发器时从字符串转换日期和/或时间时转换失败
问题描述
桌子
create table book_issue_return_details(
issue_id int primary key identity(1,1),
issued_date date,
return_date date,
for_days as datediff(day, return_date, issued_date) persisted,
penalty int,
payed int,
balance AS (penalty-payed) PERSISTED);
扳机
create trigger trforinsertpenalty
on book_issue_return_details
after insert
as
begin
declare @value int
select @value=for_days from book_issue_return_details;
update book_issue_return_details
set penalty=case
when for_days<'8' then 0
when for_days='8' then 10
when for_days='15' then 20
when for_days='30' then 30
when for_days>'30' then 100
end
end
插入语句
insert into book_issue_return_details(
issued_date,
return_date,
payed)
values
('16-05-2018','17-05-2018',0),
('07-05-2018','17-05-2018',0),
('01-05-2018','17-05-2018',0),
('17-05-2018','17-05-2018',0),
('01-04-2018','17-05-2018',0);
错误
消息 241,级别 16,状态 1,第 1 行从字符串转换日期和/或时间时转换失败。
解决方案
只需尝试以下插入语句..它对我有用。
insert into book_issue_return_details(issued_date,return_date, payed)
values('16-May-2018','17-May-2018',0),
('07-May-2018','17-May-2018',0),
('01-May-2018','17-May-2018',0),
('17-May-2018','17-May-2018',0),
('01-Apr-2018','17-May-2018',0);
推荐阅读
- pandas - 为什么我的应用程序不能以 pandas_udf 和 PySpark+Flask 开头?
- uwp - UWP MapControl 点击/单击事件未触发
- ios - 如何在闭包中访问类的变量?
- javascript - 将字符串附加到 Service Worker 中的用户代理
- javascript - Express.js,mysql,按一个属性分隔数据项
- javascript - 如何在 Puppeteer 中选择要在其上滚动的 DOM 元素
- sql - 提高 UPDATE WHERE sql 查询的性能
- c++ - 使用 lambda 将可变参数转发给线程
- syntax - 是否有一些语法糖可以在深度嵌套的选项和结果链上进行匹配?
- c# - 统一依赖错误 - 确保控制器有一个无参数的公共构造函数