比如我数据库有一个表 table 有字段 a 数字型。我想当数据库如果存在a大于100的数值的时候就提示我。方式可以是发邮件,或者插入到我建的日志表中。请问用什么方法可以快速实现。
解决方案 »
- 执行计划不准确
- 求一条SQL 昨天面试没写出来
- 去掉已有的排序 想得到没有的排序
- 分组查询,每组产品取一条最大的记录!!
- 这个列转行该如何实现?
- SQL 索引生成
- SQL server2005远程连接一直没有解决,期盼
- sql server老手看过来:如何更改数据库的逻辑名字。
- 当我改变计算机名后SQL无法启动请问在不重装的前提下如何启动SQL?
- 救命啊!!!!!!!!!!!!! 这个 sql 语句怎么写??? 哪位高手知道???? >>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>
- SQL大数据量查询太耗时解决办法-求教。
- sqlserver查询多行并一行
IF OBJECT_ID('[ta]') IS NOT NULL DROP TABLE [ta]
GO
CREATE TABLE [ta]([id] INT,[name] VARCHAR(1))
GO
IF OBJECT_ID('[tb_log]') IS NOT NULL DROP TABLE [tb_log]
GO
CREATE TABLE [tb_log](id INT ,date datetime)
GO
IF OBJECT_ID('tt') IS NOT NULL DROP TRIGGER tt
GO
CREATE TRIGGER tt ON ta
INSTEAD OF INSERT,UPDATE
AS
BEGIN
IF EXISTS(SELECT 1 FROM INSERTED WHERE id>100)
INSERT INTO tb_log SELECT INSERTED.id,GETDATE() FROM INSERTED
ELSE
INSERT INTO ta SELECT* FROM INSERTED
END
GOINSERT [ta] SELECT 1,'a'
INSERT [ta] SELECT 101,'b'
SELECT * FROM ta
SELECT * FROM tb_log
INSTEAD OF INSERT,UPDATE
AS
BEGIN
IF EXISTS(SELECT 1 FROM INSERTED WHERE id>100)
INSERT INTO tb_log SELECT INSERTED.id,GETDATE() FROM INSERTED
ELSE
INSERT INTO ta SELECT* FROM INSERTED
END
GO