zoukankan      html  css  js  c++  java
  • 1z0062 题库解析3

    The hr user executes the following query on the employees table but does not issue commit, rollback, or any data definition language (DDL) command after that:

    SQL> SELECT job

         FROM employees

         WHERE job='CLERK' FOR UPDATE OF empno;

    HR then opens a second session.

    Which two operations wait when executed in HR's second session?

    A.INSERT INTO employees(empno,ename,job) VALUES (2001,'Harry','CLERK');

    B. LOCK TABLE employees IN EXCLUSIVE MODE;

    C. SELECT empno,ename FROM employees WHERE job='CLERK';

    D. SELECT job FROM employees WHERE job='CLERK' FOR UPDATE OF empno;

    E. INSERT INTO employees(empno,ename) VALUES (1289,'Dick');

    Answer: BD

    【解析】

    使用FOR UPDATE子句可以锁定选定的行,以便其他用户在结束事务之前不能锁定或更新该行。只能在顶级SELECT语句中指定此子句,而不能在子查询中指定此子句。

    加上OF ... column子句仅锁定联接中特定表或视图的选择行。OF子句中的列仅指示锁定的表或视图行,您指定的特定列并不重要。 但是,必须指定实际的列名,而不是列别名。如果省略此子句,则数据库将锁定查询中所有表中的选定行。

    【官方手册】

    https://docs.oracle.com/en/database/oracle/oracle-database/12.2/sqlrf/SELECT.html#GUID-CFA006CA-6FF1-4972-821E-6996142A51C6

  • 相关阅读:
    FastCgi与PHPfpm之间的关系
    PHP中多线程处理
    EASYUI+MVC4通用权限管理平台前言
    常用企业建站源码
    Oracle数据库同步服务
    Jquery easyui +MVC4 管理信息系统
    《自动化技术中的进给电气传动》1.1节和1.2节读书笔记
    FTP
    Samba
    rsync
  • 原文地址:https://www.cnblogs.com/sandata/p/12187152.html
Copyright © 2011-2022 走看看