《2022年数据库基础知识测试-答案实用 .pdf》由会员分享,可在线阅读,更多相关《2022年数据库基础知识测试-答案实用 .pdf(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Oracle 测试题1.忘记了 system(sys)密码,该怎么做?SQLPLUS /NOLOG CONN /AS SYSDBA ALTER USER SYSTEM IDENTIFIED BY orcl; 2.如何查看数据文件位置?SELECT NAME FROM v$datafile; 3.如何查看控制文件位置?SELECT NAEM FROM v$controlfile; 4.如何查看日志文件位置?SELECT NAME FROM v$logfile; 5.如何查看参数文件?SELECT * FROM v$controlfile_record_section; 6.如何建立表空间?CRE
2、ATE TABLESPACE ts01 DATAFILE D:DataBaseOracle11goradataorcltest_db01.dbf SIZE 100M AUTOEXTEND ON NEXT 100M MAXSIZE 1024M DEFAULT STORAGE (INITIAL 10m NEXT 1M) PERMANENT ONLINE LOGGING; 7.如何修改表空间?ALTER TABLESPACE ts01 NOLOGGING; 8.如何给表空间增加数据文件?ALTER TABLESAPCE ts01 ADD DATAFILE D:DataBaseOracle11gora
3、dataorcltest_db02.dbf SIZE 100M REUSE AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED; 9.删除表空间?如何删除表空间并一道删除数据文件?DROP TABLESPACE ts01; DROP TABLESPACE ts01 INCLUDING CONTENTS AND DATAFILES; 10.在指定的表空间中建表?CREATE TABLE student( s_id VARCHAR2(10), s_name VARCHAR2(20) )TABLESPACE ts01; 11.如何查看表结构?12.如何给存在的表增加注
4、释?COMMENT ON TABLE student IS 学生信息表 ; 13.如何查看表注释?SELECT * FROM USER_TAB_COMMENTS WHERE TABLE_NAME=STUDENT; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 6 页 - - - - - - - - - SELECT * FROM ALL_TAB_COMMENTS WHERE TABLE_NAME=STUDENT; 14.如何给存在的表中的字段增加注释?COMMENT O
5、N COLUMN STUDENT.s_id IS 学生编号 ; 15.查看表字段注释?SELECT * FROM USER_COL_COMMENTS WHERE TABLE_NAME=STUDENT; SELECT * FROM ALL_COL_COMMENYS WHERE TABLE_AME=STUDENT; 16.查看用户所有的表?SELECT * FROM User_Tables; 17.查看用户拥有的所有对象?SELECT * FROM User_Object; 18.查看用户拥有的表、视图、序列?SELECT * FROM User_Catalog; 19.如何修改表字段?ALTER
6、 TABLE student MODIFY(student_id CHAR(15); 20.如何给表增加一个字段?ALTER TABLE student ADD(age NUMBER(2); 21.如何删除表字段?ALTER TABLE student DROP COLUMN s_name; 22.如何修改表名称?RENAME student TO stu; 23.如何删除一个表?DROP TABLE student; 24.如何给一个表增加一条记录?INSERT INTO student (s_id,s_name) values (s1000,name1); 25.如何修改表的记录?UPDA
7、TE student SET s_name=name2 WHERE s_id=s1000; 26.如何删除表的记录?DELETE FROM student WHERE s_id=s1000; 27.如何截断表?TRUNCATE TABLE student; 28.如何提交事务?COMMIT; 29.如何回滚事务?ROLLBACK; 30.如何设置回滚点?SAVEPOINT point1; 31.如何回滚到指定的回滚点?ROLLBACK TO point1; 32.建表的同时创建唯一约束、主键约束、非空约束、检查约束、外键约束?CREATE TABLE student( s_id VARCHAR
8、2(10), s_name VARCHAR2(20), age NUMBER(3), s_birthday DATE; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 6 页 - - - - - - - - - CONSTRAINT s_name_uk UNIQUE(s_name), CONSTRAINT s_id_pk PRIMARY KEY (s_id), )TABLESAPCE ts01; 33.如何查看唯一约束、主键约束、非空约束、检查约束?SELECT tabl
9、e_name,constraint_name,contraint_type FROM User_Constraint WHERE table_name=STUDENT; 34.如何给已创建表增加唯一约束、主键约束、检查约束、外键约束?ALTER TABLE student ADD CONSTRAINT s_id_fk PRIMARY KEY(s_id); 35.已创建的表能增加一个非空约束吗?36.如何关闭一个约束?ALTER TABLE student DISABLE CONSTRAINT s_team_id_fk; 37.如何启用一个约束?ALTER TABLE student ENABL
10、E CONSTRAINT s_team_id_fk; 38.如何删除一个约束?ALTER TABLE student DROP CONSTRAINT s_team_id_fk;39.常见 SQL 语句的分类和分类下语句分别是?数据检索select 查询记录数据操纵语言 (DML) insert添加 update 修改 delete 删除数据定义语言 (DDL) create 创建alter 修改 drop 删除 rename 重命名truncate 截断事务控制commit 提交事务rollback 回滚事务savepoint 设置保存点数据控制语言grant 授予权限revoke 撤销权限4
11、0.Oracle 系统权限有哪些?作用是什么?41.Oracle 的对象权限有哪些?分别作用于哪些对象?42.如何创建一个用户?如何在创建的同时指定默认表空间?create user chenhao identified by chenhao2411 default tablespace chenhao_tablespace; 43.如何修改用户密码?ALTER USER chenhao IDENTIFIED BY chenhao; 44.如何修改用户表空间配额?45.如何回收表空间配额权限?46.如何删除用户?DROP USER u01; 47.如何切换连接数据库的用户?CONNECT u0
12、1/p01; conn u01/p01; 48.如何给用户授予系统权限?49.如何给用户授予某个指定对象的权限?GRANT CREATE TABLE TO u01; 50.如何收回用户权限?REVOKE CREATE TABLE FROM u01; 51.如何创建角色?CREATE ROLE r01; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 6 页 - - - - - - - - - 52.如何给角色授权?GRANT CREATE SESSION,CREATE T
13、ABLE TO r01; 53.如何收回角色权限?REVOKE CREATE TABLE FROM r01; 54.如何查看角色权限?SELECT ROLE,PRIVILEGE FROM role_sys_privs WHERE ROLE=r01; 55.如何赋予用户角色权限?GRANT r01 TO u01; 56.如何查看当前用户角色?SELECT * FROM user_role_privs; 57.如何删除角色?DROP ROLEr01; 58.什么是数据、数据库、数据库管理系统?数据:数据库:一组表的集合数据库管理系统:操作数据库的一个系统59.什么是 E-R 图? E-R 图中存在
14、哪些关系?实体关系图一对一,一对多,多对多60.什么笛卡尔积?什么语句在执行时会出现该结果?由没有联接条件的表关系返回的结果为笛卡尔积。在进行多表查询时没有WHERE子句,第一个表中的每个行将会与第二个表中的每个行配对。61.如何检索单个列、多个列、所有列?SELECT prod_name FROM Products; SELECT prod_id,prod_name,prod_price FROM Products; SELECT * FROM Products; 62.如何对检索数据进行排序?能否按照多个列进行排序?SELECT prod_name FROM Products ORDER
15、BY prod_name; SELECT prod_id,prod_price,prod_name FROM Products ORDER BY prod_price,prod_name; 63.能否使用非检索列进行排序?能否按照检索列序号进行排序?SELECT prod_id,prod_price,prod_name FROM Products ORDER BY 2,3; 64.如何制定排序方向?SELECT prod_id,prod_price,prod_name FROM Products ORDER BY prod_price DESC; 65.如何查询班级中年龄在20-30 之间的学
16、生(两种方法)?名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 6 页 - - - - - - - - - SELECT * FRON student WHERE age BETWEEN 20 AND 30; 66.如何查询某列值为空的记录?SELECT * FROM Products WHERE prod_name IS NULL AND prod_name=; 67.详细描述 WHERE 子句中 AND 和 OR?AND 表示同时满足条件的所有记录OR 表示只要满足其
17、中一个条件的所有记录68.详细描述IN 和 NOT 语句?IN 表示满足它包含条件的所有记录NOT 表示不满足所跟条件的所有记录69.如何查询姓“张”的学生?SELECT * FROM student WHERE s_name LIKE 张%; 70.如何查询电子邮件名称只有一个字母的学生?SELECT * FROM student WHERE email LIKE -; 71.如何查询让字段“省” “市” “县”的信息合并成“地址”?SELECT RTRIM(sheng) | RTRIM(shi) | RTRIM(xian) AS address FROM address_message;
18、72.如何为“表”和“字段”起别名?SELECT s_id AS 学号FROM student; 73.记录中“数学成绩” “语文成绩” ,如何查询每个人的“总成绩”?SELECT maths_score + chinese_score AS sum_score FROM student WHERE s_id=1; 74.在 MySQL 和 Oracle 中如何插入当前时间?75.如何插入“ 2012-08-18 08:08:08 ”到 MySQL 和 Oracle 中?76.如何查询出一条给定的查询语句执行后的总记录数?77.COUNT 函数如何让其忽略掉某个字段的NULL 值?(不允许使用
19、WHERE 子句)?SELECT COUNT(COLUMN) AS num_cust FROM student; 78.如何查询班级数学的平均分?如何让分数相同的只参与计算一次?SELECT AVG(maths_score) AS avg_score FROM student; SELECT AVG(DISTINCT maths_score) AS avg_score FROM student; 79.聚集函数中哪些会忽略NULL 字段?请详细描述。AVG() 对具体的列会忽略NULL 字段COUNT() 对具体的列会忽略NULL 字段MAX() 会忽略列值为NULL 的行MIN() 会忽略列
20、值为NULL 的行SUM() 会忽略列值为NULL 的行80.如何一次查询出班级的总人数,语文的平均成绩?SELECT COUNT(*) AS sum_people, AVG(chinese_score) AS avg_score FROM student; 81.查询每个供货商供应的产品总数?(查询产品表)SELECT COUNT(*) AS num_prods FROM Products WHERE vend_id=DLL01; 82.查询有 2 笔以上交易的用户信息?(查询交易表和用户表)SELECT cust_name,cust_contact FORM Customers WHERE
21、 cust_id 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 6 页 - - - - - - - - - =(SELECT COUNT(*) AS orders FROM Orders HAVING COUNT(*)2); 83.SELECT 语句中所有可出现的子句及其顺序?SELECT ,FROM ,WHERE, GROUP BY, HAVING , ORDR BY 84.什么是内连接?基于两个表之间的相等测试。85.什么是自连接?86.什么是外连接?请详细说明左外连接、右外连接和全外连接的区别并举例说明?87.使用外连接查询每个客户的名称以及他们的交易总数?(需要使用客户表和交易表)88.如何删除表中的重复记录(只保留重复记录中的任意一条)?名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 6 页 - - - - - - - - -