网站导航网学 原创论文 原创专题 网站设计 最新系统 原创论文 论文降重 发表论文 论文发表 UI设计定制 论文答辩PPT格式排版 期刊发表 论文专题
返回网学首页
网学原创论文
最新论文 推荐专题 热门论文 论文专题
当前位置: 网学 > 交易代码 > SQL语法 > 正文

创建部门员工表

论文降重修改服务、格式排版等 获取论文 论文降重及排版 论文发表 相关服务

--
--3.8.2节示例
--

--创建部门员工表
CREATE TABLE Department
(
 DepartmentID int IDENTITY PRIMARY KEY,
 DepartmentName nvarchar(20) NOT NULL,
 EmployeeCount int NOT NULL DEFAULT(0)
)
GO
INSERT INTO Department(DepartmentName)
VALUES('财务部')
GO
CREATE TABLE Employee
(
 EmployeeID int IDENTITY PRIMARY KEY,
 EmployeeName nvarchar(10) NOT NULL,
 DepartmentID int NOT NULL FOREIGN KEY REFERENCES Department(DepartmentID)
)

--
--3.8.3节示例
--

--创建触发器
CREATE TRIGGER UpdateDepartment_EmployeeCount
ON Employee
AFTER INSERT,DELETE
AS
IF(EXISTS(SELECT * FROM inserted)) --执行的是插入操作
BEGIN
 UPDATE Department
 SET EmployeeCount=EmployeeCount+1 --插入操作则对应部门的员工数+1
 WHERE DepartmentID=(SELECT DepartmentID FROM inserted)
END
IF(EXISTS(SELECT * FROM deleted)) --执行的是删除操作
BEGIN
 UPDATE Department
 SET EmployeeCount=EmployeeCount-1 --删除操作则对应部门的员工数-1
 WHERE DepartmentID=(SELECT DepartmentID FROM deleted)
END

--验证触发器是否生效
SELECT * FROM Department --初始情况下财务部的员工数为0
INSERT INTO Employee
VALUES(N'何欢',1) --插入1名财务部的员工
INSERT INTO  Employee
VALUES(N’晏婉’,1) --再插入1名财务部的员工
SELECT * FROM Department --现在财务部的员工数为2
DELETE FROM Employee --删除1名财务部的员工
WHERE EmployeeName=N'何欢'
SELECT * FROM Department --现在财务部的员工数为1

DROP TRIGGER UpdateDepartment_EmployeeCount
--
--3.8.4节示例
--

DISABLE TRIGGER UpdateDepartment_EmployeeCount --禁用触发器
ON dbo.Employee

DISABLE TRIGGER ALL ON dbo.Employee

ENABLE TRIGGER UpdateDepartment_EmployeeCount --启用触发器
ON dbo.Employee
 

  • 上一篇资讯: SQL编码规范样例
  • 下一篇资讯: 创建标量值UDF
  • 设为首页 | 加入收藏 | 网学首页 | 原创论文 | 计算机原创
    版权所有 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2020 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号 常年法律顾问:王律师