MySQL数据库试题
1.已知库表t_test中有以下记录
1 | 2005-05-09 | 优 | 98.1 |
2 | 2005-05-09 | 优 | 89.5 |
3 | 2005-05-09 | 优 | 86.5 |
4 | 2005-05-09 | 良 | 77.1 |
5 | 2005-05-10 | 良 | 75.3 |
6 | 2005-05-10 | 良 | 71.1 |
7 | 2005-05-10 | 及格 | 65.2 |
1)请写出构建t_test的SQL语句:
CREATE TABLE test.t_test (
id int(4) UNSIGNED NOT NULL AUTO_INCREMENT,
time date(3) NOT NULL,
state varchar(20) NOT NULL,
score float(20, 1) NOT NULL,
PRIMARY KEY (id)
);
2)根据上述记录内容,请写出插入t_test表的SQL语句(一条即可)
INSERT INTO t_test VALUES(1,'2005-05-09','优',98.1);
3)用一条语句,从表中查出优和良,各多少条记录,平均分各是多少?
SELECT state,COUNT(1),AVG(score) FROM t_test GROUP BY state HAVING state IN('优','良');
4)把及格记录的日期改为2005-05-11
UPDATE t_test SET time='2005-05-11' WHERE state = '及格';
2.修改mysql用户root密码的指令是什么( )B
A.mysql -u root password test
B.mysqladmin -u root password test
C.mysql -u root -p test
D.mysql -u -password test
3.现有一个关系:借阅(书号,书名,库存数,读者号,借期,还期)假如同一本书允许一个读者多次借阅,但不能同日对同一本书借多本,则该关系模式的主键是()D
A.书号 B.读者号 C.书号+读者号 D.书号+读者号+借期
4.int类型字段需要占用多少存储空间()A
A.4bytes B.1byte C.8bytes D.16bytes
5.在第一次启动时,mysql_install_db脚本初始化MySQL系统,这个脚本创建()个数据库 A
A.mysql和test B.user和test C.mysql和user
6.简述sql语句中Truncate和delete的区别
Truncate是DDL,执行后自动提交,无法回滚;delete是DML,执行后不自动提交
Truncate不能用于参与了索引视图的表
Truncate table test执行更快,清空物理文件,清空表中的所有内容
delete from test是逻辑删除,按行删除,而且可以通过where语句选择要删除的行
7.在SQL中,建立、修改和删除数据库中基本表结构的命令分别为create、alter、drop
8.mysql数据库的默认端口是3306
9.NULL是指() A
A.无任何值 B.0 C.空格 D.空字符
10.SQL语言引入了视图的概念,下列说法正确的是()C
A.视图有若干表组成,独立存储在数据库中
B.视图的存在提高了并发程度
C.视图与基本表的最大区别在于它是逻辑定义的虚表
D.视图简化用户观点,但不提高查询效率
11.当事务执行出现“死锁”时,系统执行()操作 C
A.SAVE B.REDO C.ROLLBACK D.COMMIT
12.下面哪个SQL语法是错误的()B
A.select * from TableA
B.insert TableA set······
C.update TabelA set ······
D.delete from TableA
13.要在Oracle中定义SQL查询,下列哪个数据库对象不能直接从select语句中引用()C
A.表 B.序号 C.索引 D.视图
14.Mysql备份命令?Mysql如何对smart用户授权访问,密码为123456,请写出命令
mysqldump -h主机名 -P端口 -u用户名 -p密码 –database 数据库名 > 文件名.sql
GRANT ALL ON \*.* TO smart@'%' IDENTIFIEF BY '123456'
15.简单说一下mysql忘记面后该如何处理?
1)停止mysql服务
2)在mysql配置文件里[mysqld]下添加skip-grant-tables(/etc/mysql/mysql.conf.d/mysqld.cnf)
3)重启服务,进入mysql
4)修改密码:update mysql.user set password=PASSWORD('123456') where User='root';
5)刷新权限:flush privileges;
6)成功后,退出,删除掉刚才的配置命令,重启服务