2.创建一个更新触发器trigTno,该触发器防止用户修改表Teacher中的工号,若修改了提示错误信息“不能修改工号”,并回浪事务。 3.在教师表的教师名字段上建立非聚索引DX _Tname. 4.创建一个规则rulel: 变量@xb的取值范围是(,男,女),并将该规则绑定到 教师表(teacher) 的性别(tsex) 列上(绑定规则的存储过程是sp_ bindrule)。 5. 使用T-sQL语句建一 -个视图teacherview,定义为所有任课老师的工号和姓名
时间: 2024-03-01 13:52:45 浏览: 37
2. 以下是创建更新触发器trigTno的Transact-SQL语句,实现防止用户修改表Teacher中的工号:
```
CREATE TRIGGER trigTno
ON Teacher
INSTEAD OF UPDATE
AS
BEGIN
IF EXISTS (SELECT * FROM inserted WHERE TNo <> deleted.TNo)
BEGIN
RAISERROR('不能修改工号', 16, 1)
ROLLBACK TRANSACTION
RETURN
END
UPDATE Teacher
SET TName = inserted.TName,
FNo = inserted.FNo,
Tsex = inserted.Tsex
FROM Teacher
INNER JOIN inserted ON Teacher.TNo = inserted.TNo
END
```
触发器trigTno是一个INSTEAD OF UPDATE类型的触发器,当用户尝试修改表Teacher中的工号时,如果新工号和原工号不相同时,触发器会抛出一个"不能修改工号"的错误,并回滚事务,阻止修改操作。
3. 以下是创建非聚集索引DX_Tname的Transact-SQL语句,将其应用于教师表的教师名字段上:
```
CREATE NONCLUSTERED INDEX DX_Tname
ON Teacher(TName)
```
这条语句创建了一个名为DX_Tname的非聚集索引,将其应用于Teacher表的TName字段上,可以加快该字段上的查询速度。
4. 以下是创建规则rule1,并将其绑定到教师表的Tsex列上:
```
CREATE RULE rule1
AS
@xb IN ('', '男', '女')
EXEC sp_bindrule 'rule1', 'teacher.Tsex'
```
这条语句首先创建了一个名为rule1的规则,规定变量@xb的取值范围为(空字符串),"男"和"女"。然后,使用sp_bindrule存储过程将该规则绑定到Teacher表的Tsex列上。
5. 以下是创建视图teacherview的Transact-SQL语句,用于显示所有任课老师的工号和姓名:
```
CREATE VIEW teacherview
AS
SELECT DISTINCT TNo, TName
FROM Lesson
JOIN Teacher ON Lesson.TNo = Teacher.TNo
```
这条语句创建了一个名为teacherview的视图,使用了Lesson和Teacher表的JOIN操作,查询出所有任课老师的工号和姓名,去除重复的记录后返回结果。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)