mysql数据库面试题带答案(一)

一、选择题

1.MySQL是一个(C)的数据库系统。
(A) 网状型(B)层次型(C)关系型(D)以上都不是

2.根据关系数据基于的数据模型——关系模型的特征判断下列正确的一项:(B)
A、只存在一对多的实体关系,以图形方式来表示。
B、以二维表格结构来保存数据,在关系表中不允许有重复行存在。
C、能体现一对多、多对多的关系,但不能体现一对一的关系。
D、关系模型数据库是数据库发展的最初阶段。

3.数据库系统由数据库、硬件和什么等组成?(D)
A:操作系统 B:文件系统 C:编译系统 D:数据库管理系统

4.所谓观念模型,指的是什么?( D)
A:客观存在的事物及其相互联系
B:将信息世界中的信息数据化
C:实体模型在计算机中的数据化表示
D:现实世界到机器世界的一个中间层次,即信息世界

5.数据库系统不仅包括数据库本身,还要包括相应的硬件,软件和什么?( D)
A:数据库管理系统 B:数据库应用系统
C:相关的计算机系统 D:各类相关人员

6.数据库系统软件包括DBMS和什么?( D )
A:数据库 B:高级语言 C:OS D:数据库应用系统和开发工具

7.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从部门到员工的联系类型是什么?(D )
A:多对多 B:一对一 C:多对一 D:一对多

8.数据库是在计算机系统中按照一定的数据模型组织、结构化的什么?( B)
A:文件的集合 B:数据的集合 C:命令的集合 D:程序的集合

9.SQL语言是什么语言?©
A:层次数据库 B:网络数据库 C:关系数据库 D:非数据库

10.SQL语言称为(C)。
A、结构化定义语言B、结构化控制语言
C、结构化查询语言D、结构化操纵语言。

11.一辆汽车由多个零部件组成,且相同的零部件可适用于不同型号的汽车,则汽车实体集与零部件实体集之间的联系是:D
A.1:1 B.1:M C.M:1 D.M:N

12.下列四项中说法不正确的是( C )
A.数据库减少了数据冗余
B.数据库中的数据可以共享
C.数据库避免了一切数据的重复
D.数据库具有较高的数据独立性

13.有关数据和信息的概念,下列叙述正确的是:A
A.数据是信息的载体 B.数据是信息的内涵
C.数据和信息互为载体 D.数据和信息相互独立

14.实体只用于表示:A
A.实际存在的事物 B.概念性的事物
C.事物与事物之间的联系 D.选项A、B、C都不对

15.从“实体一联系“模型到数据模型实际上经历了三个领域的演变过程,即:D
A.信息世界一现实世界一数据世界B.数据世界一信息世界一现实世界
C.现实世界一数据世界一信息世界D.现实世界一信息世界一数据世界·

16.一个班级有多个学生,每个学生只能属于一个班级,班级与学生之间是[B]
A.一对一的联系B.一对多的联系C.多对一的联系D.多对多的联系

17.每个教师可以教授多门课程,每门课程至少有两名教师任课,从课程到教师之间的联系类型是 A
A.多对多 B.一对一 C.多对一 D.一对多

18.DBMS指的是【A 】
A.数据库管理系统 B.数据库系统
C.数据库应用系统 D.数据库服务系统

19.E-R图所表示的实体及其联系,实际上是【D 】。
A.信息模型 B.数据模型 C.关系模型 D.实体联系模型

20.实体之间的联系方式有【B 】种。
A.1 B.3 C.4 D.2

21.在文件系统中,一张二维表称为一个【 B】,表头行称为记录型,表中其它各行称为【 】,而每一列中的各元素称为一个【 】。
A.记录,文件,数据项 B.文件,记录,数据项 C.记录,数据项,文件

二、操作题

1题:

1.现在要为学校建立一个数据库,设学校的环境如下:一个系有若干个专业,每个专业一年只招一个班,每个班有若干个学生,现要建立关于系、学生、班级的数据库,关系模式为:

学生表STUDENT(学号,姓名,性别,班号,生源地,出生日期)
班级表CLASS(系号,专业名,班号,入学年份)
系DEPARTMENT(系号,系名)

使用SQL语句完成一下功能:
1.建立数据库名为SCHOOL

create database school;

2.建表:在定义中声明
1)每个表要有主键
2)学生的性别默认取‘男’
3)学生姓名不能为空
4)表CLASS中建立外键系号,关联表DEPARTMENT中的系号
5)系名不能重复且不能为空

create table student(
学号 varchar(10) primary key,
姓名 varchar(10) not null,
性别 varchar(2) default ‘男’,
班号 varchar(10),
生源地 varchar(30),
出生日期 year
);

create table class(
系号 varchar(10) primary key,
专业名 varchar(10),
班号 varchar(10),
入学年份 year,
constraint FK_XI foreign key (系号) references department(系号)
);

create table department(
系号 varchar(10) primary key,
系名 varchar(10)
);

3.插入如下数据
CALSS(101,软件,02,2003;102,微电子,02,2004)

insert into class values("101","软件","02",2003),
("102","微电子","02",2004);

STUDENT(8101,张三,男,101,山东,1984;8102,钱四,女,121,济南,1984;8103,王玲,女,131,福建,1985;8105,李飞,男,102,河北,1985)

insert into student values
('8101','张三','男','101','山东',1984),
('8102','钱四','女','121','济南',1984),
('8103','王玲','女','131','福建',1985),
('8105','李飞','男','102','河北',1985);

DEPARTMENT(101,英语;102,计算机;103,数学;104,化学)

insert into department values("101","英语"),("102","计算机"),("103","数学"),("104","化学");

4.完成以下的查询功能
(1)通过对学生信息表的查询,查询出所有学生的学号,姓名和性别

select 学号,姓名,性别 from student;

(2)通过对学生信息表的查询,查询来自福建的学生的记录

select * from student where 生源地='福建';

(3)更新学号为8103的这位学生的姓名为张玲

update student set 姓名='张玲' where 学号='8103';

(4)删除姓名为李飞的学生记录

delete from student where 姓名='李飞';

(5)删除数据表STUDENT(把命令写出来即可,不用执行)

drop table student;

2题

2.创建一个员工表
字段 属性
id 整形(int) 主键
name 字符串(varchar)(长度为20) 唯一
gender 字符串(长度为2) 非空
birthday 日期型(date)
email 字符串(长度为10)
remark 字符串(长度为50)

create table yuangong(
id int primary key,
name varchar(20) unique,
gender varchar(2) not null,
birthday date,
email varchar(10),
remark varchar(50)
);

修改表练习
2.1 在员工表基础上增加age列

alter table yuangong add age int;

2.2 修改email列长度为50

alter table yuangong modify email varchar(50);

2.3 删除remark列

alter table yuangong drop remark;

2.4 列名name修改为username

alter table yuangong change name username varchar(20);

3题

一 .在数据库 school 中建立student , sc, course 表。
学生表、课程表、选课表属于数据库 School ,其各自的数据结构如下:
学生 Student (Sno,Sname,Ssex,Sage,Sdept)

序号 列名 含义 数据类型 长度
1 Sno 学号 字符型(char) 6
2 Sname 姓名 字符型(varchar) 8
3 Ssex 性别 字符型(char) 2
4 Sage 年龄 整数 (smallint)
5 sdept 系科 字符型(varchar) 15

课程表 course(Cno,Cname,Cpno,Ccredit)

序号 列名 含义 数据类型 长度
1 Cno 课程号 字符型(char) 4
2 cname 课程名 字符型(varchar) 20
3 Cpno 选修课 字符型(char) 4
4 Ccredit 学分 短整数 (tinyint)

学生选课 SC(Sno,Cno,Grade)

序号 列名 含义 数据类型 长度
1 Sno 学号 字符型(char) 6
2 Cno 课程号 字符型(char) 4
3 Grade 成绩 小数(decimal) 12,2

二 设定主码
1 Student表的主码:sno
2 Course表的主码:cno
3 Sc表的主码:sno,cno
1写出使用 Create Table 语句创建表 student , sc, course 的SQL语句

create table student(sno char(6) primary key,sname varchar(8),sage smallint,sdept varchar(15));
create table course(cno char(4) primary key,cname varchar(20),cpno char(4),ccredit tinyint);
create table sc(sno char(6),cno char(4),grade decimal(12,2),constraint PK_SC primary key(sno,cno));

2在student表中插入信息

学号 姓名 性别 年龄 系科
4001 赵茵 20 SX
4002 杨华 21 JSJ
insert into student values("4001","赵茵","男",20,"sx"),("4002","杨华","女",21,"jsj");

3.修改 0001 学生的系科为: JSJ

update student set sdept='jsj' where sno='4001';

4.把陈小明的年龄加1岁,性别改为女。

update student set sage=sage+1,ssex='女' where sname='赵茵';

5.删除所有 JSJ 系的男生

delete from student where sdept='jsj' and ssex='男';

猜你喜欢

转载自blog.csdn.net/yang_yang_heng/article/details/107497482