问下sql server2005中触发器生成不了的问题

jichangchun2008 2009-03-18 04:36:50
我在两台同为windows2003的机器上生成同样表的触发器一台正确一台不行?问下是怎么回事,触发器代码如下:
USE [testdb]
GO
/****** Object: Trigger [dbo].[DELETE_N_test007] Script Date: 03/18/2009 16:34:41 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


ALTER TRIGGER [dbo].[DELETE_N_test007]
ON [dbo].[test007]
FOR DELETE
AS
declare
@loginame varchar(20)
select @loginame=UPPER(loginame) from master.dbo.sysprocesses where spid=@@SPID
if @loginame='SYSDATA'
return
insert into t_db_change
select 'dbo.test007','char1',char1,null,null,null,null,null,null,null,null,getdate(),2,1,'n_test007' from deleted
...全文
43 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
-狙击手- 2009-03-18
  • 打赏
  • 举报
回复
t_db_change 重复记录 ?

dawugui 2009-03-18
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 happyflystone 的回复:]
SQL codeif upper(@loginame)='SYSDATA'
return
[/Quote]

哦,对,上次小梁也说,SQL 2005区分大小写,你按照1楼的改改试试.

怎么我装的SQL 2005不区分大小写?你们装的时候更改了什么设置?
水族杰纶 2009-03-18
  • 打赏
  • 举报
回复
1.權限是否足夠
2.所有者是否正確
htl258_Tony 2009-03-18
  • 打赏
  • 举报
回复
不行是什么提示呢?
-狙击手- 2009-03-18
  • 打赏
  • 举报
回复
不好意思 ,忽略一楼回复
dawugui 2009-03-18
  • 打赏
  • 举报
回复
一个行一个不行?

用户权限不够?
-狙击手- 2009-03-18
  • 打赏
  • 举报
回复
if upper(@loginame)='SYSDATA' 
return

27,579

社区成员

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

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