sql server 2005上机操作题。
一:创建数据库。
create database xxxx
二:创建表。
1.建立xs表。
create table xs
学号 char(7) not null,姓名 char(8) not null,性别 bit not null,出生日期 smalldatetime not null,班级 char(5),总学分 tinyint,备注 text,primary key(学号));
2.建立kc表。
create table kc
课程号 char(3) not null,课程名 char(20) not null,开课学期 tinyint not null,学时 tinyint not null,学分 tinyint not null,primary key(课程号));
3.建立xs_kc表。
create table xs_kc
学号 char(7) not null,课程号 char(3) not null,成绩 tinyint,学分 tinyint,primary key(学号,课程号),foreign key(学号) references xs(学号),foreign key(课程号) references kc(课程号));
三:修改表结构。
1. 修改学生情况表(xs)的“出生日期”字段,使其数据类型改为datetime,且允许为空。
alter table xs alter column 出生日期 datetime;
2. 删除学生与课程表(xs_kc)中的“学分”字段。
alter table xs_kc drop column 学分;
3. 修改学生情况表(xs),删除“班级”字段,增加一“专业”字段(varchar(20), 默认值为“计算机”)
alter table xs drop column 班级。
alter table xs add 专业 varchar(20);
四:插入或修改数据。
insert into xs(学号,姓名,性别,出生日期,专业,总学分,备注)
values('4102101','王林','1','1983-1-23','计算机','40','
insert into xs(学号,姓名,性别,出生日期,专业,总学分,备注)
values('4102102','吴荣华','0','1984-3-28','计算机','44','
insert into xs(学号,姓名,性别,出生日期,专业,总学分,备注)
values('4202103','张强','1','1981-11-19','电子','
insert into xs(学号,姓名,性别,出生日期,专业,总学分,备注)
values('4202110','王向荣','1','1980-12-9','电子','50','
insert into xs(学号,姓名,性别,出生日期,专业,总学分,备注)
values('4202221','李丽','0','1982-7-30','电子','
insert into xs(学号,姓名,性别,出生日期,专业,总学分,备注)
values('4402130','刘明','1','1982-10-18','自控','38','
insert into xs(学号,姓名,性别,出生日期,专业,总学分,备注)
values('4402130','叶凡','1','1983-11-18','数学','46','转专业学习');
insert into kc(课程号,课程名,开课学期,学时,学分)
values('101','计算机基础','1','48','3');
insert into kc(课程号,课程名,开课学期,学时,学分)
values('102','c语言','2','80','5');
insert into kc(课程号,课程名,开课学期,学时,学分)
values('103','数据库','4','64','4');
insert into kc(课程号,课程名,开课学期,学时,学分)
values('201','离散数学','6','64','4');
insert into kc(课程号,课程名,开课学期,学时,学分)
values('202','计算机网络','7','64','4');
insert into kc(课程号,课程名,开课学期,学时,学分)
values('301','软件工程','6','64','4');
insert into xs_kc(学号,课程号,成绩)
values('4102101','101','80');
insert into xs_kc(学号,课程号,成绩)
values('4102101','102','89');
insert into xs_kc(学号,课程号,成绩)
values('4102101','103','78');
insert into xs_kc(学号,课程号,成绩)
values('4102102','101','57');
insert into xs_kc(学号,课程号,成绩)
values('4102102','102','67');
insert into xs_kc(学号,课程号,成绩)
values('4202103','103','90');
insert into xs_kc(学号,课程号,成绩)
values('4202110','101','85');
insert into xs_kc(学号,课程号,成绩)
values('4202110','102','91');
insert into xs_kc(学号,课程号,成绩)
values('4202221','101','69');
insert into xs_kc(学号,课程号,成绩)
values('4402130','101','78');
insert into xs_kc(学号,课程号,成绩)
values('4402130','103','74');
五:一)简单查询。
select *
from xs;
select 姓名,专业,总学分。
from xs;
select 学号 as num,姓名 as name,总学分 as mark
from xs;
4. select distinct 专业。
from xs;
select top 5 姓名,专业,总学分。
from xs;
select 学号,姓名,年龄=year(getdate())year(出生日期)
from xs;
select *
from xs
where 专业='计算机';
select 姓名专业。
from xs
where 出生日期 like '1979%';
select *
from xs
where 专业='计算机' or 专业='电子' or 专业='数学';
select *
from xs
where 姓名 like '张%' or 姓名 like'王%' or 姓名 like'李%';
select *
from xs
where 总学分 like '0';
select *
from xs
where 总学分 like '0' and 专业='计算机';
select *
from xs
order by 总学分 desc,学号;
select top 3 姓名,专业,年龄=year(getdate())year(出生日期)
from xs
order by 年龄;
二)数据汇总。
select **g(成绩)
from xs_kc
where 课程号='101';
select max(成绩) as '最高分',min(成绩) as '最低分'
from xs_kc
where 课程号='102';
select sum(成绩)
from xs_kc
where 学号='4102101';
select count(姓名)
from xs
where 专业='计算机';
select count(学号) as '人数'
from xs_kc
where 课程号=101;
select count(xs_kc.课程号)
from kc,xs_kc
where kc.课程号= xs_kc.课程号。
group by 课程名;
select count(专业)
from xs
group by 专业;
select 专业,性别,count(*)as '人数'
from xs
group by 专业,性别。
with rollup;
select xs_kc.学号,姓名,**g(成绩) as '平均成绩'
from xs_kc,xs
where xs.学号=xs_kc.学号。
group by xs_kc.学号,姓名。
select 学号,count(*)as '成绩高于80分的门数'
from xs_kc
where 成绩 >=80
group by 学号。
h**ing count(*)2;
三)连接查询。
select xs.学号,姓名,专业,kc.课程号,成绩。
from xs,kc,xs_kc
where xs.学号=xs_kc.学号 and kc.课程号=xs_kc.课程号;
select 姓名,成绩。
from xs,xs_kc
where xs.学号=xs_kc.学号 and 课程号='101';
select xs.学号,姓名,成绩。
from xs,kc,xs_kc
where xs.学号=xs_kc.学号 and kc.课程号=xs_kc.课程号。
and 专业='计算机' and 课程名='计算机基础';
select xs.*,成绩。
from xs left join xs_kc on (xs.学号=xs_kc.学号 and 课程号='101');
SQL作业
客户号客户名称联系人地址邮政编码 客户。产品号。客户号。订单号。订购日期。订购单。产品名称规格说明单价。产品。订单号序号产品号数量。产品。图1订单管理数据库。查询客户表中的所有记录 从订购单表中查询客户号信息 哪些客户有订购单 查询单价在x元以上 含 的产品信息。查询单价在x元以上 不含 的某产品 ...
SQL作业
sql server数据库。实验报告。罗洁思编写。班级 汽车服务工程 2 班 姓名 康俊伟 学号 0908082217 厦门理工学院机械工程系。实验一活期储蓄管理系统数据库设计。一 实验目的。1 掌握概念模型 关系模型和关系数据库的概念 2 掌握概念模型的设计方法 3 掌握关系模型的设计。二 实验内...
SQL作业
一 学生 课程 选修数据库。单表。1 检索学习课程号为0911的学生的学号和成绩。2 统计选修了课程号为0911的学生的人数。3 检索每个学生的出生年份,输出学生姓名和出生年份。4 检索选修课程号为0912或者0911的学生的学号。5 检索18 20岁的姓王的同学的学生姓名。6 检索学习课程中包含了...