2012SQL server考试试题(A
一、选择题(每小题1分,共20分)。
1、若欲从学员表中提取数据填充到通讯表中,如下SQL语句:
    Insert into Tongxunlu(‘姓名’,’地址’,’’)
    Select Sname SAddress,Semail
    From Students
    执行后输出的结果可能是( C )。
A、 向表Tongxunlu中添加了多条信息;
B、 显示出错信息,错误的原因是into应该大写;
C、 显示出错信息,错误的原因是姓名,地址,两侧不应该有‘号;
D、 显示出错信息,insert into 语句应该在selectfrom中间;
2、在SQL server 2008中,设计用户表时,固定长度的身份证号最好采用下面( A )数据类型进行存储。
    AChar            BText            CVarchar            DInt
3、在SQL server 2008中,学生表student中包含字段:学生编号sid(主键),学生姓名SaName。成绩表score包含字段:课程编号cid,学生编号sid(外键),学生成绩score;其中学生表包含10行数据,成绩表包含6行记录(且sid列没有重复值),那么执行sql语句:select*from student left outer join score on student.sid=score.sid,将返回( C )条记录。
    A0              B6              C10                D16
4、在SQL server 2008中提供了一些字符串函数,以下说法错误的是( B )。
    Aselect right(‘hello‘,3)返回值为:llo
    Bselect trim(‘hello‘)返回值为:hello(前后都无空格);
    Cselect replace(‘hello‘,’e‘,’o‘)返回值为:hollo
    Dselect ltrimrtrim(‘hello‘))hello(前后都无空格);
5、在SQL server2008中,假定grade(成绩)表中包含字段:sID(学号)cID(班级编号) lang(语文课成绩)math(数学课成绩),那么计算所有学生人数和各科最高成绩的SQL语句是( A )。
    Aselect count*),maxlang),maxmathfrom grade
    Bselect count*),maxlang),maxmathfrom grade group by sID
    Cselect sum*),maxlang),maxmathfrom grade group by sID
    Dselect sum*),maxlang),maxmathfrom grade
6、在SQL server 2008中,当要处理学生表中name(学生姓名)列所有姓“王”的记录时,在SQL语句中where子句的写法应该是( C )。
    Awhere name=‘王%                Bwhere name like ’王*
    Cwhere name like ‘王%            Dwhere name like*%
7、在SQL server 2008中,使用update语句更新数据表中的数据,以下说法正确的是( B )。
    A、每次只能更新一行语句;               
B、每次可以更新多行语句;
    C、如果没有数据项被更新,将提示错误信息
D、更新数据时,必须带有where条件子句;
8、在SQL server 2008中,创建一个名为“Customers”的新表,同时要求新表中包含“clients”的所有记录,spl语句是( A )。
    Aselect*into Customers from clients
    Bselect into Customers from clients
    Cinsert into Customers select*from clients
    Dinsert  Customers select*from clients
9、在SQL server 2008中,要查eatables表中item_desc字段的值以“CHOCO”开头(如CHOCOLATECHOCOPIE)的所有记录。下列SQL语句正确的是( C )。
    Aselect*from eatables where item_desc likeCHOCO”;
    Bselect*from eatables where item_desc =CHOCO”;
    Cselect*from eatables where item_desc likeCHOCO%”;
    Dselect*from eatables where item_desc like%CHOCO?”;
10、在SQL server 2008中,有一个product(产品)表,包含字段:pname(产品名称),要从此表中筛选出产品名称为“苹果”或“香蕉”的记录,下列语句正确的是( C )。
    Aselect *from product on pname=“苹果”or pname=“香蕉”;
Bselect *from product on pname=“苹果”and pname=“香蕉”;
Cselect *from product where pname=“苹果”or pname=“香蕉”;
Dselect *from product where pname=“苹果”and pname=“香蕉”;
11、SQL server 2008中,有students(学生表),包含字段:SID(学号),SName(姓名),Grade(成绩)。先要将所有的学生成绩加10分,以下SQL语句正确的是( D )。
A、update students set Grade=Grade+10 where SID=1;
B、update * set Grade=Grade+10;
C、update * from students set Grade=Grade+10;
D、update students set Grade=Grade+10;
12、假设关系数据库中一个表S的结构为SSNCNgrade),其中SN为学生姓名,C
N为课程名,二者均为字符型;grade为成绩,数值型,取值范围0--100。若要把“张二的化学成绩80分”插入到S中,则可用( D )。
A、add into S values('张二','化学','80')
Binsert into S values('张二','化学','80')
Cadd into S values('张二','化学',80)
Dinsert into S values('张二','化学',80)
13、SQL server 2008中,假设表users包含主键列id,那么执行“update users set id=20 where id=30”后的结果是( C )。
A、如果表中含有id30的记录,但不包含id20的记录,则更新失败;
B、执行错误,因为主键列不可以被更新;
C、如果表中同时含有id20id30的记录,则更新失败;
D、如果表中不包含id20id30的记录,则更新一行记录;
14、SQL server 2008中,有语句“update members set Salary=Salary+300”,下列表述正确的是( A )。
A、members表中工资都增加300      B、删除工资为300的记录
C、查询工资为300的记录              D、修改members工资都扣除300
15、在SQL server 2008中,有students(学生表),包含字段:SID(学号),SName(姓名),Grade(成绩)。先要将所有的学生成绩加10分,以下SQL语句正确的是( D )。
Aupdate students set Grade=Grade+10 where SID=1;
Bupdate * set Grade=Grade+10;
Cupdate * from students set Grade=Grade+10;
Dupdate students set Grade=Grade+10;
16、在SQL server2008中,假定grade(成绩)表中包含字段:cID(班级编号) lang(语文课成绩)math(数学课成绩)eng(英语成绩),那么计算不同班级每门课程的平均成绩的SQL语句是( D )。
    Aselect cidavglangmatheng),from grade group by langmatheng
    Bselect cidavglangavgmathavgeng),from grade group by langmatheng     Cselect cidavglang  math  eng),from grade group by cid
    Dselect cidavglangavgmathavgeng),from grade group by cid
17、SQL server2008中,假定grade(成绩)表中包含字段:sid(学号),lang(语文成绩)。那么列出语文成绩在80分到90分的学生的SQL语句是(insert语句字段顺序 C )。
A、select*from grade where lang in80,90);
Bselect*from grade having lang in80,90);
Cselect*from grade where lang between80and90
Dselect*from grade having lang between80and90
18、SQL server2008中,执行如下的SQL语句:select*from item as a left join ordredetails as b on a.icode=b.itemcod,将返回( C )。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。