用sqlsever定义一个触发器,为student表定义完整性规则“插入学生的信息时,性别只能为M或者F,如果输入除了MF之外的性别,则自动改为“M” (1) 第一步创建触发器trigger_work1 (2) 第二步向student表中插入('95010','小郭','R',19,'IS')和('95011','小李','F',19,'IS') (3) 第三步查看表student插入后的结果
时间: 2023-08-14 16:04:15 浏览: 186
以下是实现你的要求的 SQL Server 触发器的步骤:
1. 创建触发器 trigger_work1:
```sql
CREATE TRIGGER trigger_work1
ON student
FOR INSERT
AS
BEGIN
SET NOCOUNT ON;
UPDATE student
SET ssex = 'M'
WHERE ssex != 'M' AND ssex != 'F';
END;
```
2. 向 student 表中插入两行数据:
```sql
INSERT INTO student (sno, sname, ssex, sage, sdept)
VALUES ('95010', '小郭', 'R', 19, 'IS');
INSERT INTO student (sno, sname, ssex, sage, sdept)
VALUES ('95011', '小李', 'F', 19, 'IS');
```
3. 查看 student 表插入后的结果:
可以使用以下语句查看 student 表中的数据:
```sql
SELECT * FROM student;
```
如果触发器成功执行,第一行插入的数据中的 `ssex` 应该被更新为 `M`。
如果触发器执行失败,可以使用以下语句查看触发器报错的信息:
```sql
SELECT *
FROM sys.messages
WHERE message_id = 50000;
```
其中,`50000` 是触发器中使用的自定义错误号,可根据实际情况进行修改。
阅读全文