|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
事实上,在任何DBaaS中,解决方案提供商对如何管理物理资源都没有控制权,因此MySQL学习教程可能会发现由于DBaaS的局限性使得他们提供给客户的远远小于客户所期望的。
--我们有一个table以下,必要跟踪修正对该表的insert/update/delete操纵:
createtabletestMonitor(c1int,c2char(10))
--创立的帮助表以下:
createtabletempLog_testMonitor(
rowIDbigintidentity(1,1),
hostnamenchar(128),
program_namenchar(128),
nt_domainnchar(128),
nt_usernamenchar(128),
net_addressnchar(12),
loginamenchar(128),
login_timedatetime,
EventTypenvarchar(30),
parametersint,
EventInfonvarchar(255)
)
--创立的trigger以下:
createtriggertrg_testMonitor
ontestMonitor
forinsert,update,delete
as
begin
declare@hostnamenchar(128)
declare@program_namenchar(128)
declare@nt_domainnchar(128)
declare@nt_usernamenchar(128)
declare@net_addressnchar(12)
declare@loginamenchar(128)
declare@login_timedatetime
declare@rowIDbigint
insertintotempLog_testMonitor(EventType,parameters,EventInfo)
exec(dbccinputbuffer(@@spid))
select@rowID=scope_identity()
select@hostname=hostname,
@program_name=program_name,
@nt_domain=nt_domain,
@nt_username=nt_username,
@net_address=net_address,
@loginame=loginame,
@login_time=login_time
frommaster..sysprocesseswherespid=@@spid
updatetempLog_testMonitorset
hostname=@hostname,
program_name=@program_name,
nt_domain=@nt_domain,
nt_username=@nt_username,
net_address=@net_address,
loginame=@loginame,
login_time=@login_time
whererowID=@rowID
end
--假如我们实行以下的语句:
insertintotestmonitorvalues(1,aaa)
updatetestmonitorsetc2=bbb
deletefromtestmonitor
--您再查询帮助表,就可以看到对表修正的相干信息:
select*fromtempLog_testMonitor
对免费版的用户也具有充足的支持服务。在dev.mysql.com上,一个大型的MySQL学习教程强大社区用户和开发者可以讨论所有关于MySQL的事情。这个站点拥有博客、指南、视频、技术交流会、白皮书和论坛等方式的交流。 |
|