第1部分:应用场景
根据我上篇文章《sql server中如何通过约束限制某个表的某个字段不允许为空字符串》所述,不得不通过约束限制某个字段不允许空字符,相比之下,该篇文章的做法更好,更方便,但是在此之前,我是通过触发器限制的,虽然准备弃用这个方案,但是依然做个记录。
第2部分:解决方案
--模板
CREATE TRIGGER [dbo].[触发器名称] ON [dbo].[表名称]
FOR insert ,update
AS
Declare @Count int
select @Count =count(1) from inserted where ISNULL(要限制不为空字符的字段,'')=''
if @Count > 0
begin
rollback tran
RAISERROR ('数据插入出现异常,请重试!', 16, 1)
end
GO
--以下为实例
CREATE TRIGGER [dbo].[tr_Tbldelivery_NoNullString] ON [dbo].[tblDelivery]
FOR insert ,update
AS
Declare @Count int
select @Count =count(1) from inserted where ISNULL(DeliveryNo,'')=''
if @Count > 0
begin
rollback tran
RAISERROR ('数据插入出现异常,请重试!', 16, 1)
end
GO
© 版权声明
THE END
暂无评论内容