91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

只有select權限也能鎖表?read and select

發布時間:2020-08-07 21:29:18 來源:ITPUB博客 閱讀:276 作者:隨風映雪 欄目:關系型數據庫

有個客戶問我說,為啥只有select權限,也可以for update鎖表。

我懵了一下,不確認啊,我先測試了下,如下所示:

 create user test11 identified by test11;

 create user test12 identified by test12;

grant connect,resource to test11,test12;

create table test11.objects as select * from dba_objects;

grant select on test11.objects to test12;

會話1:

只有select權限也能鎖表?read and select

會話2:

只有select權限也能鎖表?read and select

可以看到,確實僅有可讀的權限下,是可以for update的。

為啥可以for update,似乎不符合邏輯,點太小了,只能在官方文檔那個上搜了,不得不夸一句,oracle官方文檔真的詳細。只能想著在官方文檔上看看有沒有線索,一查,發現還真有!

如下:

SELECT      Query the table with the SELECT statement, including SELECT ... FOR UPDATE.

可以看到,select確實包含了 for update權限。

不一樣的是,除了select之外,還有一個read表示查詢,但是read不包含 for update。這個是12.1之后才有的變化。

READ Query the table with the SELECT statement. Does not allow SELECT ... FOR UPDATE.

Note: This privilege is available starting with Oracle Database 12 c Release 1 (12.1.0.2).

為啥select會有for update權限呢,可能是出于希望查詢能夠強制一致性的關系。

但這個其實對于大多數查詢場景來說,for update的鎖表權限還是太大了,所以在12.1開始,分離除了更小的read權限,用以滿足客戶需求。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

鄂州市| 太保市| 长宁县| 怀柔区| 桃源县| 渝北区| 永修县| 东山县| 永定县| 古浪县| 双江| 湖南省| 凉城县| 纳雍县| 许昌市| 永定县| 黄大仙区| 乌什县| 绍兴县| 邯郸县| 静宁县| 承德县| 莆田市| 渑池县| 武强县| 伊川县| 安岳县| 赫章县| 嘉黎县| 什邡市| 林周县| 文昌市| 周宁县| 冀州市| 屏山县| 当阳市| 长沙县| 房产| 剑阁县| 牡丹江市| 宜春市|