MySQL理论基础
2018-09-04 本文已影响0人
菜鸟白泽
1.(多选题)关于SQL和MySQL的说法正确的有哪些()。
- A. SQL全称Structured Query Language,是MySQL数据库专用的操作语言,其它 RDBMS 无法使用。
- ==B. SQL语句分为四类:DDL、DML、DQL、DCL。==
- ==C. MySQL命令行环境中,可以使用source命令执行一个脚本文件中的所有SQL语句。==
- D. MySQL脚本文件中,可以使用//和/**/两种注释。
解析:A 项 RDBMS 是关系型数据库,MySQL就是关系型数据库;D项 MySQL 的注释分为 # 单行注释 和 /**/ 多行注释
2.(多选题)假设员工表emp有eid/ename/salary三列,没有特别的约束,则下列INSERT语句语法正确的有:()
- A. INSERT INTO emp VALUES(10, 'TOM');
- ==B. INSERT INTO emp(eid,ename) VALUES(20, 'MARY');==
- C. INSERT INTO emp VALUES(30, 40, 50),('JIM','JERRY','JANE'),(7000,8000,9000);
- ==D. INSERT INTO emp VALUES(60, 'TOM', 6000), (70, 'TOM', 7000), (80, 'TOM', 8000);==
解析:A 项中少 salary 列;C 项括号里的值分别为eid/ename/salary三列,不是(eid,eid,eid),(ename,ename,ename),(salary,salary,salary),这样执行是会出错的
3.(多选题)假设所需表和列都存在,则下列查询语句语法及语义错误的有:
- A. SELECT * FROM emp ORDER BY salary DESC, ename ASC;
- ==B. SELECT ename AS n salary AS s FROM emp;==
- ==C. SELECT ename FROM emp WHERE 30>eid>10;==
- D. SELECT COUNT(*) FROM emp GROUP BY dept_id;
解析:B 项对列进行别名设置,需要用逗号分隔;C 项中的 eid 不是值得范围,而是单个的值
4.(单选题)下列语句哪句不属于DML语句()。
- A. INSERT
- B. DELETE
- C. UPDATE
- ==D. SELECT==
解析:Data Manipulate Language,操作数据,即增删改,不包括查询
5.(多选题)关于MySQL列约束的下列描述中正确的有()
- A. 主键约束会影响表的查找操作执行效率,应当谨慎使用
- ==B. 外键约束会影响表的插入操作执行效率,应当谨慎使用==
- C. 一个表可以声明多个主键列
- ==D. 一个表可以声明多个外键列==