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

【DB笔试面试659】在Oracle中,SELECT ... FOR UPDATE加的是什么锁?

♣题目部分在Oracle中,SELECT ... FOR UPDATE加的是什么锁? ♣答案部分 SELECT ... FOR UPDATE语句的语法如下: SELECT ......FOR UPDATE [OF column_list][WAIT n|NOWAIT][SKIP LOCKED]; 其中,这个OF子句在涉及到多个表时,具有较大作用。...“使用FOR UPDATE WAIT”子句的优点如下: ① 防止无限期地等待被锁定的行 ② 允许应用程序中对锁的等待时间进行更多的控制 ③ 对于交互式应用程序非常有用,因为这些用户不能等待不确定的时间...④ 若使用了SKIP LOCKED,则可以越过锁定的行,不会报告由wait n引发的“资源忙”异常报告 在Oracle 10g之前,SELECT ......FOR UPDATE获取的是2级TM锁,而从Oracle 10g开始,SELECT ... FOR UPDATE获取的是3级TM锁。 本文选自《Oracle程序员面试笔试宝典》,作者:小麦苗

1.1K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【DB笔试面试576】在Oracle中,简述Oracle中的游标。

    ♣ 题目部分 在Oracle中,简述Oracle中的游标。 ♣ 答案部分 在介绍游标之前先介绍一下Oracle数据库中库缓存(Library Cache)的作用及其组成结构。...当同样的SQL语句和PL/SQL语句再次被执行的时候就可以直接利用已经缓存在库缓存中的那些相关对象而无须再次从头开始解析,这样就提高了这些SQL语句和PL/SQL语句在重复执行时的执行效率。...库缓存(Library Cache)在SGA中的位置如下图所示: ?...可以使用视图V$DB_OBJECT_CACHE(基表为X$KGLOB)来查询当前缓存在库缓存中的所有对象。...当Oracle要执行目标SQL“select * from lhr.emp”时,首先会对该SQL的SQL文本进行哈希运算,然后根据得到的哈希值找到相关的Hash Bucket,在Hash Bucket中遍历对应的库缓存对象句柄链表

    1.3K20

    【DB笔试面试519】在Oracle中,什么是Oracle Directory?

    ♣ 题目部分 在Oracle中,什么是Oracle Directory?...♣ 答案部分 Oracle Directory(目录)可以让用户在Oracle数据库中灵活地对文件进行读写操作,极大地提高了Oracle的易用性和可扩展性。...赋予普通用户使用Directory的权限包括READ、WRITE、EXECUTE,也可以直接写ALL,如下所示: GRANT READ,WRITE,EXECUTE ON DIRECTORY EXP_DIR_LHR...TO LHR; GRANT ALL ON DIRECTORY EXP_DIR_LHR TO LHR; 需要注意的是,在创建Directory数据库对象时对应的路径不存在也不会报错,Oracle数据库并不会到操作系统上检验路径的存在性...,只有在使用时才会校验,因此在创建Directory时谨记对应的路径的真实存在性,否则可能会报ORA-29913或ORA-29400的错误。

    87220

    【DB笔试面试520】在Oracle中,Oracle的DBLINK是什么?

    ♣ 题目部分 在Oracle中,Oracle的DBLINK是什么?...其实,DBLINK和数据库中的VIEW差不多,创建DBLINK的时候需要知道待读取数据库的IP地址、ORACLE_SID以及数据库用户名和密码。...LIKE UPPER('%LINK%'); 可以看出,在数据库中DBLINK有3种权限:CREATE DATABASE LINK(所创建的DBLINK只能是创建者自己使用,别的用户不能使用)、CREATE...LINK,DROP PUBLIC DATABASE LINK TO SCOTT; 查询数据库的DBLINK可以使用SQL语句:SELECT * FROM DBA_DB_LINKS。...,是在本地数据库tnsnames.ora文件中没有配置要访问的远程数据库的时候,而直接将相关的内容写到DBLINK的配置中,如下所示: CREATE DATABASE LINK DBL_BJLHR CONNECT

    1.8K20

    【DB笔试面试562】在Oracle中,如何监控索引的使用状况?

    ♣ 题目部分 在Oracle中,如何监控索引的使用状况?...♣ 答案部分 在开发应用程序时,可能会建立很多索引,那么这些索引的使用到底怎么样,是否有些索引一直都没有用到过,在这种情况下就需要对这些索引进行监控,以便确定它们的使用情况,并为是否可以清除它们给出依据...可以从视图DBA_HIST_SQL_PLAN中获取到数据库中所有索引的扫描次数情况,然后根据扫描次数和开发人员沟通是否需要保留索引。...从图中可以看到有一个3.6G大的索引在13号到22号从没使用过,接下来,可以继续查询该索引是否是联合索引,创建是否合理,分析为何不走该索引,从而判断是否可以删除索引。...& 说明: 有关索引的监控过程可以参考我的BLOG:http://blog.itpub.net/26736162/viewspace-2120752/ 本文选自《Oracle程序员面试笔试宝典》,作者:

    1.3K20

    【DB笔试面试565】在Oracle中,为什么索引没有被使用?

    ♣ 题目部分 在Oracle中,为什么索引没有被使用? ♣ 答案部分 “为什么索引没有被使用”是一个涉及面较广的问题。有多种原因会导致索引不能被使用。...还有很多其它原因会导致不能使用索引,这个问题在MOS(MOS即My Oracle Support)“文档1549181.1为何在查询中索引未被使用”中有非常详细的解释,作者已经将相关内容发布到BLOG(...n 索引是否应该被使用? 二、索引本身的问题 n 索引的索引列是否在WHERE条件中(Predicate List)? n 索引列是否用在连接谓词中(Join Predicates)?...n 在总体成本中,表扫描的成本是否占大部分? n 访问空索引并不意味着比访问有值的索引高效? n 参数设置是否正确? 四、其它问题 n 是否存在远程表(Remote Table)?...n 是否使用了并行执行(PX)? n 是否包含了子查询的UPDATE语句? n 查询是否使用了绑定变量? n 查询是否引用了带有延迟约束的列? n 索引提示(Hint)是否不工作?

    1.2K20

    【DB笔试面试794】在Oracle中,LogMiner是什么?

    ♣ 题目部分 在Oracle中,LogMiner是什么?其有哪些用途?请简述LogMiner的使用过程。...♣ 答案部分 众所周知,所有对用户数据和数据字典的改变都记录在Oracle的Redo日志中,因此,Redo日志包含了所有进行恢复操作所需要的信息。...但是,原始的Redo日志文件无法看懂,所以,Oracle从8i以后提供了一个非常有用的分析工具,称为LogMiner。使用该工具可以轻松获得Redo日志文件(包含归档日志文件)中的具体内容。...特别是该工具可以分析出所有对于数据库的DML操作(INSERT、UPDATE、DELETE等)语句。Oracle 9i后可以分析DDL语句,另外还可分析得到一些必要的回滚SQL语句。...确保在创建Flat File文件的过程中,不能有DDL操作被执行。

    93920

    【DB笔试面试804】在Oracle中,什么是XTTS?

    ♣ 题目部分 在Oracle中,什么是XTTS?...在企业越来越大的数据量、相对停机时间要求日益减少的情况下,利用XTTS可以完成使用增量备份方式实现跨平台的数据迁移。XTTS能够减少停机时间、可以进行增量备份,并且能实现跨平台的数据迁移。...在“去IOE”(即IBM、Oracle、EMC,其中,IBM代表硬件以及整体解决方案服务商;Oracle代表数据库;EMC代表数据存储。...Oracle其实是很难去掉的,我国很多领域的核心业务系统都运行在“IOE”的软硬件架构之上。)的浪潮下,XTTS成为了如今U2L(Unix to Linux)迁移的最有效、最安全的解决方案之一。...有关XTTS的使用在MOS文档“11G - Reduce Transportable Tablespace Downtime using Cross Platform Incremental Backup

    85710

    【DB笔试面试696】在Oracle中,什么OSWatcher工具?

    ♣ 题目部分 在Oracle中,什么OSWatcher工具?...♣ 答案部分 OSWbb(OSWatcher Black Box)是Oracle开发、提供的一个小巧,但是实用、强大的系统工具,它可以用来抓取操作系统的性能指标,用于辅助监控系统的资源使用。...OSWbb的安装非常简单,使用oracle用户进行解压即可使用(tar -xvf oswbb801.tar),参考MOS文档“OSWatcher(包括:[视频]) (文档 ID 1526578.1)”。.../startOSWbb.sh 10 2 后面参数表示10秒采集一次数据,只保留最后采集2个小时的数据在归档文件中。...② 参数2:指定采集的数据文件在归档路径保留多少个小时。 ③ 参数3:可选参数,打包压缩工具,在完成收集后OSW将使用其来打包压缩归档文件。

    67520

    【DB笔试面试817】在Oracle中,什么是ASH?

    ♣ 题目部分 【DB笔试面试817】在Oracle中,什么是ASH?...Oracle性能调整最重要的就是对最影响性能的SQL的调整。在一个应用中,能够影响到数据库的只有SQL,也只能是SQL。...在分析ASH报告、AWR报告和ADDM报告的时候,最重要的工作就是找出对性能影响最大的SQL语句,并对其进行优化。...ASH(Active Session History,活动会话历史信息)每秒从VSESSION中取ACTIVE状态会话的信息,存储在VACTIVE_SESSION_HISTORY中,并收集所有活动会话的等待信息...众所周知,动态性能视图实质是Oracle自行构造的一堆存在于SGA内存区的虚表,也就是说,ASH的数据是保存在内存里的,实际上,Oracle分配给ASH的空间并不是无限大,ASH buffers的最小值为

    1.4K10

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

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

    70830
    领券