update table,inserted set fld1=getDate() where table.id=inserted.id
你试一试。
解决方案 »
- Replace替换问题。帮忙看下吧。
- 求一条高效的sql合并语句
- 这个sql怎么改正
- 真怪,有一个存贮过程,在查询分析器中右键,编辑,总是 create proc,修改后也不是 alter proc,这是为什么呀?
- 用命令行启动SQL服务问题
- 关于存储过程的问题
- 请问一个sql问题,比较急,烦请大侠解救
- 去年写过的一篇论文,没想到竟然获奖了,嘿嘿,高兴,散分~~~
- 我想把SQLSERVER2000完全备份到已映射网络上的一个硬盘上,请问该怎么备份,好像看不到盘符啊,,
- 如何在sql server中存mp3???望大虾们帮忙!!!存储后又如何读出哪(在cbuilder中)?
- 高分求解一個奇怪問題!
- 关于jion的小问
WHERE name = 'tr_table1_insert' AND type = 'TR')
DROP TRIGGER tr_table1_insert
GO
CREATE TRIGGER tr_table1_insert
ON dbo.table1
FOR INSERT
AS
UPDATE table1 SET fld1 = getdate()
GO
吧fld1字段缺省设为getdate()
用触发器:
create trigger t_insert on table1
for insert
update table1 set fld1=getdate() where fld1 is null
go注意插入数据的时候,fd1不要赋值
=========
我不能修改表的结构
IF EXISTS (SELECT 1 FROM sysobjects
WHERE name = 'tr_table1_insert' AND type = 'TR')
DROP TRIGGER tr_table1_insert
GO
CREATE TRIGGER tr_table1_insert
ON dbo.table1
FOR INSERT
AS
UPDATE a SET fld1 = getdate() FROM table1 a,INSERTED b WHERE a.id = b.id
GO--你不需要用出发器就可以实现:
INSERT table1(col1,col2,fld1,..) SELECT 1,2,getdate(),..
=====================用 Inserted 来处理是不是更加安全呢
好。
ON dbo.test
FOR INSERT
AS
update test set col2=getdate() where col1 = (select col1 from inserted)
====这个是我参考了大家的意见然后用inserted做的
这里请问下:inserted表中可能同时存在2条记录吗?
CREATE TRIGGER tr_table1_insert
ON dbo.test
FOR INSERT
AS
update test set col2=getdate() where col1 in (select col1 from inserted)
insert table1 (fld1) values(getdate())
for insert
as
update table1 set fld1=getdate()
from table1 a join inserted b on a.主键=b.主键
go