首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【DB笔试面试520】OracleOracleDBLINK是什么

♣ 题目部分 OracleOracleDBLINK是什么?...其实,DBLINK和数据库VIEW差不多,创建DBLINK时候需要知道待读取数据库IP地址、ORACLE_SID以及数据库用户名和密码。...DROP PUBLIC DATABASE LINK两个权限: GRANT CREATE PUBLIC DATABASE LINK,DROP PUBLIC DATABASE LINK TO SCOTT; 查询数据库.../密码,然后本地数据库通过DBLINK访问远程数据库“TNS_BJLHR”SCOTT.TB_TEST表,SQL语句如下所示: SELECT * FROM SCOTT.TB_TEST@DBL_BJLHR...; 创建DBLINK第二种方式,是本地数据库tnsnames.ora文件没有配置要访问远程数据库时候,而直接将相关内容写到DBLINK配置,如下所示: CREATE DATABASE LINK

1.7K20
您找到你想要的搜索结果了吗?
是的
没有找到

【DB笔试面试776】Oracle,SCN是什么

♣ 题目部分 Oracle,SCN是什么? ♣ 答案部分 SCN(System Change Number,系统改变号)是一个由系统内部维护序列号,在数据库全局是唯一。...当系统需要更新时候自动增加,它是系统维持数据一致性和顺序恢复重要标志,是数据库中非常重要一种数据结构。...SCN是某个时间点定义数据库已提交版本时间戳标记,Oracle为每个已提交事务分配一个唯一SCN。SCN值是对数据库进行更改逻辑时间点。SCN是一个只会增加、不会减少数字。...由于SCN描述是数据一致性状态,所以,它会在各种涉及数据一致性场合起到重要作用。...本文选自《Oracle程序员面试笔试宝典》,作者:小麦苗 ?

67230

Oracle 查询和 connect by

Oracle 查询和 connect by 使用 connect by 和 start with 来建立类似于树报表并不难,只要遵循以下基本原则即可: 使用 connect by 时各子句顺序应为...: select from where start with connect by order by prior 使报表顺序为从根到叶(如果 prior 列是父辈)或从叶到根(如果 prior 列是后代...where 子句可以从树中排除个体,但不排除它们子孙(或者祖先,如果 prior 列是后代)。...connect by 条件(尤其是不等于)消除个体和它所有的子孙(或祖先,依赖于怎样跟踪树)。 connect by 不能与 where 子句中表连接在一起使用。 下面是几个例子 1....排除个体,但不排除它们子孙 SELECT n_parendid, n_name, (LEVEL - 1), n_id FROM navigation WHERE n_parendid IS NOT NULL

1.2K70

oracle如何优雅递归查询

一条sql怎么查出单表中含有父子关系数据呢?...tab.name, '\' ) FROM tab WHERE LEVEL = 3 CONNECT BY PRIOR tab.id = tab.parid image.png 还有其他更优雅写法吗...,需要注意是如果with后面的值是子节点那么求出就是他父节点和祖宗节点,如果是父节点那么求出就是他子节点和子孙节点,如果不懂可以把上面start with 后面的条件改成 p.parent=0...关键词prior,prior跟它右边父节点放在一起(prior p.parent)表示往父节点方向遍历, 反之,如果 prior跟子节点放在一起(prior p.id)表示往叶子方向遍历。...这里需要注意 =p.id 放在prior关键词前面或者后面都没什么关系,也就是上面可以这样写 p.id= prior p.paren。重要是prior旁边放

10.7K62

【DB笔试面试550】Oracle,函数索引是什么

♣ 题目部分 Oracle,函数索引是什么?...♣ 答案部分 Oracle,有一类特殊索引,称为函数索引(Function-Based Indexes,FBI),它基于对表列进行计算后结果创建索引。...函数索引不修改应用程序逻辑基础上提高了查询性能。如果没有函数索引,那么任何在列上执行了函数查询都不能使用这个列索引。当在查询包含该函数时,数据库才会使用该函数索引。...对于函数索引索引列函数查询可以通过视图DBA_IND_EXPRESSIONS来实现,通过如下SQL语句可以查询所有的函数索引: SELECT * FROM DBA_INDEXES D WHERE...② 如果被函数索引所引用用户自定义PL/SQL函数失效了或该函数索引属主没有了函数索引里面使用函数执行权限,那么对这张表上执行所有的操作(例如SELECT查询、DML等)也将失败(会报错:

1.5K10

【DB笔试面试557】Oracle,压缩索引是什么

♣ 题目部分 Oracle,压缩索引是什么? ♣ 答案部分 Oracle数据库可以使用键压缩(Key Compression)来压缩B-Tree索引或索引组织表主键列值部分。...键压缩可以大大减少索引所使用空间,使用了键压缩索引称为压缩索引。对索引进行压缩更多意义在于节省存储空间,减少I/O时间。...压缩也是会引入存储开销,只是很多时候压缩节省空间比压缩需要存储开销更大,所以压缩以后整体存储开销减小了。...可以使用如下SQL将索引重建为压缩或非压缩索引: ALTER INDEX EMPLOYEE_LAST_NAME_IDX REBUILD NOCOMPRESS;--非压缩 ALTER INDEX EMPLOYEE_LAST_NAME_IDX...'; 本文选自《Oracle程序员面试笔试宝典》,作者:李华荣。

61720

【DB笔试面试551】Oracle,位图索引是什么

♣ 题目部分 Oracle,位图索引是什么? ♣ 答案部分 位图索引(Bitmap Indexes)是一种使用位图特殊数据库索引。它针对大量相同值列而创建,例如:类别、型号等。...传统B-Tree索引,一个索引条目指向单个行,但是在位图索引,每个索引键存储指向多个行指针。相对于B-Tree索引,位图索引占用空间非常小,创建和使用速度非常快。...位图索引与其它索引不同,它不是存储索引列列值,而是以比特位0、1形式存储,所以空间上它占空间比较小,相应一致性查询所使用数据块也比较小,查询效率就会比较高。...所以,一般应用于即席查询和快速统计条数。由于位图索引本身存储特性限制,所以,重复率较低列或需要经常更新列上是不适合建立位图索引。另外,位图索引更新列更容易引起死锁。...可以使用如下SQL语句查询数据库所有位图索引: SELECT * FROM DBA_INDEXES D WHERE D.INDEX_TYPE='BITMAP'; 本文选自《Oracle程序员面试笔试宝典

1.6K20

Oracle分组查询与DML

1、Group by 进行分组查询, group by 子句可以将数据分为若干个组 1.1 分组查询 注意: 出现在 SELECT 子句中字段,如果不是包含在多行函数,那么该字段必须同时...1.2 带 where 分组查询 注意: group by 子句要写到 where 子句后面 a) 查询每个部门的人数和平均工资, 排除 10 部门 select deptno, count(...*), avg(sal) from emp where deptno10 group by deptno order by deptno; 1.3 带 having 分组查询 注意: where...子句中不允许使用分组函数, 分组函数用于分组前过滤 having 用于过滤分组后条件 a) 查询每个部门总工资和平均工资, 排除平均工资低于 1600 部门 select deptno...分组查询时相关关键词顺序: from–>where–>group by–>select–>having–>order by a) emp 表,列出工资最小值小于 2000 职位 select

1.2K20

【DB笔试面试672】Oracle,errorstack作用是什么

题目部分 如何查找或监控效率低下SQL语句?Oracle,errorstack作用是什么?...答案部分 使用Oracle数据库过程,可能会遇到各种各样错误或异常,而且这些错误或异常提示并不具体,那么这个时候就可以使用Oracle提供一种对于错误堆栈进行跟踪方法即errorstack...,也可以参数文件设置,这个设置仅当某个特定错误出现时才被触发,如设置ORA-01438事件跟踪: alter system set events '1438 trace name errorstack...forever,level 3';--启用 ...执行SQL语句... alter system set events '1438 trace name errorstack off';--关闭 接下来告警日志中找到相关跟踪文件...本文选自《Oracle程序员面试笔试宝典》,作者:小麦苗

1K20

Oracle,实例恢复和介质恢复区别是什么

Q 题目 Oracle,实例恢复和介质恢复区别是什么? A 答案 Redo日志是Oracle为确保已经提交事务不会丢失而建立一种机制。...但是,这些数据文件可能还包含未提交更改,要么是实例失败前保存到数据文件,或者是在前滚过程引入。...Oracle数据库使用检查点位置,保证每个低于其SCN已提交更改都已保存到磁盘。Oracle数据库应用Undo块,以回滚数据块实例失败前写入或前滚过程引入未提交更改。...Oracle数据库应用Undo块回滚在数据块未提交改变,这些数据块是实例失败之前或者前滚期间被写入。回滚会将已执行但尚未提交更改会返回到初始状态。...操作对应Undo信息(Buffer Cache生成对应Undo Block)就会首先生成其对应Redo信息(Undo Block's Redo Entry)并写入Log Buffer

1.7K20

Oracle,什么是闪回版本查询(Flashback Version Query)?

题目部分 Oracle,什么是闪回版本查询(Flashback Version Query)?...答案部分 闪回版本查询(Flashback Version Query)是查询过去某个时间段或某个SCN段内表数据变化情况。闪回版本查询基于回滚(Undo)表空间中回滚信息实现。...SCN段;AS OF用于指定闪回查询查询时间点或SCN。...闪回版本查询目标列,可以使用下列几个伪列返回版本信息: l VERSIONS_STARTTIME:基于时间版本有效范围下界; l VERSIONS_STARTSCN:基于SCN版本有效范围下界...闪回版本查询注意事项: ① VERSIONS子句不能用于查询表包括外部表、临时表和固定表。 ② 不能使用VERSIONS子句查询视图。但是,视图定义可使用VERSIONS子句。

35630
领券