♣ 题目部分 在Oracle中,V$SYSSTAT中的CLASS列分别代表什么?...♣ 答案部分 V$SYSSTAT列代表统计类别,其值为1代表事例活动;值为2代表Redo buffer活动;值为4代表锁;值为8代表数据缓冲活动;值为16代表OS活动;值为32代表并行活动;值为64代表表访问...本文选自《Oracle程序员面试笔试宝典》,作者:小麦苗
♣ 题目部分 在Oracle中,如何获取用户的权限?...♣ 答案部分 若要获取一个用户的角色、系统权限、对象权限以及列权限,则可以通过以上介绍的数据字典视图来获取也可以通过DBMS_METADATA.GET_GRANTED_DDL来获取。...可以直接运行EXEC_SQL列来创建用户并赋予相应的权限。...另外还可以通过exp或expdp来获取用户的权限,这里不再演示。...& 说明: 有关权限的更多内容可以参考我的BLOG:http://blog.itpub.net/26736162/viewspace-2140775/ 本文选自《Oracle程序员面试笔试宝典》,作者:
♣ 题目部分 在Oracle中,如何获取trace文件的路径?...♣ 答案部分 跟踪文件(Trace File)一般位于“user_dump_dest”参数所指定的目录中,具体路径可以通过以下几种方式查询获得。.../app/oracle/diag/rdbms/lhrdb/lhrdb/trace/lhrdb_ora_19660944.trc 2、Oracle 11g可以通过查询V$DIAG_INFO获取 SYS@.../app/oracle/diag/rdbms/lhrdb/lhrdb/trace/lhrdb_ora_19660944.trc 3、oradebug tracefile_name获取 SYS@lhrdb....trc & 说明: 有关获取trace文件的更多内容可以参考我的BLOG:http://blog.itpub.net/26736162/viewspace-2125659 本文选自《Oracle程序员面试笔试宝典
♣ 题目部分 在Oracle中,如何获取集群的名称(Cluster name)?...♣ 答案部分 集群名称信息是记录在OCR中的,因此可以通过转储OCR的方法来获得集群名称,另外,也可以使用cemutlo工具直接查看集群名称信息,如下所示: [root@raclhr-11gR2-N1...vendor_info> [root@raclhr-11gR2-N1 ~]# cemutlo -n raclhr-cluster 其实在$CRS_HOME/cdata/CLUSTER_NAME/目录中也可以看到...CLUSTER_NAME,这个目录是用作OCR备份的。...[root@raclhr-11gR2-N1 ~]# cd $ORACLE_HOME/cdata [root@raclhr-11gR2-N1 cdata]# ll total 2740 drwxr-xr-x
题目部分 在Oracle中,V$SESSION视图中有哪些比较实用的列? 答案部分 讲到Oracle的会话,就必须首先对V$SESSION这个视图中的每个列都非常熟悉。...该视图在Oracle 11gR2下包含97列,在Oracle 12cR2下增加了6列,共包含103列。下面作者以表格的形式对这个视图中的重要列做详细说明。...USERNAME VARCHAR2(30) Oracle用户名。 COMMAND NUMBER 正在执行的SQL语句类型(分析的最后一个语句)。...关于该列值的含义,请参阅V$SQLCOMMAND.COMMAND列。如果该列的值为0,那么表示并没有在V$SESSION视图里记录。...OWNERID NUMBER 如果值为2147483644,那么此列的内容无效,否则此列包含拥有可移植会话的用户标符。
♣ 问题 在Oracle中,在没有配置ORACLE_HOME环境变量的情况下,如何快速获取数据库软件的ORACLE_HOME目录?...♣ 答案 若配置了ORACLE_HOME环境变量,则可以通过“echo $ORACLE_HOME”来直接获取,如下所示: [oracle@edsir4p1-PROD2 ~]$ echo $ORACLE_HOME...Production 若没有配置ORACLE_HOME环境变量,则可以通过“more /etc/oratab”来直接获取,如下所示: [oracle@edsir4p1-PROD2 ~]$ more..._1:N 若数据库已启动监听程序,则可以通过“ps -ef|grep tns”来直接获取,如下所示: [oracle@edsir4p1-PROD2 ~]$ ps -ef|grep tns oracle...0 05:48 pts/2 00:00:00 grep tns 另外,若在同一个主机上,安装了不同版本的数据库软件,则可以通过pmap命令来查看ORACLE_HOME的路径,pmap提供了进程的内存映射
♣ 题目部分 在Oracle中,虚拟列索引(Virtual Column Indexes)的作用是什么?...♣ 答案部分 在Oracle 11g之前的版本中,如果需要使用表达式或者一些计算公式,那么需要创建数据库视图;如果需要在这个视图上使用索引,那么会在表上创建基于函数的索引。...虚拟列是Oracle 11g新引入的一项技术,虚拟列是一个表达式,在运行时计算,不存储在数据库中,不能更新虚拟列的值。...③ 可以通过视图DBA_TAB_COLS的DATA_DEFAULT列来查询虚拟列的表达式,当创建了虚拟列索引(其实是一种函数索引)后,在视图DBA_IND_EXPRESSIONS中不能查询索引列。...⑪ 在已经创建的表中增加虚拟列时,若没有指定虚拟列的字段类型,则Oracle会根据关键字“GENERATED ALWAYS AS”后面的表达式计算的结果自动设置该字段的数据类型。
♣ 题目部分 在Oracle中,如何列举某个用户下所有表的注释及列的注释?...♣ 答案部分 可以使用DBA_TAB_COMMENTS视图来查询表的注释,使用DBA_COL_COMMENTS视图来查询列的注释。...它们的示例分别如下所示: 某个用户下所有表的注释: SELECT D.OWNER, D.TABLE_NAME, D.COMMENTS FROM DBA_TAB_COMMENTS D WHERE D.OWNER...某个用户下某个表的所有列的注释: SELECT D.OWNER, D.TABLE_NAME,D.COLUMN_NAME, D.COMMENTS FROM DBA_COL_COMMENTS D WHERE...& 说明: 有关Oracle数据字典的更多内容可以参考我的BLOG:http://blog.itpub.net/26736162/viewspace-2153324/ 本文选自《Oracle程序员面试笔试宝典
♣ 题目部分 在Oracle中,可以从exp出来的dmp文件获取哪些信息? ♣ 答案部分 在开发中常常碰到,需要导入dmp文件到现有数据库。...这里的dmp文件可能来自于其它系统,所以,一般情况下是不知道导出程序(exp)的版本、导出时间或者导出模式等信息的。那么如何从现有的dmp文件中获取到这些信息呢?下面作者将一一讲解。...(一)获取基本信息:导出的版本、时间、导出的用户 下面的示例中exp_ddl_lhr_02.dmp是生成的dmp文件: [ZFZHLHRDB1:oracle]:/tmp>strings exp_ddl_lhr...#C#G #C#G +00:00 BYTE UNUSED (二)获取dmp文件中的表信息 下面的示例中,exp_ddl_lhr_02.dmp是生成的dmp文件: [ZFZHLHRDB1:oracle...其中,软件Pilotedit可以轻松打开上G的文件。示例如下: ? 需要注意的是,十六进制在Linux和Windows下顺序不同。
♣ 题目部分 在Oracle中,如何获取timestamp类型的精度到纳秒级?...♣ 答案部分 秒(s)的单位都有毫秒(ms,millisecond),微秒(μs,microsecond),纳秒(ns,nanosecond),它们之间的换算单位为千进制,1s(秒)=10^3ms(毫秒...使用如下方式可以获取timestamp类型的精度到纳秒级: SYS@lhrdb> select to_char( localtimestamp,'yyyy-mm-dd hh24:mi:ss.ff3')...--------------------------------------------------------------- 2019-03-11 16.04.15.796101000 本文选自《Oracle
题目部分 在Oracle中,一致性备份和非一致性备份的区别有哪些?...答案部分 一致性备份(Consistent Backup)是指备份集所包含的各个文件都具备相同的系统变化编号(System Change Number,SCN)。...也就是说,备份所包含的各个文件中的所有数据均来自同一时间点。...在一致性备份中,只有只读表空间(Read-Only Tablespace)及脱机表空间(Offline Tablespace)的Scn可以比备份中其他文件的Scn滞后。...在NOARCHIVELOG模式下,Oracle不会对重做日志进行归档,因此恢复所需的重做日志可能已经不存在了。
♣ 题目部分 在Oracle中,如何在不执行SQL的情况下获取执行计划? ♣ 答案部分 1、“EXPLAIN PLAN FOR SQL”不实际执行SQL语句,生成的计划未必是真实执行的计划。...2、SQL*Plus的AUTOTRACE功能,命令:SET AUTOTRACE TRACEONLY EXPLAIN。...除SET AUTOTRACE TRACEONLY EXPLAIN外其它的AUTOTRACE方式均实际执行SQL。...但是,如果该命令后执行的是DML语句,那么该DML语句是确实被Oracle实际执行过的。 本文选自《Oracle程序员面试笔试宝典》,作者:李华荣。
♣ 题目部分 在Oracle中,归档和非归档模式之间的不同点是什么?它们各自的优缺点是什么? ♣ 答案部分 在Oracle数据库中,数据库可以设置为归档模式和非归档模式。...非归档模式则相反,不能恢复到任意一个时间点,但是非归档模式可以带来数据库性能上的少许提高,因为非归档模式没有归档日志。...DBA必须做出的一个重要决策是将数据库配置为在ARCHIVELOG模式下运行还是将其配置为在NOARCHIVELOG模式下运行。。...4)当执行数据库备份时,必须备份数据库的所有数据文件和控制文件。 归档和非归档模式有以下几点区别: l 在NOARCHIVELOG模式下,每次进行日志切换时都会覆盖联机重做日志文件。...l 在大多数情况下,数据库处于NOARCHIVELOG模式(默认模式)时,只能恢复到最后一次备份时的状态。在该备份之后执行的所有事务处理都会丢失。
♣ 题目部分 在Oracle中,一致性备份和非一致性备份的区别有哪些?...♣ 答案部分 一致性备份(Consistent Backup)是指备份集所包含的各个文件都具备相同的系统变化编号(System Change Number,SCN)。...也就是说,备份所包含的各个文件中的所有数据均来自同一时间点。...在一致性备份中,只有只读表空间(Read-Only Tablespace)及脱机表空间(Offline Tablespace)的Scn可以比备份中其他文件的Scn滞后。...在NOARCHIVELOG模式下,Oracle不会对重做日志进行归档,因此恢复所需的重做日志可能已经不存在了。
档案袋可类比于数据库,成绩表可类比于数据库中的表,而李主任则类比于数据库服务器。开学来了老师们都要联系李主任去拿档案袋,我们在使用数据库时也要首先连接数据库。...在当今的互联网中,最常见的数据库模型主要是两种,即关系型数据库和非关系型数据库。...3 数据库的组成 数据库是相关数据的集合,一个数据库通常包含如下组成部分: 数据表(Table):简称表,由一组数据记录组成,数据库中的数据是以表为单位进行组织的。...表中的每一列称为一个字段,每个字段都有相应的描述信息,如数据类型、数据宽度等。成绩表中 排名、 姓名、语文、数学、英语、总分 都是字段。...查询(Query):一条 SQL 指令用来从一个或多个表中获取一组指定的记录,或者对某个表执行指定的操作。
在Oracle开发中,客户端把SQL语句发送给服务器,服务器对SQL语句进行编译、执行,把执行的结果返回给客户端。...数据定义语言,表的增删改操作,数据的简单查询,事务的提交和回滚,权限的授权和撤销等,Oracle与MySQL在操作上基本一致。...二、数据类型讲解 Oracle数据库的核心是表,表中的列使用到的常见数据类型如下: 类型 含义 CHAR(length) 存储固定长度的字符串。...Oracle的查询中,必须使用“select 列… from 表”的完整语法,当查询单行函数的时候,from后面使用DUAL表,dual表在系统中只有一行一列,该表在输出单行函数时为了select…from...in (‘男’,‘女’)) ); – SQL语句结束 我们添加一个 英文状态下的 ; 四、DML语句 DML数据操作语言:通过SQL来实现数据的插入、修改和删除操作,在Oracle中常用的数据操作语音有
语法 SQL对数据库的表进行操作 SQL创建表 查看表 查看某个数据库下的所有表 在test数据库中查看mysql数据库中的表 查看某个表的结构信息 删除表 修改表 添加列 修改列类型,长度和约束...查询姓李的学生的信息,按照英语成绩降序 分组统计查询 聚合函数的使用 sum() 获取所有学生英语成绩的总和 获取所有学生英语成绩和数学成绩的总和 获取姓李的学生英语成绩总和 获取所有学生各科的总成绩...),在数据库中会创建很多张表(一个实体会创建一个表),在表中会有很多记录(一个对象实例回添加一条新的记录) ---- sql简介 SQL全称是“结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询...主键约束默认就是唯一 非空的 唯一约束:unique 非空约束: not null 建表语句: create database web_test1; use web_test1; create table...like '李_' :名字必须是两个字,必须姓李 like '李%': 必须是姓李的学生,李字后面可以跟任意个字符 like '%四': 名字中以四结尾的 like '%王%': 只要名称中包含这个王字即可
【SQL必知必会】003-基础篇:DBMS的前世今生 一、概述 SQL 语言:两个 IBM 研究员在 1974 年发表了一篇有关结构化英语查询语言的论文,并将这门语言命名为 SEQUEL。...后来有一个重量级的公司基于那篇论文研发出了商业化的数据库管理软件,这就是 Oracle。SQL 语言是数据库管理系统(DCMS)的通用语言!...2、数据库简介 关系型数据库 关系型数据库(RDBMS)就是建立在关系模型基础上的数据库,SQL 就是关系型数据库的查询语言; 非关系型数据库 相比于 SQL,NoSQL 泛指非关系型数据库,包括了榜单上的键值型数据库...列式数据库 列式数据库是相对于行式存储的数据库,Oracle、MySQL、SQL Server 等数据库都是采用的行式存储(Row-based),而列式数据库是将数据按照列存储到数据库中,这样做的好处是可以大量降低系统的...2008 年被 SUN 收购,然后在 2010 年 SUN 被 Oracle 收购,于是 Oracle 同 时拥有了 MySQL 的管理权,至此 Oracle 在数据库领域中成为绝对的领导者。
♣ 题目部分 在Oracle中,对于一个NUMBER(1)的列,如果查询中的WHERE条件分别是大于3和大于等于4,那么这二者是否等价? ♣ 答案部分 首先对于查询结果而言,二者没有任何区别。...ID">=4”,所以,在非SYS用户下,最终的执行计划中会有“filter(NULL IS NOT NULL)”的谓词条件。...② 在使用索引的时候,由于Oracle索引结构的特点,两者扫描的节点都是从4开始,在执行计划、逻辑读和执行时间等各方面都不存在性能差异。...对于后者,由于查询的条件违反了CHECK约束,因此Oracle在执行计划前面增加了一个FILTER,使得整个查询不需要在执行,因此这个查询不管表中数据有多少,都会在瞬间结束。...而对于大于3这种情况,虽然根据CHECK的约束和列定义,可以推断出这条查询不会返回任何记录,但是Oracle的优化器并没有聪明到根据列的精度来进行分析,因此这个查询会执行全表扫描。
不包含在候选码中的属性称为非主属性或非码属性。简单的情况下,候选码只包含一个属性。最坏情况下,关系模式的所有属性是这个关系模式的候选码,称为全码。...,它要求两个关系进行比较的分量必须是同名的属性组,并且在结果中把重复的属性列去掉。...和S(Y,Z),其中X、Y、Z为属性组,R中的Y与S中的Y可以有不同的属性名,但必须出自相同的域集; ② 元组在X上的分量值x的象集K要包含S在Y上投影的集合,满足前面条件的元组在X属性上的投影就是R除以...(y1),(y3)}; ② 元组在X上的分量值x的象集有两组; x1的象集K1={(y1),(y2),(y3)} x2的象集K2={(y3),(y5)} ③ 从①②得知只有象集K1包含了S在(Y)上的投影...沈飞 数学 高俊 物理 袁晓 英语 ⑷ BCNF 定义:设R为任一给定关系,X、Y为其属性集,F为其函数依赖集,若R为3NF,且其F中所有函数依赖X → Y(Y不属于X)中的X必包含候选关键字,则R
领取专属 10元无门槛券
手把手带您无忧上云