当前位置: 首页 > wzjs >正文

义乌微信网站建设费用营销策划36计

义乌微信网站建设费用,营销策划36计,网站一直没收录,怎么选择手机网站建设在 SQL Server 中,触发器是一种特殊类型的存储过程,它会在特定事件发生时自动执行。触发器主要分为以下几种类型: DML 触发器(Data Manipulation Language Triggers)DDL 触发器(Data Definition Language …

在 SQL Server 中,触发器是一种特殊类型的存储过程,它会在特定事件发生时自动执行。触发器主要分为以下几种类型:

  1. DML 触发器(Data Manipulation Language Triggers)
  2. DDL 触发器(Data Definition Language Triggers)
  3. 登录触发器(Logon Triggers)

1. DML 触发器

DML 触发器用于响应数据操作语言(INSERT、UPDATE、DELETE)语句。这些触发器可以定义在表或视图上。

示例:创建一个 AFTER INSERT 触发器

sql

-- 创建一个示例表
CREATE TABLE Employees (EmployeeID INT IDENTITY(1,1) PRIMARY KEY,Name NVARCHAR(100),Position NVARCHAR(100)
);
GO-- 创建一个审计表
CREATE TABLE EmployeeAudit (AuditID INT IDENTITY(1,1) PRIMARY KEY,EmployeeID INT,Name NVARCHAR(100),Position NVARCHAR(100),ActionTime DATETIME DEFAULT GETDATE()
);
GO-- 创建一个 AFTER INSERT 触发器
CREATE TRIGGER trgAfterInsert
ON Employees
AFTER INSERT
AS
BEGINSET NOCOUNT ON;INSERT INTO EmployeeAudit (EmployeeID, Name, Position)SELECT EmployeeID, Name, PositionFROM inserted;
END;
GO-- 测试触发器
INSERT INTO Employees (Name, Position) VALUES ('John Doe', 'Developer');
SELECT * FROM EmployeeAudit;

2. DDL 触发器

DDL 触发器用于响应数据定义语言(CREATE、ALTER、DROP)语句。它们可以定义在数据库级别或服务器级别,用于捕获和处理数据库对象的更改。

示例:创建一个数据库级别的 DDL 触发器

sql

-- 创建一个审计表
CREATE TABLE DDL_Audit (AuditID INT IDENTITY(1,1) PRIMARY KEY,EventType NVARCHAR(100),ObjectName NVARCHAR(256),EventTime DATETIME DEFAULT GETDATE(),LoginName NVARCHAR(256)
);
GO-- 创建一个数据库级别的 DDL 触发器
CREATE TRIGGER trgDatabaseDDL
ON DATABASE
FOR CREATE_TABLE, ALTER_TABLE, DROP_TABLE
AS
BEGINSET NOCOUNT ON;DECLARE @EventData XML;SET @EventData = EVENTDATA();INSERT INTO DDL_Audit (EventType, ObjectName, EventTime, LoginName)VALUES (@EventData.value('(/EVENT_INSTANCE/EventType)[1]', 'NVARCHAR(100)'),@EventData.value('(/EVENT_INSTANCE/ObjectName)[1]', 'NVARCHAR(256)'),GETDATE(),@EventData.value('(/EVENT_INSTANCE/LoginName)[1]', 'NVARCHAR(256)'));
END;
GO-- 测试触发器
CREATE TABLE TestTable (ID INT);
ALTER TABLE TestTable ADD Name NVARCHAR(100);
DROP TABLE TestTable;SELECT * FROM DDL_Audit;

3. 登录触发器

登录触发器是在用户尝试连接到 SQL Server 实例时触发的。它们通常用于控制登录行为或记录登录活动。

示例:创建一个登录触发器

sql

-- 创建一个审计表
CREATE TABLE LogonAudit (AuditID INT IDENTITY(1,1) PRIMARY KEY,LoginName NVARCHAR(256),LoginTime DATETIME DEFAULT GETDATE(),ClientHost NVARCHAR(256)
);
GO-- 创建一个登录触发器
CREATE TRIGGER trgLogon
ON ALL SERVER
FOR LOGON
AS
BEGINSET NOCOUNT ON;INSERT INTO master.dbo.LogonAudit (LoginName, LoginTime, ClientHost)VALUES (ORIGINAL_LOGIN(), GETDATE(), HOST_NAME());
END;
GO-- 测试触发器
-- 注销并重新登录,然后检查审计表
SELECT * FROM master.dbo.LogonAudit;

总结

  • DML 触发器:用于响应 INSERT、UPDATE 和 DELETE 操作,可以定义在表或视图上。
  • DDL 触发器:用于响应 CREATE、ALTER 和 DROP 操作,可以定义在数据库级别或服务器级别。
  • 登录触发器:用于响应用户登录事件,可以定义在服务器级别。

通过使用这些不同类型的触发器,你可以在 SQL Server 中实现复杂的业务逻辑、审计和安全控制。

http://www.dtcms.com/wzjs/581522.html

相关文章:

  • 怎么在一个网站做多个页面计算机培训机构哪个最好
  • 一个网站包括wordpress加群插件下载
  • 十堰做网站网络营销哪家正规公司
  • 制作企业网站公司排名渝北集团网站建设
  • 东莞模板建站平台目前上海有几个区
  • 自己做自营网站建筑设计公司注册
  • 微信公众号的跳转网站怎么做微信公众平台注册不了
  • 做视频的素材网站广州seo工资
  • 天河网站建设价格wordpress文章默认标题
  • iis6网站域名自己建网站数据怎么做
  • 和林格尔网站制作设计软件图标
  • 扁平风网站wordpress 安装变下载
  • 江西省工程建设信息官方网站joomla 网站建设教程
  • 小型网站开发开题报告范文线上渠道推广
  • 怎么建立自己的网站平台多少钱网站的布局有哪些
  • 十大最佳摄影网站淄博网站电子商城平台建设
  • 都匀市住房和城乡建设局网站谷歌浏览器手机版下载
  • 网站文章伪原创怎么做亚马逊网站 如何做站内seo
  • 如何刷网站访问量贵州城乡建设网站
  • 深圳制作网站推荐直播网站怎么建设
  • 公司做网站需要哪些手续券优惠网站如何做
  • 免费注册自助网站个人网站的域名注册
  • frontpage做的网站好不好网页设计图片
  • 江门网站建设兼职wordpress简单的工单提交
  • 一次备案多个网站wordpress 嵌套插件
  • 建网站花费电商设计师招聘
  • 邯郸网站建设代理济南建设工程信息网官网
  • 视频网站建设的背景简介如东网站开发
  • 林州网站建设哪家便宜凡科网代理商登录
  • 成都网站建设 小兵h5网站制作价格