当前位置:数据库 > SQLServer >>

帮忙写一个简单的mssql触发

同一数据库下有表 a 和表 b .表a和表b都有id 和name 字段 表a的id是可以重复出现的.表b里的是唯一的. 如何才能让表a每添一行新数据(表a里的id是通过程序录入的)然后表a的name就从表b里提取相同id的name自动添上呢? 希望给个完整的触发脚本做参考.谢谢了.我这里共15个积分.全部奉上了.
答案:昨天你另外一个题说的不明白,这回的问题说明白了,应该用instead of触发器,假设name字段长度是50
create  trigger tg_a_insert
on a
instead of insert
as
declare @name varchar(50)--跟name字段长度相同
select @name=b.name
from inserted,b
where inserted.id=b.id

insert into a(id,name)
select id,@name
from inserted
其他:create trigger ss
on a 
for insert 
as 
begin 
insert into b(name) values('aa')--此处的aa是你在a中插入的name的值
end 这个不用触发器吧?
和添加ID写在同一个存储过程里就行了.
SET name= (SELECT  NAME FROM B WEHRE ID=@ID) 

上一个:mssql 表中的有些行,不能修改或删除.
下一个:如何升级一套ASP+Access程序到ASP+MSSQL啊?

Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,