位置: 编程技术 - 正文

在SQL触发器或存储过程中获取在程序登录的用户(在sql server中触发器不具有什么类型)

编辑:rootadmin
实现一个AuditLog的功能,是B/S结构专案。 每个用户可以登录系统,在程序中操作数据(添加,更新和删除)需要实现记录操作跟踪。是谁添加,更新和删除的,这些信息将会插入至AuditLog表中。 一般情况之下,在SQL的触发器中,只能取到(SQL验证sa;Windows验证Domainxxx)。这些用户名,达不到效果,不能真正反映到是谁操作的。 下面是让你清楚,怎样实现在SQL触发器或存储过程中获取在程序登录的用户,是在插入,更新或删除的存储过程,把登录程序当前用户传入进去。在存储过程中,再把相关信息存入局部(#)临时表中,这样子,在触发器即可获取了。 下面代码示例,以一个[Member]表作例,可以参详: 插入存储过程: 更新存储过程: 删除存储过程: 从上面的存储过程,用户相关的信息(应用程序的用户信息)已经在存储过程中存入临时表中,接下来,在触发器,怎样获取呢。可以参考下面的触发器代码: 插入触发器: 更新触发器: 删除触发器: 每段代码,有注释。 此问题有在某论坛发表让网友讨论过,但是效果不佳。如果你有另外见解,可以在讨论。谢谢。

推荐整理分享在SQL触发器或存储过程中获取在程序登录的用户(在sql server中触发器不具有什么类型),希望有所帮助,仅作参考,欢迎阅读内容。

在SQL触发器或存储过程中获取在程序登录的用户(在sql server中触发器不具有什么类型)

文章相关热门搜索词:sql触发器怎么给出提示,sqlserver触发器调用存储过程,sql触发器和存储过程,sql中的触发器是一种什么机制,sql中的触发器是一种什么机制,在sql server中触发器不具有什么类型,sql触发器针对语句,sql触发器和存储过程,内容如对您有帮助,希望把文章链接给更多的朋友!

EXEC(EXECUTE)函数访问INSERTED或DELETED的内部临时触发表 刚开始时,这个表的字段很少(个以内),前开发者把这个表的所有存储过程与触发器以及表函数全是写死了。用户每添加一些字段,都需要手动去

一次性压缩Sqlserver中所有库日志的存储过程 有没有办法更快一点?有没有办法一次性收缩所有数据库?alterdatabase数据库名setrecoverysimplegodbccshrinkdatabase(数据库名)goalterdatabase数据库名setrecoveryfullgo

SQL优化基础 使用索引(一个小例子) 按照本文操作和体会,会对sql优化有个基本最简单的了解,其他深入还需要更多资料和实践的学习:1.建表:createtablesite_user(idintIDENTITY(1,1)PRIMARYKEY,[name]v

本文链接地址:https://www.jiuchutong.com/biancheng/348510.html 转载请保留说明!

上一篇:判断字段是否被更新 新旧数据写入Audit Log表中(判断某个字段的值是否在指定的范围内)

下一篇:EXEC(EXECUTE)函数访问INSERTED或DELETED的内部临时触发表(execve函数)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络