为课程表添加约束使课程名不能重复
1. 主键和外键约束的问题。有三个表,成绩表,课程表和成绩表。外键是某个表的主键吗。
你这里的课程编号就是课程号吧。
学号是学生表的主键、课程编号是课程表的主键回、学号答和课程号是成绩表的主键,学号是成绩表的外键,课程号是成绩表的外键。
学号是成绩表的外键,成绩表的学号的有效取值是学生表里的学号决定的,而外键通常是另外一个表的主键,课程号以此类推即可。
2. 用transact-sql建立课程表(课程号、课程名。、学历)其中课程号为关键字,课程号不允许为空
use xuankegocreate table Course(cno char(10) not null default '01',cname varchar(40) not null default '课程名',credit tinyint null default 0)go
3. “定义了课程号为外码,其参照表为课程表,该外码对应课程表中的课程号的约束”
如果你创建了在B表格中某个字段的FK的约束,就能够让A表中对应的字段PK的约束影响到B表格中FK的约束。
4. 怎么用SQL_UPDATE命令将课程表中课程名为计算机基础的学时修改为4。
update 课程表 set 学时=4 where 课程名='计算机基础'
5. 使用sql语句将课程表的课程名字段长度改为6
alter table 课程表 alter column 课程名字 varchar(6)
6. 怎么用sql语句查询课程表中的最高课时以及课程名称
select top 1 课时, 课程名称 from 课程表
order by 课时 desc
7. 为选课表增加成绩必须大于0的约束用T-SQL语言如何编写
ALTER TABLE 表明
ADD CHECK (字段名>0)
8. 怎样使用sql语句将课程表的课程名字段长度改为6
alter table <表名> alter column <字段名> 新类型名(长度)
9. 用T-SQL语句完成下列题目。在名称为“教学库”的数据库中有三个表学生表,课程表和成绩表它们的定义如下
1
select b.课程名,isnull(count(*),0)
from 课程表 a,成绩表 b on a.课程号回=b.课程号
group by b.课程名答
2
select a.姓名,b.课程名,c.成绩 from 学生表 a,课程表 b,成绩表 c
where a.学号=c.学号 and b.课程号=c.课程号
and a.性别='女' and b.课程名='计算机基础'
3
这个,你自己添加数据就好啦
4
update 课程表 set 学分=学分+1 where 课程号='001'
5
select * from 课程表 where 课程名 like '计算机%'
10. SQL创建学生表(Student)、课程表(Course)、班级表(Class)、选课表(XK),写对的我可以奖励QB
一个student表student表包含复三个字段的学制生的ID(stu_id)学生姓名(stu_name),当然ID(les_id)
“CREATE TABLE [dbo的]。学生(/ stu_id。的uniqueidentifier] NOT NULL,
stu_name [数据类型为nvarchar](425)NOT NULL,
les_id [为uniqueidentifier] NOT NULL
)
第二个表中的课程课,有两个字段,当然的ID(les_id)的和课程名称(les_name)
CREATE TABLE [dbo的课(
les_id的uniqueidentifier] NOT NULL,
les_name [数据类型为nvarchar](425)NOT NULL
)< /第三个表,学生表的分数,三场场ID(les_id)的学生证(stu_id)和课程成绩(les_score)
创建表[DBO]。分数(
les_id的uniqueidentifier] NULL,
stu_id的唯一标识符NOT NULL,
les_score [INT] NOT NULL
)