在teaching数据库中,利用T-SQL创建事务向表course中插入2条记录('c06148','平面设计','必修','64','4','3')、(('c06140','动画设计基础','必修','64','4','5'))。
时间: 2023-08-20 08:34:53 浏览: 73
好的,以下是在Teaching数据库中,利用T-SQL创建事务向表course中插入2条记录的代码:
```
BEGIN TRANSACTION
INSERT INTO course (course_id, course_name, course_type, hours, credits, semester)
VALUES ('c06148', '平面设计', '必修', 64, 4, 3)
INSERT INTO course (course_id, course_name, course_type, hours, credits, semester)
VALUES ('c06140', '动画设计基础', '必修', 64, 4, 5)
COMMIT TRANSACTION
```
这段代码使用了 BEGIN TRANSACTION 和 COMMIT TRANSACTION 来创建了一个事务,并且使用 INSERT INTO 语句向表 course 中插入了两条记录。注意,如果在插入过程中出现了任何错误,事务会自动回滚,保证数据库的完整性。
相关问题
在teaching数据库中利用T-SQL语句创建一个视图V_teacher,查询每个教师的教师号、姓名、专业、职称及所属学院。
可以使用以下 T-SQL 语句创建视图 V_teacher:
```sql
CREATE VIEW V_teacher AS
SELECT T.teacher_id, T.teacher_name, T.major, T.title, C.college_name
FROM teacher AS T
INNER JOIN college AS C ON T.college_id = C.college_id;
```
这个视图查询了教师表和学院表,并通过教师表中的学院 ID 关联学院表,获取每个教师的所属学院名称。通过这个视图,你可以方便地查询每个教师的完整信息,而不需要手动关联两个表。
用SQL sever完成以下任务(1)利用SQL Server Management Studio将teaching数据库中score表的courseno列设置为引用表course的外键; (2)在teaching数据库中class表的classname创建UNIQUE约束; (3)为teaching数据库中student表的birthday列创建check约束,规定学生的年龄在17~25之间,为course表的credit列创建check约束,规定学分的取值范围为1~6,删除check约束; (4)为teaching数据库创建规则prof_rule,规定教师职称取值只能为”助教”、“讲师”、“副教授”、“教授”,并将其绑定到teacher表的Prof列,删除创建的规则。
我可以回答这个问题。
(1) ALTER TABLE score ADD CONSTRAINT FK_score_course FOREIGN KEY (courseno) REFERENCES course(courseno);
(2) ALTER TABLE class ADD CONSTRAINT UQ_class_classname UNIQUE (classname);
(3) ALTER TABLE student ADD CONSTRAINT CK_student_birthday CHECK (DATEDIFF(year, birthday, GETDATE()) BETWEEN 17 AND 25);
ALTER TABLE course ADD CONSTRAINT CK_course_credit CHECK (credit BETWEEN 1 AND 6);
ALTER TABLE course DROP CONSTRAINT CK_course_credit;
(4) CREATE RULE prof_rule AS @Prof IN ('助教', '讲师', '副教授', '教授');
EXEC sp_bindrule 'prof_rule', 'teacher.Prof';
DROP RULE prof_rule;
阅读全文