mysql练习题和答案
mysql数据库考试试题及答案
![mysql数据库考试试题及答案](https://img.taocdn.com/s3/m/c98cfce5f021dd36a32d7375a417866fb94ac053.png)
mysql数据库考试试题及答案一、选择题(每题2分,共20分)1. MySQL数据库默认使用的端口号是多少?A. 3306B. 8080C. 80D. 21答案:A2. 下列哪个不是MySQL的数据类型?A. INTB. VARCHARC. DATED. BOOLEAN答案:D3. 在MySQL中,以下哪个命令用于创建数据库?A. CREATE TABLEB. CREATE DATABASEC. DROP DATABASED. ALTER DATABASE答案:B4. 如何在MySQL中查看当前所有数据库?A. SHOW DATABASES;B. LIST DATABASES;C. SELECT DATABASES;D. DISPLAY DATABASES;答案:A5. 在MySQL中,以下哪个语句用于删除表?A. DROP TABLEB. REMOVE TABLEC. DELETE TABLED. DESTROY TABLE答案:A6. 下列哪个不是MySQL的索引类型?A. PRIMARYB. UNIQUEC. INDEXD. FOREIGN答案:D7. 在MySQL中,使用哪个命令来查看表结构?A. DESCRIBE table_name;B. EXPLAIN table_name;C. SHOW table_name;D. SELECT table_name;答案:A8. 如何在MySQL中为表添加新列?A. ADD COLUMN column_name;B. INSERT COLUMN column_name;C. CREATE COLUMN column_name;D. APPEND COLUMN column_name;答案:A9. 在MySQL中,使用哪个命令来创建视图?A. CREATE VIEW view_name AS SELECT ...B. VIEW view_name AS SELECT ...C. DEFINE VIEW view_name AS SELECT ...D. CREATE SELECT view_name AS ...答案:A10. 下列哪个命令用于在MySQL中备份数据库?A. BACKUP DATABASEB. COPY DATABASEC. DUMP DATABASED. SAVE DATABASE答案:C二、填空题(每空1分,共10分)1. 在MySQL中,使用______语句可以创建新的表。
MySQL数据库考试试题及答案
![MySQL数据库考试试题及答案](https://img.taocdn.com/s3/m/42db87a76529647d272852f8.png)
专业:移动通信科目:MySQL数据库一、单项选择题1.以下聚合函数求数据总和的是( )A.MAXB.SUMC.COUNTD.AVG答案:B2.可以用( )来声明游标A.CREATE CURSORB.ALTER CURSORC.SET CURSORD.DECLARE CURSOR答案:D3.SELECT语句的完整语法较复杂,但至少包括的部分是( )A.仅SELECTB.SELECT,FROMC.SELECT,GROUPD.SELECT,INTO答案:B4.SQL语句中的条件用以下哪一项来表达( )A.THENB.WHILEC.WHERED.IF答案:C5.使用CREATE TABLE语句的( )子句,在创建基本表时可以启用全文本搜索A.FULLTEXTB.ENGINEC.FROMD.WHRER答案:A6.以下能够删除一列的是( )A.alter table emp remove addcolumnB.alter table emp drop column addcolumnC.alter table emp delete column addcolumnD.alter table emp delete addcolumn答案:B7.若要撤销数据库中已经存在的表S,可用()。
A.DELETE TABLE SB.DELETE SC.DROP SD.DROP TABLE S答案:D8.查找表结构用以下哪一项( )A.FINDB.SELETEC.ALTERD.DESC答案:D9.要得到最后一句SELECT查询到的总行数,可以使用的函数是( ) A.FOUND_ROWSB.LAST_ROWSC.ROW_COUNTD.LAST_INSERT_ID答案:A10.在视图上不能完成的操作是( )A.查询B.在视图上定义新的视图C.更新视图D.在视图上定义新的表答案:D11.UNIQUE惟一索引的作用是( )A.保证各行在该索引上的值都不得重复B.保证各行在该索引上的值不得为NULLC.保证参加惟一索引的各列,不得再参加其他的索引D.保证惟一索引不能被删除答案:A12.用于将事务处理写到数据库的命令是( )A.insertB.rollbackC.commitD.savepoint答案:C13.查找条件为:姓名不是NULL的记录( )A.WHERE NAME ! NULLB.WHERE NAME NOT NULLC.WHERE NAME IS NOT NULLD.WHERE NAME!=NULL答案:C14.主键的建立有( )种方法A.一B.四C.二D.三答案:D15.在视图上不能完成的操作是( )A.更新视图数据B.在视图上定义新的基本表C.在视图上定义新的视图D.查询答案:B16.在SQL语言中,子查询是()。
MySQL题库(552道)
![MySQL题库(552道)](https://img.taocdn.com/s3/m/8b58c0c9b4daa58da1114a64.png)
MySQL1、以下选项中,()用于描述数据在磁盘中如何存储。
——[单选题]A 外模式B 内模式C 概念模式D 以上答案都不正确正确答案:B2、以下选项描述错误的是()。
——[单选题]A 等值连接的关系需要具有数目相等且可比的属性组B 自然连接的结果是等值连接去除重复的属性组C 除法可看作是笛卡尔积的逆运算D 以上说法都不正确正确答案:D3、对于关系R和S来说,()表示属于S而不属于R的元组。
——[单选题]A R-SB S-RC R∪SD R∩S正确答案:B4、以下()在关系模型中表示属性的取值范围。
——[单选题]A 元组B 键C 属性D 域正确答案:D5、下列()不能称为实体。
——[单选题]A 班级B 手机C 图书D 姓名正确答案:D6、在数据库建模的过程中,E-R图属于()的产物。
——[单选题]A 物理模型B 逻辑模型C 概念模型D 以上答案都不正确正确答案:C7、下列()可以在命令提示符下停止MySQL服务器——[单选题]A net stopB net start mysqlC net stop mysqlD stop mysql正确答案:C8、以下选项中,不属于MySQL特点的是()。
——[单选题]A 界面良好B 跨平台C 体积小D 速度快正确答案:A9、MySQL数据库服务器的默认端口号是()。
——[单选题]A 80B 8080C 3306D 1433正确答案:C10、以下选项中,()面向数据库设计人员,描述数据的整体逻辑结构。
——[单选题]A 概念模式B 存储模式C 外模式D 以上答案都不正确正确答案:A11、以下模式之间的映像能体现逻辑独立性的是()。
——[单选题]A 外模式/内模式映像B 内模式/概念模式映像C 外模式/概念模式映像D 以上答案都不正确正确答案:C12、下面关于MySQL安装目录描述错误的是()。
——[单选题]A lib目录用于存储一系列的库文件B include目录用于存放一些头文件C bin目录用于存放一些课执行文件D 以上答案都不正确正确答案:D13、下面关于命令“mysqld --initialize-insecure”描述错误的是()。
mysql笔试题目及答案
![mysql笔试题目及答案](https://img.taocdn.com/s3/m/b23917692bf90242a8956bec0975f46527d3a72d.png)
mysql笔试题目及答案一、选择题1. 下列哪个不是MySQL的数据库对象?a. 表(Table)b. 视图(View)c. 索引(Index)d. 过程(Procedure)答案:d. 过程(Procedure)2. 下列哪种数据类型可以存储日期和时间?a. VARCHARb. INTc. DATETIMEd. FLOAT答案:c. DATETIME3. 在MySQL中,以下哪种连接方式返回两个表中的所有匹配行?a. INNER JOINb. LEFT JOINc. RIGHT JOINd. FULL OUTER JOIN答案:a. INNER JOIN4. 下列哪个命令可以删除表中的所有数据,但保留表结构?a. TRUNCATE TABLEb. DROP TABLEc. DELETE FROMd. REMOVAL TABLE答案:a. TRUNCATE TABLE5. MySQL中使用哪个关键字用于过滤SELECT语句的结果集?a. WHEREb. HAVINGc. FILTERd. GROUP BY答案:a. WHERE二、填空题1. 在MySQL中,用于创建数据库的命令是____。
答案:CREATE DATABASE2. 在MySQL中,用于查看表结构的命令是____。
答案:DESCRIBE TABLE3. 在MySQL中,用于插入一条新记录的命令是____。
答案:INSERT INTO4. 在MySQL中,表示所有列的通配符是____。
答案:*5. 在MySQL中,用于更新数据的命令是____。
答案:UPDATE三、简答题1. 请简要解释MySQL中的主键(Primary Key)约束。
答案:主键是用于唯一标识表中每一条记录的列或列组合。
它的值必须是唯一的且不能为空。
主键约束确保了数据的完整性和一致性,还可以提高查询效率。
2. 请简要解释MySQL中的事务(Transaction)的概念。
mysql试题及答案
![mysql试题及答案](https://img.taocdn.com/s3/m/b519c610ff4733687e21af45b307e87101f6f834.png)
mysql试题及答案一、选择题(每题2分,共20分)1. MySQL数据库默认的端口号是多少?A. 21B. 22C. 3306D. 80答案:C2. 在MySQL中,以下哪个命令用于创建数据库?A. CREATE DATABASEB. CREATE TABLEC. CREATE USERD. CREATE INDEX答案:A3. 如何在MySQL中选择所有的行和列?A. SELECT * FROM table_name;B. SELECT ALL FROM table_name;C. SELECT ALL table_name;D. SELECT table_name;答案:A4. 下列哪个选项不是MySQL的数据类型?A. INTB. DATEC. FLOATD. STRING答案:D5. 在MySQL中,如何删除一个数据库?A. DROP DATABASE database_name;B. DELETE DATABASE database_name;C. REMOVE DATABASE database_name;D. REMOVE database_name;答案:A6. 如何在MySQL中为一个表添加一个新列?A. ADD COLUMN column_name datatype;B. CREATE COLUMN column_name datatype;C. INSERT COLUMN column_name datatype;D. ADD NEW COLUMN column_name datatype;答案:A7. 在MySQL中,以下哪个命令用于删除表中的行?A. DELETE FROM table_name;B. REMOVE FROM table_name;C. DROP FROM table_name;D. REMOVE table_name;答案:A8. 如何在MySQL中更新表中的记录?A. UPDATE table_name SET column1=value1, column2=value2 WHERE condition;B. CHANGE table_name SET column1=value1, column2=value2 WHERE condition;C. MODIFY table_name SET column1=value1, column2=value2 WHERE condition;D. ALTER table_name SET column1=value1, column2=value2WHERE condition;答案:A9. MySQL中的事务是什么?A. 一系列原子性的SQL操作B. 单个SQL语句C. 一组数据D. 一个数据库答案:A10. 如何在MySQL中查看当前数据库的版本?A. SELECT VERSION();B. SHOW VERSION;C. VERSION();D. SHOW DATABASE VERSION;答案:A二、填空题(每题2分,共20分)1. MySQL的默认用户是________。
MySQL基础题库及答案
![MySQL基础题库及答案](https://img.taocdn.com/s3/m/52682fab846a561252d380eb6294dd88d0d23dc0.png)
MySql数据库基础题库及答案一、填空题1.数据库是按照某种数据结构对数据进行____、_____和______的容器。
组织、存储、管理2.结构化查询语言SQL 分为_______、_______、_______和________四种语言。
DDL、DML、DQL、DCL3.MySQL中常用的约束有_____、_____、_____、_____、_____。
主键、外键、唯一、默认、非空4.MySQL配置文件my.ini常用的参数选项组有_____、_____、_____。
[client]、[mysql]、[mysqld]5.MySQL字符序命名规则中:ci 表示_____、cs 表示_____、bin 表示_____。
大小写不敏感、大小写敏感、二进制编码值比较6.查看MySQL 字符集的命令是:___________________________。
show variables like 'character%’7.MySQL5.6默认支持的存储引擎是______。
InnoDB8.显示表结构的命令_________、_____________。
desc <table_name> 、show create table <table_name>9.查看全局系统变量的命令_________,查看当前会话系统变量的命令_________。
show global variables; show session variables;10.MySQL提供的数据类型包括:_____、_____、_____、_____和_____。
数值类型、字符串类型、日期类型、复合类型、二进制类型11.MySQL 支持两种复合数据类型:_____和_____。
enum枚举类型、set集合类型12.默认情况下,MySQL自增型字段的值从1开始递增,且步长为1,设置自增字段的语法:______。
<字段名> <数据类型> auto_increment13.创建表时,设置表的字符集语法格式:____________________。
MySQL练习题及答案
![MySQL练习题及答案](https://img.taocdn.com/s3/m/20be6f6630b765ce0508763231126edb6f1a769f.png)
MySQL练习题及答案答案见参考下列黄色标记一、下面所有题目中包括单选或多选1.若mysqlserver运转在linux系统上,那出访mysql服务器的客户端程序也必须运转在linux系统吗?a.就是2.mysql与其他关系型数据库(sqlserver/oracle)架构上最大的区别是?a.连接层3.mysql采用磁盘空间去存储下面哪些信息?a.server和client程序、其他lib库文件b.日志文件和状态文件c.数据库d.表格式(.frm)文件、数据文件、索引文件e.当内部临时表中少于掌控设置时,由内存表中形式转变为磁盘形式存储f.上面所有4.下面哪四种是mysql客户端程序的功能?a.创建、删除数据库b.创建、删除、修改表和索引b.sql层c.存储引擎层b.否c.采用shutdown命令停用服务器d.建立、管理用户e.表明replication状态信息f.使用startbackup命令来进行数据库二进制备份5.在mysql内部存有4种常用日志,哪种日志就是无法轻易cat或more文本查询日志内容?a.错误日志(error-log)b.二进制日志(bin-log)c.查阅日志(query-log)d.快查阅日志(slow-log)6.下面哪三种方式可以查看country表的存储引擎?a.showcreatetablecountry;b.showenginecountrystatus;;c.showtablestatuslike‘country’;d.selectenginefrominformation_schema.tabl eswheretable_name=’country’;e.selectenginefrominformation_schema.engineswheretable_name=’county’;7.在低mammalian、事务等场景下,mysql5.6数据库预设采用哪种存储惹来擎?a.myisam8.下面哪种场景无法使用index索引?a.select*fromcustomerwherecustomer_id=10;b.select*fromcus tomerwhereleft(last_name,4)=’smit’;c.select*fromcustomerwh erecustomer_namelike‘smit%’;d.select*fromcustomerwherecustomer_id=4orcustom er_id=7orcustomer_id=10;9.mysqlreplication复制中主-从是通过什么进行数据同步?a.redologb.binlogc.文件系统10.有关mysqldump备份特性中哪个就是不恰当的?a.就是逻辑备份,须要将表中结构和数据转换成sql语句b.mysql服务必须运转c.备份与恢复速度比物理备份快e.支持mysql所有存储引擎11.下面哪种方式不属于mysql常用索引类型?a.后缀索引b、函数索引c、唯一索引d聚集索引b.innodbc.memoryd.ndbcluster12.通过explain来分析sql语句,如下:explainselecta1.id,a2.rankfroma1,a2wherea1.id=a2.id;那从上面结果集中key列值信息分析最佳描述是”该sql语句实际利用到的索引”?a.是14.mysql主机和从机必须就是同一种类型的存储引擎表中?a.就是15.下面哪种工具可以很好用来监控mysql数据库?a.mysqlbackupb.monitorc.mysqlworkbenchd.sqlyog16.mysql中当被标记为删除标记且不再需要的undolog,用来回收b.否b.否undo页的线程就是指?a.purgethreadb.readthreadc.writethreadd.allofabove17.mysql5.6时间数据类型就是积极支持什么级别?a.分钟b.秒c.毫秒d.微秒18.mysql5.6复制为了缓解io吞吐量,仅记录所更改影响的行记录数据,binlog_row_image参数值设置为?a.minimalb.fullc.noblobd.statement19.mysql5.6复制支持多个sqlthread处理机制,是指对?a.整个mysql服务器b.不同db数据库c.不同tables表d.单个库20.以下哪些场景不适应环境于mysqlreplication激活?a.自动失灵接管b.支持读/写分离负载均衡c.最佳数据一致性d.异步复制。
大学mysql考试题及答案
![大学mysql考试题及答案](https://img.taocdn.com/s3/m/a91d2fa47d1cfad6195f312b3169a4517623e519.png)
大学mysql考试题及答案一、单项选择题(每题2分,共20分)1. MySQL数据库系统中,用于对数据进行查询操作的语句是:A. INSERTB. UPDATEC. DELETED. SELECT答案:D2. 在MySQL中,创建数据库的命令是:A. CREATE DATABASEB. NEW DATABASEC. BUILD DATABASED. START DATABASE答案:A3. 如果想要在MySQL中删除一个已经存在的数据表,应该使用哪个命令?A. REMOVE TABLEB. DELETE TABLEC. DROP TABLED. DESTROY TABLE答案:C4. MySQL中,用于添加数据到表中的语句是:A. INSERT INTOB. ADD INTOC. PUT INTOD. CREATE INTO答案:A5. 在MySQL中,哪个命令用于修改已存在的数据记录?A. UPDATEB. MODIFYC. CHANGED. ALTER答案:A6. 下列哪个不是MySQL的数据类型?A. INTB. VARCHARC. DATED. BOOLEAN答案:D7. 在MySQL中,用于删除数据库的命令是:A. DELETE DATABASEB. REMOVE DATABASEC. DROP DATABASED. DESTROY DATABASE答案:C8. MySQL中的事务具有哪些特性?(多选)A. 原子性B. 一致性C. 隔离性D. 持久性答案:ABCD9. 在MySQL中,哪个命令用于查询数据库中所有数据表的名称?A. SHOW TABLESB. LIST TABLESC. DISPLAY TABLESD. SELECT TABLES答案:A10. 如果想要在MySQL中查询某个表的结构,应该使用哪个命令?A. DESCRIBE table_nameB. EXPLAIN table_nameC. SHOW table_nameD. SELECT table_name答案:A二、多项选择题(每题3分,共15分)11. 在MySQL中,可以使用哪些方法来保证事务的原子性和一致性?(多选)A. 使用存储过程B. 使用事务控制语句C. 使用外键约束D. 使用触发器答案:BCD12. 下列哪些是MySQL支持的索引类型?(多选)A. PRIMARYB. UNIQUEC. INDEXD. FOREIGN KEY答案:ABC13. 在MySQL中,哪些操作可以导致事务的回滚?(多选)A. 执行ROLLBACK命令B. 违反外键约束C. 违反唯一性约束D. 执行COMMIT命令答案:ABC14. MySQL中,哪些因素会影响查询性能?(多选)A. 数据库设计B. 索引的使用C. 查询语句的编写D. 服务器硬件配置答案:ABCD15. 在MySQL中,哪些命令可以用于数据备份?(多选)A. BACKUPB. DUMPC. COPYD. EXPORT答案:BD三、简答题(每题10分,共20分)16. 请简述MySQL中主键和唯一索引的区别。
mysql笔试题目及答案
![mysql笔试题目及答案](https://img.taocdn.com/s3/m/4bf5f69888eb172ded630b1c59eef8c75ebf956e.png)
mysql笔试题目及答案一、选择题(每题2分,共20分)1. MySQL数据库默认的存储引擎是()。
A. InnoDBB. MyISAMC. MemoryD. Archive答案:B2. 下列哪个选项不是MySQL的索引类型?()A. B-TreeB. HashC. R-TreeD. Full-Text答案:B3. MySQL中,以下哪个函数用于获取当前时间?()A. NOW()B. CURDATE()C. CURTIME()D. DATE()答案:A4. 在MySQL中,以下哪个选项是正确的创建数据库的语法?()A. CREATE DATABASE database_name;B. CREATE DATABASE database_name COLLATE utf8_general_ci;C. CREATE TABLE database_name;D. CREATE DATABASE database_name IF NOT EXISTS;答案:D5. 在MySQL中,以下哪个选项是正确的创建表的语法?()A. CREATE TABLE table_name (column1 INT, column2 VARCHAR(10));B. CREATE TABLE table_name (column1 INT, column2 VARCHAR(10)) ENGINE=InnoDB;C. CREATE TABLE table_name (column1 INT, column2 VARCHAR(10)) CHARSET=utf8;D. CREATE TABLE table_name (column1 INT, column2 VARCHAR(10)) ENGINE=InnoDB CHARSET=utf8;答案:D6. MySQL中,以下哪个选项是正确的删除表的语法?()A. REMOVE TABLE table_name;B. DROP TABLE table_name;C. DELETE TABLE table_name;D. REMOVE table_name;答案:B7. 在MySQL中,以下哪个选项是正确的插入数据的语法?()A. INSERT INTO table_name (column1, column2) VALUES (value1, value2);B. INSERT INTO table_name VALUES (value1, value2);C. INSERT INTO table_name (column1, column2) SET value1,value2;D. INSERT INTO table_name SET (column1, value1), (column2, value2);答案:A8. 在MySQL中,以下哪个选项是正确的更新数据的语法?()A. UPDATE table_name SET column1 = value1, column2 = value2WHERE condition;B. UPDATE table_name SET column1 = value1 WHERE condition;C. UPDATE table_name SET column1 = value1, column2 = value2;D. UPDATE table_name column1 = value1, column2 = value2 WHERE condition;答案:A9. 在MySQL中,以下哪个选项是正确的查询数据的语法?()A. SELECT * FROM table_name WHERE condition;B. SELECT * FROM table_name;C. SELECT table_name WHERE condition;D. SELECT * FROM table_name WHERE condition LIMIT 10;答案:A10. 在MySQL中,以下哪个选项是正确的删除数据的语法?()A. DELETE FROM table_name WHERE condition;B. REMOVE FROM table_name WHERE condition;C. DELETE table_name WHERE condition;D. REMOVE table_name WHERE condition;答案:A二、填空题(每题3分,共15分)1. MySQL中,使用________函数可以获取当前日期。
mysql数据库考试试题及答案
![mysql数据库考试试题及答案](https://img.taocdn.com/s3/m/602e4ecbd1d233d4b14e852458fb770bf78a3bac.png)
mysql数据库考试试题及答案一、选择题(共10题,每题2分)1. 数据库是用来存储数据的______。
A. 软件B. 硬件C. 语言D. 操作系统2. 在MySQL中,一个数据库可以包含多个______。
A. 数据表B. 数据记录C. 数据字段D. 数据行3. 在MySQL中,使用______命令可以查询数据库中的表。
A. INSERTB. SELECTC. DELETED. UPDATE4. MySQL的数据类型中,用于存储货币金额的类型是______。
A. VARCHARB. INTC. DECIMALD. TEXT5. 在MySQL中,以______开头的注释语句会被MySQL解释器忽略。
A. //B. **C. #D. --6. 在MySQL中,使用______关键字可以删除表中的所有数据。
A. DELETEB. DROPC. TRUNCATED. REMOVE7. MySQL中,使用______命令可以将表中的数据按照指定的条件进行排序。
A. SELECTB. ORDER BYC. GROUP BYD. UPDATE8. 在MySQL中,使用______命令可以创建一个新的数据库。
A. CREATEB. INSERTC. UPDATED. DELETE9. 在MySQL中,使用______命令可以修改表的结构。
A. ALTERB. UPDATEC. TRUNCATED. DROP10. 在MySQL中,使用______命令可以将多个表进行连接查询。
A. UNIONB. JOINC. MERGED. LINK二、填空题(共5题,每题4分)1. 在MySQL中,______命令用于创建一个新的数据库。
2. SQL是______查询语言。
3. 在MySQL中,使用______关键字可以对查询结果进行分组。
4. MySQL中,______命令可以删除指定的数据表。
5. 在MySQL中,______函数用来统计指定字段的平均值。
大学mysql考试题及答案
![大学mysql考试题及答案](https://img.taocdn.com/s3/m/dc0df9857e192279168884868762caaedd33ba22.png)
大学mysql考试题及答案一、选择题(每题2分,共20分)1. MySQL数据库默认使用的端口号是:A. 22B. 3306C. 80D. 8080答案:B2. 下列哪个选项是MySQL数据库的存储引擎?A. InnoDBB. OracleC. SQL ServerD. PostgreSQL答案:A3. 在MySQL中,用于创建新表的SQL语句是:A. CREATE DATABASEB. CREATE TABLEC. ALTER TABLED. DROP TABLE答案:B4. 以下哪个SQL语句用于删除数据库中的表?A. DROP DATABASEB. DROP TABLEC. TRUNCATE TABLED. DELETE FROM答案:B5. 以下哪个选项不是MySQL的数据类型?A. VARCHARB. TEXTC. DATETIMED. XML答案:D6. 在MySQL中,使用哪个关键字来创建索引?A. INDEXB. KEYC. UNIQUED. BOTH A and B答案:D7. 如果想要在查询结果中排除重复的行,应该使用哪个SQL语句?A. SELECT DISTINCTB. SELECT ALLC. SELECT UNIQUED. SELECT NODUPLICATE答案:A8. 在MySQL中,哪个函数用于获取当前日期和时间?A. NOW()B. CURRENT_DATEC. CURRENT_TIMED. BOTH B and C答案:A9. 以下哪个选项不是MySQL的权限类型?A. SELECTB. INSERTC. UPDATED. EXECUTE答案:D10. 在MySQL中,哪个命令用于查看当前数据库的版本?A. VERSION()B. SELECT VERSION()C. SHOW VERSIOND. ALL OF THE ABOVE答案:D二、填空题(每题2分,共20分)1. MySQL的______存储引擎支持事务处理。
MySQL专项测试题附答案
![MySQL专项测试题附答案](https://img.taocdn.com/s3/m/8e4f93d532d4b14e852458fb770bf78a65293a9f.png)
MySQL专项测试题附答案一、单项选择题(本部分共15题,每题2分,共30分。
在每题给出选项中,只有一项符合题目要求,答对得分,答错或不答不得分。
)1.下列说法中,不正确的是( )。
A. 数据库减少了数据冗余B. 数据库中的数据可以共享C. 数据库避免了一切数据的重复D. 数据库具有较高的数据独立性2.SQL 语言的数据操纵语句包括 SELECT, INSERT, UPDATE 和 DELETE,最重要的,也是使用最频繁的语句是( )。
A. SELECTB. INSERTC. UPDATED. DELETE3. 数据库系统的核心是( )。
A.数据模型B.数据库管理系统C.数据库D.数据库管理员4. 在 MySQL 中,下列关于创建数据库表的描述正确的是( )。
A. 在创建表时必须设定列的约束B. 在删除表的时候通过外键约束连接在一起的表会被一同删除C. 在创建表时必须设置列类型D. 通过 CREATE TABLE new_t SELECT FROM old_t 复制表时,表的约束能够一起被复制到新表中5. 有一个关系:学生(学号,姓名,系别),规定学号的值域是 8 个数字组成的字符串,这一规则属于( )A. 实体完整性约束B. 参照完整性约束C. 用户自定义完整性约束D. 关键字完整性约束6. 如果一个字段的数据必须来源另一个表的主键,那么要在这个字段上建立( )。
A. PK(主键)B. FK(外键)C. UK(唯一键)D.复合主键7. 下列描述正确的是( )。
A.一个数据库只能包含一个数据表B.一个数据库可以包含多个数据表C.一个数据库只能包含两个数据表D.一个数据表可以包含多个数据库8. SQL 中,下列操作有语法错误的是( )。
A. AGE IS NOT NULLB. NOT(AGE IS NULL)C. SNAME=‘王五’D. SNAME=‘王%’9. SQL 中,“AGE IN(20, 22)”的语义是( )。
mysql数据库考试试题及答案
![mysql数据库考试试题及答案](https://img.taocdn.com/s3/m/c73af681f021dd36a32d7375a417866fb84ac00d.png)
mysql数据库考试试题及答案一、选择题1. MySQL是一种什么类型的数据库管理系统?A. 关系型数据库管理系统B. 非关系型数据库管理系统C. 层次型数据库管理系统D. 对象型数据库管理系统答案:A2. 下列哪个不是MySQL支持的数据类型?A. INTB. FLOATC. DECIMALD. STRING答案:D3. 在MySQL中,以下操作符用于比较两个值是否等于的是:A. =B. LIKEC. IND. BETWEEN答案:A4. 下列哪个不是MySQL支持的连接类型?A. INNER JOINB. LEFT JOINC. RIGHT JOIND. MIDDLE JOIN答案:D5. MySQL中使用哪个命令来创建数据库表?A. CREATE TABLEB. ALTER TABLEC. DELETE TABLED. DROP TABLE答案:A二、填空题1. MySQL使用什么语句来选择表中的所有数据?答案:SELECT * FROM 表名;2. MySQL使用什么语句来更新表中的数据?答案:UPDATE 表名 SET 列名 = 值 WHERE 条件;3. MySQL使用什么语句来插入数据到表中?答案:INSERT INTO 表名 (列1, 列2, 列3) VALUES (值1, 值2, 值3);4. MySQL使用什么语句来删除表中的数据?答案:DELETE FROM 表名 WHERE 条件;5. MySQL中使用哪个函数来获取表中的记录条数?答案:COUNT();三、简答题1. 什么是索引(Index)?它有什么作用?答:索引是一种数据结构,用于提高查询数据的速度。
它可以快速定位和访问数据,提高数据库的读取效率。
通过在表的一列或多列上创建索引,可以加速查询过程,降低系统的开销。
2. 请简要介绍一下MySQL的事务(Transaction)机制。
答:MySQL的事务是一组被视为单个逻辑实体的操作,要么全部成功执行,要么全部回滚。
MySQL数据库考试测试试题(附答案)
![MySQL数据库考试测试试题(附答案)](https://img.taocdn.com/s3/m/d30e6fd3aaea998fcd220ec6.png)
MySQL数据库考试测试试题(附答案) Mysql 测试题(总分150分,时间2个小时)一、单项选择题( 1分1个,共100分)1.以下聚合函数求数据总和的是( )A.MAXB.SUMC.COUNTD.AVG答案:B2.可以用( )来声明游标A.CREATE CURSORB.ALTER CURSORC.SET CURSORD.DECLARE CURSOR答案:D3.SELECT语句的完整语法较复杂,但至少包括的部分是( ) A.仅SELECTB.SELECT,FROMC.SELECT,GROUPD.SELECT,INTO答案:B4.SQL语句中的条件用以下哪一项来表达( )A.THENB.WHILEC.WHERED.IF答案:C5.使用CREATE TABLE语句的( )子句,在创建基本表时可以启用全文本搜索A.FULLTEXTB.ENGINEC.FROMD.WHRER答案:A6.以下能够删除一列的是( )A.alter table emp remove addcolumnB.alter table emp drop column addcolumnC.alter table emp delete column addcolumnD.alter table emp delete addcolumn答案:B7.若要撤销数据库中已经存在的表S,可用()。
A.DELETE TABLE SB.DELETE SC.DROP SD.DROP TABLE S答案:D8.查找表结构用以下哪一项( )A.FINDB.SELETEC.ALTERD.DESC答案:D9.要得到最后一句SELECT查询到的总行数,可以使用的函数是( ) A.FOUND_ROWSB.LAST_ROWSC.ROW_COUNTD.LAST_INSERT_ID答案:A10.在视图上不能完成的操作是( )A.查询B.在视图上定义新的视图C.更新视图D.在视图上定义新的表答案:D11.UNIQUE惟一索引的作用是( )A.保证各行在该索引上的值都不得重复B.保证各行在该索引上的值不得为NULLC.保证参加惟一索引的各列,不得再参加其他的索引D.保证惟一索引不能被删除答案:A12.用于将事务处理写到数据库的命令是( ) A.insertB.rollbackC.commitD.savepoint答案:C13.查找条件为:姓名不是NULL的记录( ) A.WHERE NAME ! NULLB.WHERE NAME NOT NULLC.WHERE NAME IS NOT NULLD.WHERE NAME!=NULL答案:C14.主键的建立有( )种方法A.一B.四C.二D.三答案:D15.在视图上不能完成的操作是( )A.更新视图数据B.在视图上定义新的基本表C.在视图上定义新的视图D.查询答案:B16.在SQL语言中,子查询是()。
mysql数据库练习题(含答案)
![mysql数据库练习题(含答案)](https://img.taocdn.com/s3/m/dd57921317fc700abb68a98271fe910ef12dae2e.png)
mysql数据库练习题(含答案)创建数据库1 DROP DATABASE IF EXISTS test1; #如果存在test1数据库删除test1数据库2 CREATE DATABASE test1; #创建test1数据库3 USE test1; #切换的test1数据库⾥创建部门表1 DROP IF EXISTS TABLE DEPT; #如果存在dept数据表,删除dept数据表.2 CREATE TABLE DEPT(3 DEPTNO int PRIMARY KEY, #部门编号4 DNAME VARCHAR(14) , #部门名称5 LOC VARCHAR(13) #部门地址6 ) ;向部门表插⼊数据1 INSERT INTO DEPT VALUES (10,'ACCOUNTING','NEW YORK');2 INSERT INTO DEPT VALUES (20,'RESEARCH','DALLAS');3 INSERT INTO DEPT VALUES (30,'SALES','CHICAGO');4 INSERT INTO DEPT VALUES (40,'OPERATIONS','BOSTON');创建员⼯表1 DROP IF EXISTS TABLE EMP; #如果存在emp数据表,删除emp数据表.2 CREATE TABLE EMP(3 EMPNO int PRIMARY KEY, #员⼯编号4 ENAME VARCHAR(10), #员⼯姓名5 JOB VARCHAR(9), #员⼯⼯作6 MGR int, #员⼯直属领导编号7 HIREDATE DATE, #⼊职时间8 SAL double, #⼯资9 COMM double, #奖⾦10 DEPTNO int #对应dept表的外键11 );添加部门和员⼯之间的主外键关系1 ALTER TABLE EMP ADD CONSTRAINT FOREIGN KEY EMP(DEPTNO) REFERENCES DEPT (DEPTNO); #加主键约束1.主键约束:要对⼀个列加主键约束的话,这列就必须要满⾜的条件就是分空因为主键约束:就是对⼀个列进⾏了约束,约束为(⾮空、不重复)以下是代码要对⼀个列加主键,列名为id,表名为emp格式为:alter table 表格名称 add constraint 约束名称增加的约束类型(列名)添加部门和员⼯1 INSERT INTO EMP VALUES(7369,'SMITH','CLERK',7902,"1980-12-17",800,NULL,20);2 INSERT INTO EMP VALUES(7499,'ALLEN','SALESMAN',7698,'1981-02-20',1600,300,30); 3 INSERT INTO EMP VALUES(7521,'WARD','SALESMAN',7698,'1981-02-22',1250,500,30); 4 INSERT INTO EMPVALUES(7566,'JONES','MANAGER',7839,'1981-04-02',2975,NULL,20); 5 INSERT INTO EMP VALUES(7654,'MARTIN','SALESMAN',7698,'1981-09-28',1250,1400,30); 6 INSERT INTO EMP VALUES(7698,'BLAKE','MANAGER',7839,'1981-05-01',2850,NULL,30); 7 INSERT INTO EMP VALUES(7782,'CLARK','MANAGER',7839,'1981-06-09',2450,NULL,10); 8 INSERT INTO EMP VALUES(7788,'SCOTT','ANALYST',7566,'1987-07-03',3000,NULL,20); 9 INSERT INTO EMPVALUES(7839,'KING','PRESIDENT',NULL,'1981-11-17',5000,NULL,10); 10 INSERT INTO EMP VALUES(7844,'TURNER','SALESMAN',7698,'1981-09-08',1500,0,30); 11 INSERT INTO EMP VALUES(7876,'ADAMS','CLERK',7788,'1987-07-13',1100,NULL,20); 12 INSERT INTO EMP VALUES(7900,'JAMES','CLERK',7698,'1981-12-03',950,NULL,30); 13 INSERT INTO EMP VALUES(7902,'FORD','ANALYST',7566,'1981-12-03',3000,NULL,20); 14 INSERT INTO EMPVALUES(7934,'MILLER','CLERK',7782,'1981-01-23',1300,NULL,10);创建⼯资等级表1 DROP IF EXISTS TABLE SALGRADE; #如果存在salgrade数据表,删除salgrare数据表.2 CREATE TABLE SALGRADE(3 GRADE int, #等级4 LOSAL double, #最低⼯资5 HISAL double ); #最⾼⼯资6 INSERT INTO SALGRADE VALUES (1,700,1200);7 INSERT INTO SALGRADE VALUES (2,1201,1400);8 INSERT INTO SALGRADE VALUES (3,1401,2000);9 INSERT INTO SALGRADE VALUES (4,2001,3000); 10 INSERT INTO SALGRADE VALUES (5,3001,9999);单表查询题⽬及答案1 #1、查找部门30中员⼯的详细信息。
mysql数据库考试试题及答案
![mysql数据库考试试题及答案](https://img.taocdn.com/s3/m/96544a83db38376baf1ffc4ffe4733687e21fcd5.png)
mysql数据库考试试题及答案一、选择题1. MySQL中的InnoDB存储引擎支持的事务隔离级别有几种?A. 一种B. 两种C. 三种D. 四种答案:D2. 下列哪个命令可以查看MySQL服务器的版本信息?A. SHOW DATABASES;B. SHOW TABLES;C. SHOW VARIABLES;D. SHOW PROCESSLIST;答案:C3. 在MySQL中,如果需要对一个表进行备份,应该使用哪个命令?A. mysqldumpB. mysqlimportC. mysqladmin createD. mysqladmin backup答案:A4. 在SQL语句中,用于删除表中数据但不删除表结构的关键字是什么?A. TRUNCATEB. DROPC. DELETED. REMOVE答案:C5. 在MySQL中,创建新数据库的命令是什么?A. CREATE DATABASEB. NEW DATABASEC. BUILD DATABASED. INIT DATABASE答案:A二、填空题1. 在MySQL中,___________命令可以用来创建新的表。
答案:CREATE TABLE2. 如果需要查询数据库中所有的表,可以使用___________命令。
答案:SHOW TABLES3. 在SQL中,___________关键字用于指定唯一键值,保证表中每一行数据的唯一性。
答案:PRIMARY KEY4. 当需要对数据库进行优化时,可以使用___________命令。
答案:OPTIMIZE TABLE5. 在MySQL中,___________函数用于获取当前日期和时间。
答案:NOW()三、判断题1. 在MySQL中,使用TEXT类型的字段可以存储二进制数据。
(对/错) 答案:错2. 在MySQL中,外键约束可以用来级联更新和删除数据。
(对/错)答案:对3. 使用LIKE关键字进行模糊查询时,%和_分别代表任意多个字符和任意单个字符。
大学MySQL查找考试题及答案
![大学MySQL查找考试题及答案](https://img.taocdn.com/s3/m/8598136f82c4bb4cf7ec4afe04a1b0717fd5b3c2.png)
大学MySQL查找考试题及答案一、选择题(每题2分,共20分)1. MySQL中用于创建新表的SQL语句是:A. CREATE DATABASEB. CREATE TABLEC. CREATE INDEXD. CREATE VIEW答案:B2. 在MySQL中,用于添加新数据行的SQL语句是:A. INSERT INTOB. UPDATEC. DELETED. SELECT答案:A3. 下列哪个选项是MySQL中用于删除表的SQL语句?A. DROP DATABASEB. DROP TABLEC. DROP INDEXD. DROP VIEW答案:B4. 用于更新表中数据的SQL语句是:A. INSERT INTOB. UPDATEC. DELETED. SELECT答案:B5. 在MySQL中,哪个关键字用于从表中检索数据?A. SELECTB. FROMC. WHERED. ORDER BY答案:A6. 如果要查找表中所有记录,应该使用哪个SQL语句?A. SELECT *B. SELECT ALLC. SELECT DISTINCTD. SELECT COUNT答案:A7. 在MySQL中,用于删除数据行的SQL语句是:A. INSERT INTOB. UPDATEC. DELETED. SELECT答案:C8. 以下哪个选项是用于在查询中过滤数据的SQL语句?A. SELECTB. WHEREC. ORDER BYD. GROUP BY答案:B9. 在MySQL中,哪个关键字用于对结果集进行排序?A. ORDER BYB. GROUP BYC. HAVINGD. LIMIT答案:A10. 使用哪个SQL语句可以在表中创建新列?A. ALTER TABLEB. CREATE TABLEC. DROP TABLED. RENAME TABLE答案:A二、填空题(每题3分,共30分)1. 在MySQL中,使用________语句可以创建一个新数据库。
MySql习题和答案
![MySql习题和答案](https://img.taocdn.com/s3/m/29fdc5ef534de518964bcf84b9d528ea81c72f64.png)
MySql习题和答案MySQL测试题⼀、表关系请创建如下表,并创建相关约束⼆、操作表1、⾃⾏创建测试数据2、查询“⽣物”课程⽐“物理”课程成绩⾼的所有学⽣的学号。
ps:针对的是⾃⼰的⽣物成绩⽐物理成绩⾼,再把符合条件的学⽣的学号查出来;3、查询平均成绩⼤于60分的同学的学号和平均成绩;4、查询所有同学的学号、姓名、选课数、总成绩;5、查询姓“李”的⽼师的个数;6、查询没学过“叶平”⽼师课的同学的学号、姓名;7、查询学过“001”并且也学过编号“002”课程的同学的学号、姓名;8、查询学过“叶平”⽼师所教的所有课的同学的学号、姓名;9、查询课程编号“002”的成绩⽐课程编号“001”课程低的所有同学的学号、姓名;10、查询有课程成绩⼩于60分的同学的学号、姓名;11、查询没有学全所有课的同学的学号、姓名;12、查询⾄少有⼀门课与学号为“001”的同学所学相同的同学的学号和姓名;13、查询⾄少学过学号为“001”同学所选课程中任意⼀门课的其他同学学号和姓名;14、查询和“002”号的同学学习的课程完全相同的其他同学学号和姓名;15、删除学习“叶平”⽼师课的SC表记录;16、向SC表中插⼊⼀些记录,这些记录要求符合以下条件:①没有上过编号“002”课程的同学学号;②插⼊“002”号课程的平均成绩;17、按平均成绩从低到⾼显⽰所有学⽣的“语⽂”、“数学”、“英语”三门的课程成绩,按如下形式显⽰:学⽣ID,语⽂,数学,英语,有效课程数,有效平均分;18、查询各科成绩最⾼和最低的分:以如下形式显⽰:课程ID,最⾼分,最低分;19、按各科平均成绩从低到⾼和及格率的百分数从⾼到低顺序;20、课程平均分从⾼到低显⽰(现实任课⽼师);21、查询各科成绩前三名的记录:(不考虑成绩并列情况)22、查询每门课程被选修的学⽣数;23、查询出只选修了⼀门课程的全部学⽣的学号和姓名;24、查询男⽣、⼥⽣的⼈数;25、查询姓“张”的学⽣名单;26、查询同名同姓学⽣名单,并统计同名⼈数;27、查询每门课程的平均成绩,结果按平均成绩升序排列,平均成绩相同时,按课程号降序排列;28、查询平均成绩⼤于85的所有学⽣的学号、姓名和平均成绩;29、查询课程名称为“数学”,且分数低于60的学⽣姓名和分数;30、查询课程编号为003且课程成绩在80分以上的学⽣的学号和姓名;31、求选了课程的学⽣⼈数32、查询选修“杨艳”⽼师所授课程的学⽣中,成绩最⾼的学⽣姓名及其成绩;33、查询各个课程及相应的选修⼈数;34、查询不同课程但成绩相同的学⽣的学号、课程号、学⽣成绩;35、查询每门课程成绩最好的前两名;36、检索⾄少选修两门课程的学⽣学号;37、查询全部学⽣都选修的课程的课程号和课程名;38、查询没学过“叶平”⽼师讲授的任⼀门课程的学⽣姓名;39、查询两门以上不及格课程的同学的学号及其平均成绩;40、检索“004”课程分数⼩于60,按分数降序排列的同学学号;41、删除“002”同学的“001”课程的成绩;MySql练习题参考答案/*Navicat Premium Data TransferSource Server : localhostSource Server Type : MySQLSource Server Version : 50624Source Host : localhostSource Database : sqlexamTarget Server Type : MySQLTarget Server Version : 50624File Encoding : utf-8Date: 10/21/2016 06:46:46 AM*/SET NAMES utf8;SET FOREIGN_KEY_CHECKS = 0;-- ------------------------------ Table structure for `class`-- ----------------------------DROP TABLE IF EXISTS `class`;CREATE TABLE `class` (`cid` int(11) NOT NULL AUTO_INCREMENT,`caption` varchar(32) NOT NULL,PRIMARY KEY (`cid`)) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;-- ------------------------------ Records of `class`-- ----------------------------BEGIN;INSERT INTO `class` VALUES ('1', '三年⼆班'), ('2', '三年三班'), ('3', '⼀年⼆班'), ('4', '⼆年九班');COMMIT;-- ------------------------------ Table structure for `course`-- ----------------------------DROP TABLE IF EXISTS `course`;CREATE TABLE `course` (`cid` int(11) NOT NULL AUTO_INCREMENT,`cname` varchar(32) NOT NULL,`teacher_id` int(11) NOT NULL,PRIMARY KEY (`cid`),KEY `fk_course_teacher` (`teacher_id`),CONSTRAINT `fk_course_teacher` FOREIGN KEY (`teacher_id`) REFERENCES `teacher` (`tid`)) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;-- ------------------------------ Records of `course`-- ----------------------------BEGIN;INSERT INTO `course` VALUES ('1', '⽣物', '1'), ('2', '物理', '2'), ('3', '体育', '3'), ('4', '美术', '2');COMMIT;-- ------------------------------ Table structure for `score`-- ----------------------------DROP TABLE IF EXISTS `score`;CREATE TABLE `score` (`sid` int(11) NOT NULL AUTO_INCREMENT,`student_id` int(11) NOT NULL,`course_id` int(11) NOT NULL,`num` int(11) NOT NULL,PRIMARY KEY (`sid`),KEY `fk_score_student` (`student_id`),KEY `fk_score_course` (`course_id`),CONSTRAINT `fk_score_course` FOREIGN KEY (`course_id`) REFERENCES `course` (`cid`),CONSTRAINT `fk_score_student` FOREIGN KEY (`student_id`) REFERENCES `student` (`sid`)) ENGINE=InnoDB AUTO_INCREMENT=53 DEFAULT CHARSET=utf8;-- ------------------------------ Records of `score`-- ----------------------------BEGIN;INSERT INTO `score` VALUES ('1', '1', '1', '10'), ('2', '1', '2', '9'), ('5', '1', '4', '66'), ('6', '2', '1', '8'), ('8', '2', '3', '68'), ('9', '2', '4', '99'), ('10', '3', '1', '77'), ('11', '3', '2', '66'), ('12', '3', '3', '87'), ('13', '3', '4', '99'), ('14', '4', '1', '79'), ('15', '4', '2', '11'), ('16', '4', '3', '67'), ('1 COMMIT;-- ------------------------------ Table structure for `student`-- ----------------------------DROP TABLE IF EXISTS `student`;CREATE TABLE `student` (`sid` int(11) NOT NULL AUTO_INCREMENT,`gender` char(1) NOT NULL,`class_id` int(11) NOT NULL,`sname` varchar(32) NOT NULL,PRIMARY KEY (`sid`),KEY `fk_class` (`class_id`),CONSTRAINT `fk_class` FOREIGN KEY (`class_id`) REFERENCES `class` (`cid`)) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8;-- ------------------------------ Records of `student`-- ----------------------------BEGIN;INSERT INTO `student` VALUES ('1', '男', '1', '理解'), ('2', '⼥', '1', '钢蛋'), ('3', '男', '1', '张三'), ('4', '男', '1', '张⼀'), ('5', '⼥', '1', '张⼆'), ('6', '男', '1', '张四'), ('7', '⼥', '2', '铁锤'), ('8', '男', '2', '李三'), ('9', '男', '2', '李⼀'), ('10', '⼥', '2', '李⼆'), ('11', '男', '2', '李四'), ( COMMIT;-- ------------------------------ Table structure for `teacher`-- ----------------------------DROP TABLE IF EXISTS `teacher`;CREATE TABLE `teacher` (`tid` int(11) NOT NULL AUTO_INCREMENT,`tname` varchar(32) NOT NULL,PRIMARY KEY (`tid`)) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;-- ------------------------------ Records of `teacher`-- ----------------------------BEGIN;INSERT INTO `teacher` VALUES ('1', '张磊⽼师'), ('2', '李平⽼师'), ('3', '刘海燕⽼师'), ('4', '朱云海⽼师'), ('5', '李杰⽼师');COMMIT;SET FOREIGN_KEY_CHECKS = 1;/*Navicat Premium Data TransferSource Server : localhostSource Server Type : MySQLSource Server Version : 50624Source Host : localhostSource Database : sqlexamTarget Server Type : MySQLTarget Server Version : 50624File Encoding : utf-8Date: 10/21/2016 06:46:46 AM*/SET NAMES utf8;SET FOREIGN_KEY_CHECKS = 0;-- ------------------------------ Table structure for `class`-- ----------------------------DROP TABLE IF EXISTS `class`;CREATE TABLE `class` (`cid` int(11) NOT NULL AUTO_INCREMENT,`caption` varchar(32) NOT NULL,PRIMARY KEY (`cid`)) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;-- ------------------------------ Records of `class`-- ----------------------------BEGIN;INSERT INTO `class` VALUES ('1', '三年⼆班'), ('2', '三年三班'), ('3', '⼀年⼆班'), ('4', '⼆年九班');COMMIT;-- ------------------------------ Table structure for `course`-- ----------------------------DROP TABLE IF EXISTS `course`;CREATE TABLE `course` (`cid` int(11) NOT NULL AUTO_INCREMENT,`cname` varchar(32) NOT NULL,`teacher_id` int(11) NOT NULL,PRIMARY KEY (`cid`),KEY `fk_course_teacher` (`teacher_id`),CONSTRAINT `fk_course_teacher` FOREIGN KEY (`teacher_id`) REFERENCES `teacher` (`tid`)) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;-- ------------------------------ Records of `course`-- ----------------------------BEGIN;INSERT INTO `course` VALUES ('1', '⽣物', '1'), ('2', '物理', '2'), ('3', '体育', '3'), ('4', '美术', '2');COMMIT;-- ------------------------------ Table structure for `score`-- ----------------------------DROP TABLE IF EXISTS `score`;CREATE TABLE `score` (`sid` int(11) NOT NULL AUTO_INCREMENT,`student_id` int(11) NOT NULL,`course_id` int(11) NOT NULL,`num` int(11) NOT NULL,PRIMARY KEY (`sid`),KEY `fk_score_student` (`student_id`),KEY `fk_score_course` (`course_id`),CONSTRAINT `fk_score_course` FOREIGN KEY (`course_id`) REFERENCES `course` (`cid`),CONSTRAINT `fk_score_student` FOREIGN KEY (`student_id`) REFERENCES `student` (`sid`)) ENGINE=InnoDB AUTO_INCREMENT=53 DEFAULT CHARSET=utf8;-- ------------------------------ Records of `score`-- ----------------------------BEGIN;INSERT INTO `score` VALUES ('1', '1', '1', '10'), ('2', '1', '2', '9'), ('5', '1', '4', '66'), ('6', '2', '1', '8'), ('8', '2', '3', '68'), ('9', '2', '4', '99'), ('10', '3', '1', '77'), ('11', '3', '2', '66'), ('12', '3', '3', '87'), ('13', '3', '4', '99'), ('14', '4', '1', '79'), ('15', '4', '2', '11'), ('16', '4', '3', '67'), ('1 COMMIT;-- ------------------------------ Table structure for `student`-- ----------------------------DROP TABLE IF EXISTS `student`;CREATE TABLE `student` (`sid` int(11) NOT NULL AUTO_INCREMENT,`gender` char(1) NOT NULL,`class_id` int(11) NOT NULL,`sname` varchar(32) NOT NULL,PRIMARY KEY (`sid`),KEY `fk_class` (`class_id`),CONSTRAINT `fk_class` FOREIGN KEY (`class_id`) REFERENCES `class` (`cid`)) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8;-- ------------------------------ Records of `student`-- ----------------------------BEGIN;INSERT INTO `student` VALUES ('1', '男', '1', '理解'), ('2', '⼥', '1', '钢蛋'), ('3', '男', '1', '张三'), ('4', '男', '1', '张⼀'), ('5', '⼥', '1', '张⼆'), ('6', '男', '1', '张四'), ('7', '⼥', '2', '铁锤'), ('8', '男', '2', '李三'), ('9', '男', '2', '李⼀'), ('10', '⼥', '2', '李⼆'), ('11', '男', '2', '李四'), ( COMMIT;-- ------------------------------ Table structure for `teacher`-- ----------------------------DROP TABLE IF EXISTS `teacher`;CREATE TABLE `teacher` (`tid` int(11) NOT NULL AUTO_INCREMENT,`tname` varchar(32) NOT NULL,PRIMARY KEY (`tid`)) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;-- ------------------------------ Records of `teacher`-- ----------------------------BEGIN;INSERT INTO `teacher` VALUES ('1', '张磊⽼师'), ('2', '李平⽼师'), ('3', '刘海燕⽼师'), ('4', '朱云海⽼师'), ('5', '李杰⽼师');COMMIT;SET FOREIGN_KEY_CHECKS = 1;表结构和数据练习题答案:2、查询“⽣物”课程⽐“物理”课程成绩⾼的所有学⽣的学号;思路:获取所有有⽣物课程的⼈(学号,成绩) - 临时表获取所有有物理课程的⼈(学号,成绩) - 临时表根据【学号】连接两个临时表:学号物理成绩⽣物成绩然后再进⾏筛选select A.student_id,sw,ty from(select student_id,num as sw from score left join course on score.course_id = course.cid where ame = '⽣物') as Aleft join(select student_id,num as ty from score left join course on score.course_id = course.cid where ame = '体育') as Bon A.student_id = B.student_id where sw > if(isnull(ty),0,ty);3、查询平均成绩⼤于60分的同学的学号和平均成绩;思路:根据学⽣分组,使⽤avg获取平均值,通过having对avg进⾏筛选select student_id,avg(num) from score group by student_id having avg(num) > 604、查询所有同学的学号、姓名、选课数、总成绩;select score.student_id,sum(score.num),count(score.student_id),student.snamefromscore left join student on score.student_id = student.sidgroup by score.student_id5、查询姓“李”的⽼师的个数;select count(tid) from teacher where tname like '李%'select count(1) from (select tid from teacher where tname like '李%') as B6、查询没学过“叶平”⽼师课的同学的学号、姓名;思路:先查到“李平⽼师”⽼师教的所有课ID获取选过课的所有学⽣ID学⽣表中筛选select * from student where sid not in (select DISTINCT student_id from score where score.course_id in (select cid from course left join teacher on course.teacher_id = teacher.tid where tname = '李平⽼师'))7、查询学过“001”并且也学过编号“002”课程的同学的学号、姓名;思路:先查到既选择001⼜选择002课程的所有同学根据学⽣进⾏分组,如果学⽣数量等于2表⽰,两门均已选择select student_id,sname from(select student_id,course_id from score where course_id = 1 or course_id = 2) as Bleft join student on B.student_id = student.sid group by student_id HAVING count(student_id) > 18、查询学过“叶平”⽼师所教的所有课的同学的学号、姓名;同上,只不过将001和002变成 in (叶平⽼师的所有课)9、查询课程编号“002”的成绩⽐课程编号“001”课程低的所有同学的学号、姓名;同第1题10、查询有课程成绩⼩于60分的同学的学号、姓名;select sid,sname from student where sid in (select distinct student_id from score where num < 60)11、查询没有学全所有课的同学的学号、姓名;思路:在分数表中根据学⽣进⾏分组,获取每⼀个学⽣选课数量如果数量 == 总课程数量,表⽰已经选择了所有课程select student_id,snamefrom score left join student on score.student_id = student.sidgroup by student_id HAVING count(course_id) = (select count(1) from course)12、查询⾄少有⼀门课与学号为“001”的同学所学相同的同学的学号和姓名;思路:获取 001 同学选择的所有课程获取课程在其中的所有⼈以及所有课程根据学⽣筛选,获取所有学⽣信息再与学⽣表连接,获取姓名select student_id,sname, count(course_id)from score left join student on score.student_id = student.sidwhere student_id != 1 and course_id in (select course_id from score where student_id = 1) group by student_id13、查询⾄少学过学号为“001”同学所有课的其他同学学号和姓名;先找到和001的学过的所有⼈然后个数= 001所有学科==》其他⼈可能选择的更多select student_id,sname, count(course_id)from score left join student on score.student_id = student.sidwhere student_id != 1 and course_id in (select course_id from score where student_id = 1) group by student_id having count(course_id) = (select count(course_id) from score where student_id = 1) 14、查询和“002”号的同学学习的课程完全相同的其他同学学号和姓名;个数相同002学过的也学过select student_id,sname from score left join student on score.student_id = student.sid where student_id in (select student_id from score where student_id != 1 group by student_id HAVING count(course_id) = (select count(1) from score where student_id = 1)) and course_id in (select course_id from score where student_id = 1) group by student_id HAVING count(course_id) = (select count(1) from score where student_id = 1)15、删除学习“叶平”⽼师课的score表记录;delete from score where course_id in (select cid from course left join teacher on course.teacher_id = teacher.tid where = '叶平')16、向SC表中插⼊⼀些记录,这些记录要求符合以下条件:①没有上过编号“002”课程的同学学号;②插⼊“002”号课程的平均成绩;思路:由于insert ⽀持inset into tb1(xx,xx) select x1,x2 from tb2;所有,获取所有没上过002课的所有⼈,获取002的平均成绩insert into score(student_id, course_id, num) select sid,2,(select avg(num) from score where course_id = 2)from student where sid not in (select student_id from score where course_id = 2)17、按平均成绩从低到⾼显⽰所有学⽣的“语⽂”、“数学”、“英语”三门的课程成绩,按如下形式显⽰:学⽣ID,语⽂,数学,英语,有效课程数,有效平均分;select sc.student_id,(select num from score left join course on score.course_id = course.cid where ame = "⽣物" and score.student_id=sc.student_id) as sy,(select num from score left join course on score.course_id = course.cid where ame = "物理" and score.student_id=sc.student_id) as wl,(select num from score left join course on score.course_id = course.cid where ame = "体育" and score.student_id=sc.student_id) as ty,count(sc.course_id),avg(sc.num)from score as scgroup by student_id desc18、查询各科成绩最⾼和最低的分:以如下形式显⽰:课程ID,最⾼分,最低分;select course_id, max(num) as max_num, min(num) as min_num from score group by course_id;19、按各科平均成绩从低到⾼和及格率的百分数从⾼到低顺序;思路:case when .. thenselect course_id, avg(num) as avgnum,sum(case when score.num > 60 then 1 else 0 END)/count(1)*100 as percent from score group by course_id order by avgnum asc,percent desc;20、课程平均分从⾼到低显⽰(现实任课⽼师);select avg(if(isnull(score.num),0,score.num)),teacher.tname from courseleft join score on course.cid = score.course_idleft join teacher on course.teacher_id = teacher.tidgroup by score.course_id21、查询各科成绩前三名的记录:(不考虑成绩并列情况)select score.sid,score.course_id,score.num,T.first_num,T.second_num from score left join(selectsid,(select num from score as s2 where s2.course_id = s1.course_id order by num desc limit 0,1) as first_num,(select num from score as s2 where s2.course_id = s1.course_id order by num desc limit 3,1) as second_numfromscore as s1) as Ton score.sid =T.sidwhere score.num <= T.first_num and score.num >= T.second_num22、查询每门课程被选修的学⽣数;select course_id, count(1) from score group by course_id;23、查询出只选修了⼀门课程的全部学⽣的学号和姓名;select student.sid, student.sname, count(1) from scoreleft join student on score.student_id = student.sidgroup by course_id having count(1) = 124、查询男⽣、⼥⽣的⼈数;select * from(select count(1) as man from student where gender='男') as A ,(select count(1) as feman from student where gender='⼥') as B25、查询姓“张”的学⽣名单;select sname from student where sname like '张%';26、查询同名同姓学⽣名单,并统计同名⼈数;select sname,count(1) as count from student group by sname;27、查询每门课程的平均成绩,结果按平均成绩升序排列,平均成绩相同时,按课程号降序排列;select course_id,avg(if(isnull(num), 0 ,num)) as avg from score group by course_id order by avg asc,course_id desc;28、查询平均成绩⼤于85的所有学⽣的学号、姓名和平均成绩;select student_id,sname, avg(if(isnull(num), 0 ,num)) from score left join student on score.student_id = student.sid group by student_id;29、查询课程名称为“数学”,且分数低于60的学⽣姓名和分数;select student.sname,score.num from scoreleft join course on score.course_id = course.cidleft join student on score.student_id = student.sidwhere score.num < 60 and ame = '⽣物'30、查询课程编号为003且课程成绩在80分以上的学⽣的学号和姓名;select * from score where score.student_id = 3 and score.num > 8031、求选了课程的学⽣⼈数select count(distinct student_id) from scoreselect count(c) from (select count(student_id) as c from score group by student_id) as A32、查询选修“杨艳”⽼师所授课程的学⽣中,成绩最⾼的学⽣姓名及其成绩;select sname,num from scoreleft join student on score.student_id = student.sidwhere score.course_id in (select course.cid from course left join teacher on course.teacher_id = teacher.tid where tname='张磊⽼师') order by num desc limit 1;33、查询各个课程及相应的选修⼈数;select ame,count(1) from scoreleft join course on score.course_id = course.cidgroup by course_id;34、查询不同课程但成绩相同的学⽣的学号、课程号、学⽣成绩;select DISTINCT s1.course_id,s2.course_id,s1.num,s2.num from score as s1, score as s2 where s1.num = s2.num and s1.course_id != s2.course_id;35、查询每门课程成绩最好的前两名;select score.sid,score.course_id,score.num,T.first_num,T.second_num from score left join(selectsid,(select num from score as s2 where s2.course_id = s1.course_id order by num desc limit 0,1) as first_num,(select num from score as s2 where s2.course_id = s1.course_id order by num desc limit 1,1) as second_numfromscore as s1) as Ton score.sid =T.sidwhere score.num <= T.first_num and score.num >= T.second_num36、检索⾄少选修两门课程的学⽣学号;select student_id from score group by student_id having count(student_id) > 137、查询全部学⽣都选修的课程的课程号和课程名;select course_id,count(1) from score group by course_id having count(1) = (select count(1) from student);38、查询没学过“叶平”⽼师讲授的任⼀门课程的学⽣姓名;select student_id,student.sname from scoreleft join student on score.student_id = student.sidwhere score.course_id not in (select cid from course left join teacher on course.teacher_id = teacher.tid where tname = '张磊⽼师')group by student_id39、查询两门以上不及格课程的同学的学号及其平均成绩;select student_id,count(1) from score where num < 60 group by student_id having count(1) > 240、检索“004”课程分数⼩于60,按分数降序排列的同学学号;select student_id from score where num< 60 and course_id = 4 order by num desc;41、删除“002”同学的“001”课程的成绩;delete from score where course_id = 1 and student_id = 2。
mysql数据考试试题及答案
![mysql数据考试试题及答案](https://img.taocdn.com/s3/m/a272279451e2524de518964bcf84b9d528ea2cea.png)
mysql数据考试试题及答案一、选择题1. MySQL中,用于查询记录的命令是()。
A. INSERTB. UPDATEC. SELECTD. DELETE答案:C2. 下列哪个数据类型在MySQL中用于存储日期和时间?()。
A. INTB. VARCHARC. DATETIMED. FLOAT答案:C3. 在MySQL中,如果需要创建一个新数据库,应该使用哪个命令?()。
A. CREATE TABLEB. CREATE DATABASEC. ALTER DATABASED. DROP DATABASE答案:B4. 在MySQL中,用于删除表的命令是()。
A. DELETEB. DROPC. REMOVED. ERASE答案:B5. 在SELECT查询中,如果需要对结果进行排序,应该使用哪个关键字?()。
A. ORDER BYB. SORT BYC. ARRANGE BYD. LIST BY答案:A二、填空题1. 在MySQL中,使用________关键字可以创建一个新表,其中包含字段名、数据类型以及其他属性。
答案:CREATE TABLE2. 若要在MySQL中更新现有记录的数据,需要使用________命令,后面跟上需要更新的字段和条件。
答案:UPDATE3. 在MySQL中,________命令允许用户删除表中的一条或多条记录。
答案:DELETE4. 当需要查询表中的所有列和所有记录时,可以使用________关键字代替列名。
答案:*5. 在MySQL中,________函数可以用于计算两个日期之间的差异。
答案:DATEDIFF三、判断题1. 在MySQL中,所有的表都必须有一个主键。
()答案:×(并非所有表都必须有一个主键,但如果不指定主键,MySQL会自动选择一个字段作为主键。
)2. 使用LIMIT子句可以限制查询结果的数量。
()答案:√3. MySQL中的FOREIGN KEY约束用于防止在表中插入无效的数据。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5.数据库设计包括概念设计、________和物理设计。
6.在E-R图中,矩形表示________。
三、简答题
1.请简述什么是数据库管理系统,以及它的主要功能有哪些?
2.请简述什么是数据库系统?
3.请简述什么是模式、外模式和内模式?
3、MySQL安装成功后,在系统中回默认建立一个________用户。
4、MySQL安装包含典型安装、定制安装和________三种安装类型。
三、简答题
1.请列举MySQL的系统特性。
2.请简述MySQL的安装与配置过程。
3.请列举两个常用的MySQL客户端管理工具。
4.请解释SQL是何种类型的语言?
A.LIMIT
B.GROUP BY
C.WHERE
D.ORDER BY
二、填空题
1.SELECT语句的执行过程是从数据库中选取匹配的特定________和________,并将这些数据组织成一个结果集,然后以一张________的形式返回。
2.当使用SELECT语句返回的结果集中行数很多时,为了便于用户对结果数据的浏览和操作,可以使用子句来限制被SELECT语句返回的行数。
3.在MySQL命令行客户端输入如下SQL语句即可实现:
mysql>USE db—test;
Database changed
mysql>DELETE FROM content
一>WHERE usemame=‘MySQL初学者’;
Query OK,1 rOW affected(0.09 sec)
四、简答题
4.请简述C/S结构与B/S结构的区别。
5.请简述关系规范化过程。
第一章
一、选择题
1.A 2.B 3.A 4.B 5.C 6.C
二、填空题
1.模式外模式内模式2.浏览器/服务器结构(B/S结构) 3.逻辑
4。关系5.逻辑设计6.实体
三、简答题
1.略。可参考第1章1.1节内容。
2.数据库、数据库管理系统与操作数据库的应用程序,加上支撑它们的硬件平台、软件平台和与数据库有
2、在CREATE TABLE语句中,通常使用________关键字来指定主键。
三、编程题
1、请使用MySQL命令行客户端在MySQL中创建一个名为db_test的数据库。
2、请使用MySQL命令行客户端在数据库db_test中,创建一个网络留言板系统中用于描述网络留言内容的数据表content,该表的结构如下:
一、选择题
1、在MySQL中,通常使用________语句来指定一个已有数据库作为当前工作数据库。
A.USING
B.USED
C.USES
D.USE
2、下列________类型不是MySQL中常用的的数据类型。
A.INT
B.VAR
C.TIME
D.CHAR
二、填空题
1、在MySQL中,通常使用_________值来表示一个列植没有值或缺值的情形。
3.在MySQL中,可以使用________语句来修改、更新一个表或多个表中的数据。
三、编程题
1.请使用INSERT语句向数据库db_test的表content中插入一行描述了下列留言信息的数据:留言ID号由系统自动生成;留言标题为“MySQL问题请教”;留言内容为“MySQL中对表数据的基本操作有哪些?”;
Database changed
mysql>UPDATE content
一>SET words=’如何使用INSERT语句?’
一>WHERE username=’MySQL初学者’;
Query OK,1 row affected(0.08 sec)
Rows matched:1 Changed:1 Warnings:0
第二章
一、选择题
1.A 2.C
二、填空题
1.数据定义语言(DDL)数据操纵语言(DML)数据控制语言(DCL)
2.33063.root 4.完全安装
三、简答题
1.略。可参考第2章2.1节内容。
2.略。可参考第2章2.2节内容。
3.MySQL命令行客户端、MySQL图形化管理工具phpAdmin。
4.SQL是结构化查询语言(Structured Q-ery Language)的英文缩写,它是一种专门用来与数据库通信的语言。
一、选择题
下列哪种方法不能用于创建索引?_______
A)使用CREATE INDEX语句
B)使用CREATE TABLE语句
C)使用ALTER TABLE语句
D)使用CREATE DATABASE语句
二、填空题
1.创建普通索引时,通常使用的关键字是_______或KEY。
2.创建唯一性索引时,通常使用的关键字是_______。
C.UPDATE语句
D.DELETE语句
2、SQL语言又称________。
A.结构化定义语言
B.结构化控制语言
C.结构化查询语言
D.结构化操纵语言
二、填空题
1、MySQL数据库所支持的SQL语言主要包含_______、_______、_________和MySQL扩展增加的语言要素几个部分。
2、在MySQL的安装过程中,若选用“启用TCP/IP网络”,则MySQL会默认选用的端口号是________。
一、选择题
下列语句中,________不是表数据的基本操作语句。
A)CREATE语句
B)INSERT语句
C)DELETE语句
D)UPDATE语句
二、填空题
1.在MySQL中,可以使用INSERT或________语句,向数据库中一个已有的表插入一行或多行元组数据。
2.在MySQL中,可以使用________语句或________语句删除表中的一行或多行数据。
四、筒答题
1.请简述INSERT语句与REPLACE语句的区别。
2.请简述DELETE语句与TRUNCATE语句的区别。
四、简答题
略。可参考第3章3.2.1小节内容
第四章
一、选择题
A
二、填空题
1.REPLACE
2 DELETE TRANCATE
3.UPDATE
三、编程题
1.在MySQL命令行客户端输入如下SQL语句即可实现:
4.请简述使用索引的弊端。
第六章
一、选择题
D
二、填空题
1.INDEX 2.UNIQUE
三、编程题
在MySQL命令行客户端输入如下SQL语句即可实现:
mysql>USE db_test;
Database changed
mysq|>CREATE INDEX index_subject
一> ON content(subject(3)ASC);
一、选择题
1.数据库系统的核心是________。
A.数据模型
B.数据库管理系统
C.数据库
D.数据库管理员
2.E-R图提供了表示信息世界中实体、属性和________的方法。
A.数据
B.联系
C.表
D.模式
3.E-R图是数据库设计的工具之一,它一般适用于建立数据库的________。
A.概念模型
B.结构模型
留言人姓名为“MySQL初学者”;脸谱图标文件名为“face.jpg”;电子邮件为“tom@gmail.com”;留言创建日期和时间为系统当前时间。
2.请使用UPDATE语句将数据库db_test的表content中留言人姓名为“MySQL初学者”的留言内容修改为“如何使用INSERT语句?”。
3.请使用DELETE语句将数据库db_test的表content中留言人姓名为“MysQL初学者”的留言信息删除。
三、编程题
请使用SELECT语句将数据库db_test的表content中留言人姓名为“MySQL初学者”的所有留言信息检索出来。
四、简答题
1.请简述什么是子查询?
2.请简述UNION语句的作用。
第五章
一、选择题
1.A 2.B
二、填空题
1.行列临时表2.LIMIT
三、编程题
在MySQL命令行客户端输入如下SQL语句即可实现:
1.略。可参考第4章4.1节内容。
2.略。可参考第4章4.2节内容。
一、选择题
1.在MySQL中,通常使用________语句来进行数据的检索、输出操作。
A.SELECT
B.INSERT
C.DELETE
D.UPDATE
2.在SELECT语句中,可以使用________子句,将结果集中的数据行根据选择列的值进行逻辑分组,以便能汇总表内容的子集,即实现对每个组的聚集计算。
Query OK,0 rows affected(0.44 see)
Records:0 Duplicates:0 Warnings:0
注:本书诸多习题将基于这里创建的数据库db_test和表content。
四、简答题
请分别解释AUT0_INCREMENT、默认值和NULL值的用途。
第三章
一、选择题
1.D 2.B
二、填空题
1.NULL 2.PRIMARY KEY
三、编程题
1.在MySQL命令行客户端输入如下SQL语句即可实现:
mysql>CREATE DATABASE db_test;
C.物理模型
D.逻辑模型
4.将E.R图转换到关系模式时,实体与联系都可以表示成________。
A.属性
B.关系
C.键
D.域
5.在关系数据库设计中,设计关系模式属于数据库设计的________。