【发布时间】:2010-05-19 02:26:57
【问题描述】:
我有以下架构:
数据库:测试。 表:per_login_user,字段:用户名(PK),密码
数据库:wavinet。 表:login_user,字段:用户名(PK),密码
我想做的是创建一个触发器。每当数据库test 中表per_login_user 上的password 字段更新时,相同的值将被复制到数据库login_user 中表login_user 中的字段passwordwavinet
我通过谷歌搜索并找到了这个解决方案:http://forums.devshed.com/ms-sql-development-95/use-trigger-to-update-data-in-another-db-149985.html
但是,当我运行这个查询时:
CREATE TRIGGER trgPasswordUpdater ON dbo.per_login_user
FOR UPDATE
AS
UPDATE wavinet.dbo.login_user
SET password = I.password
FROM inserted I
INNER JOIN
deleted D
ON I.username = D.username
WHERE wavinet.dbo.login_wavinet.password = D.password
查询返回错误信息:
Msg 107, Level 16, State 3, Procedure trgPasswordUpdater, Line 4
The column prefix 'wavinet.dbo.login_wavinet' does not match with a table name or alias name used in the query.
【问题讨论】:
标签: sql-server triggers