各位高手帮忙,触发器的问题

liq1979 2005-05-05 12:15:43
我创建了一个触发器如下:
CREATE TRIGGER smscount ON tbl_RecieveSM FOR INSERT
AS
IF UPPER(SUBSTRING(content,1,4)) = 'DMPX'
BEGIN
UPDATE Production SET Product_Vote = Product_Vote + 1
WHERE Product_ID = SUBSTRING(content,5,6)
END
go
出错提示 content 列名无效,content是tbl_RecieveSM中的字段,我换成tbl_RecieveSM.content,也抱错:“列前缀 'tbl_RecieveSM' 与查询中所用的表名或别名不匹配。”
请大家帮忙,100分
...全文
76 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
talantlee 2005-05-05
  • 打赏
  • 举报
回复
CREATE TRIGGER smscount ON tbl_RecieveSM FOR INSERT
AS
declare @a varchar(10)
select @a=Substring(Content,1,4) from Production
IF (UPPER(@a) = 'DMPX')
BEGIN
UPDATE Production SET Product_Vote = Product_Vote + 1
WHERE Product_ID = SUBSTRING(content,5,6)
END
go
qizhirui 2005-05-05
  • 打赏
  • 举报
回复
把你表tbl_RecieveSM与Production 的结构贴出来看看
pbsql 2005-05-05
  • 打赏
  • 举报
回复
CREATE TRIGGER smscount ON tbl_RecieveSM FOR INSERT
AS
UPDATE Production SET Product_Vote=Product_Vote+1
FROM inserted
WHERE Production.Product_ID=SUBSTRING(inserted.content,5,6)
and UPPER(SUBSTRING(inserted.content,1,4))='DMPX'
go
zjcxc 2005-05-05
  • 打赏
  • 举报
回复
CREATE TRIGGER smscount ON tbl_RecieveSM FOR INSERT
AS
UPDATE a SET Product_Vote=a.Product_Vote+1
FROM Production a,inserted i
where UPPER(SUBSTRING(i.content,1,4)) = 'DMPX'
and a.Product_ID=SUBSTRING(i.content,5,6)
GO

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧