oracle查看context,oracle context(上下文)

context在計算機領域翻譯為上下文

context的信息也就是當前會話中的環境變量,如:登錄的session_id,用戶名,語言等信息

查看context中的屬性信息。

oracle默認的為我們創建了一個context叫userenv(user environment)

SYS_CONTEXT('USERENV','TERMINAL')

SYS_CONTEXT('USERENV','LANGUAGE')

SYS_CONTEXT('USERENV','SESSIONID')

SYS_CONTEXT('USERENV','INSTANCE')

SYS_CONTEXT('USERENV','ENTRYID')

SYS_CONTEXT('USERENV','ISDBA')

SYS_CONTEXT('USERENV','NLS_TERRITORY')

SYS_CONTEXT('USERENV','NLS_CURRENCY')

SYS_CONTEXT('USERENV','NLS_CALENDAR')

SYS_CONTEXT('USERENV','NLS_DATE_FORMAT')

SYS_CONTEXT('USERENV','NLS_DATE_LANGUAGE')

SYS_CONTEXT('USERENV','NLS_SORT')

SYS_CONTEXT('USERENV','CURRENT_USER')

SYS_CONTEXT('USERENV','CURRENT_USERID')

SYS_CONTEXT('USERENV','SESSION_USER')

SYS_CONTEXT('USERENV','SESSION_USERID')

SYS_CONTEXT('USERENV','PROXY_USER')

SYS_CONTEXT('USERENV','PROXY_USERID')

SYS_CONTEXT('USERENV','DB_DOMAIN')

SYS_CONTEXT('USERENV','DB_NAME')

SYS_CONTEXT('USERENV','HOST')

SYS_CONTEXT('USERENV','OS_USER')

SYS_CONTEXT('USERENV','EXTERNAL_NAME')

SYS_CONTEXT('USERENV','IP_ADDRESS')

SYS_CONTEXT('USERENV','NETWORK_PROTOCOL')

SYS_CONTEXT('USERENV','BG_JOB_ID')

SYS_CONTEXT('USERENV','FG_JOB_ID')

SYS_CONTEXT('USERENV','AUTHENTICATION_TYPE')

SYS_CONTEXT('USERENV','AUTHENTICATION_DATA')

例子:

產看當前session的字符集信息

SQL> select userenv('language') from dual;

USERENV('LANGUAGE')

----------------------------------------------------

AMERICAN_AMERICA.AL32UTF8

創建自定義oracle context

Application Context是內存中的一組name-value對,application context從屬于某個命名空間(namespace);

用戶只能通過一個自定義封裝包或存儲過程中調用dbms_session.set_context來設置application context的值;

用戶使用sys_context(,)來獲取某個application context的值。

語法:

DBMS_SESSION.SET_CONTEXT

( namespaceVARCHAR2, attribute VARCHAR2, value VARCHAR2, username VARCHAR2, client_idVARCHAR2 );

namespacecontext的命名空間--必要參數

attribute屬性值--必要參數

value值--必要參數

username用戶名(默認為Null)--可選參數

client_id指定的clientid --可選參數

Application context分為三種

dabase session-based application context--local application context

global application context--global application context

client session-based application context--通過OCI管理使用的,存儲在客戶端內存的context

Local applicationcontext

context存儲在UGA中,本地context是session/server process級別的,當會話/serverprocess終止時,context也會結束

Global application context

context存儲在SGA中,SGA消失,全局context也就會結束;它常常用于跨會話,應用于與會話無關的場景

例子:

1.創建一個context

SQL> create context context_only using pkg_only;

Context created.

2.建立與上下文先關的包來封裝(也就是上面的pkg_name)

SQL> create package pkg_only

2 ?as

3 ?procedure put(key varchar2,value varchar2);

4 ?end;

5 ?/

Package created.

SQL> create package body pkg_only

2 ?as

3 ?procedure put(key varchar2,value varchar2)

4 ?as

5 ?begin

6 ?dbms_session.set_context('context_only',key,value);

7 ?end;

8 ?end;

9 ?/

Package body created.

3.設置存儲過程輸入輸出

SQL> exec pkg_only.put('name','only');

PL/SQL procedure successfully completed.

4.調用context

SQL> select sys_context('context_only','name') from dual;

SYS_CONTEXT('CONTEXT_ONLY','NAME')

--------------------------------------------------------------------------------

only

dbms_session.set_context有兩個默認值為NULL的參數:username、client_id

username= null , client_id=null。所有用戶都能訪問。

username= null, client_id=。只要session 的client_id =,而不管username,都能訪問。

username= , client_id=null。只要session使用指定的oracle schema登陸,不管client_id,都能訪問。

username= , client_id=. 常用于statless web session ,如http。

username= , client_id= . 該username將用于數據庫連接池的owner。

整理自網絡

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/533014.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/533014.shtml
英文地址,請注明出處:http://en.pswp.cn/news/533014.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

oracle標量子查詢的優勢,標量子查詢

--標量子查詢select e.empno, e.ename, e.sal, e.deptno,(select d.dname from dept d where e.deptno d.deptno)as dnamefrom emp e--插入一條數據insert into emp(empno,deptno) values(9999,null)--返回結果15條記錄--改成left join(hash outer)select e.empno, e.ename, e…

切割照片php上傳,php下ajax的文件切割上傳

var myForm document.getElementById("myForm");var upfile document.getElementById("upfile");myForm.onsubmit function() {//獲取文件對象var file upfile.files[0];//獲取文件大小var fileSize file.size;//一次截取的大小(字節)var CutSize 10…

oracle插補缺失日期,Oracle連接 ORA-28001: 口令已經失效解決方法

cmd進入命令行C:UsersAdministrator>sqlplus / as sysdbaSQL*Plus: Release 11.2.0.1.0 Production on 星期四 9月 24 15:19:21 2020Copyright (c) 1982, 2010, Oracle. All rights reserved.連接到:Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Pr…

PHP 蒙太奇馬賽克拼圖,AndreaMosaic制作一幅馬賽克拼圖

大家在網上應該都見過用很多幅圖片拼成的馬賽克圖片,今天小編就為大家介紹AndreaMosaic制作一幅馬賽克拼圖方法,不會的朋友快快來學習吧!軟件名稱:AndreaMosaic(蒙太奇圖片制作軟件) V6.1.0.4 中文安裝免費版軟件大小:…

php mongo 查詢count,[PHP] 使用PHP在mongodb中進行count查詢

原文:https://www.cnblogs.com/taoshihan/p/12362111.html在php7的mongodb擴展中,當要查詢某個集合在某個條件下的數據個數時,可以使用下面的方式來獲取。比原生的命令要復雜許多比舊版mongo擴展也復雜許多需要使用到MongoDB\Driver\Command …

oracle字段類型設計,Oracle字段類型設計與實際業務不符引發的問題

在Oracle表的設計過程中,開發人員總是對字段的類型不以為然,下面來演示一個例子,按照應該設計為number的,結果設計成了varcha在Oracle表的設計過程中,開發人員總是對字段的類型不以為然,下面來演示一個例子…

linux下進程監控6,Linux進程監控技術—精通軟件性能測試與LoadRunner最佳實戰(6)...

8.2.5 Linux操作系統進程監控技術Linux在進程監控方面同樣出色,不僅可以通過圖形用戶界面的管理工具,還可以用命令方式顯示進程相關信息。像“Windows的任務管理器”一樣,在RedHat 9中可以通過單擊“系統工具”→“系統監視器”,…

linux pcie命令,setpci命令_Linux setpci 命令用法詳解:查詢和配置PCI設備的使用工具...

setpci命令是一個查詢和配置PCI設備的使用工具。語法setpci(選項)(參數)選項-v:顯示指令執行的細節信息;-f:當沒有任何操作需要完成時,不顯示任何信息;-D:測試模式,并不真正將配置信息寫入寄存器…

linux proc文件 write的原子性,Linux命令之write調用的原子性

linux命令是對Linux系統進行管理的命令。本文介紹的關于linux命令中write調用的原子性的詳細描述,具體內容如下所述。UNIX環境高級編程中關于原子操作的介紹,其中有一種情形是在文件尾端添加數據。文中說,如果多個進程都需要將數據添加到某一…

linux 命令行 迅雷替代,Mac/Linux下迅雷替代方案

還記得我兩年前寫的《DIY了家用NAS》嗎?現在又帶來新的升級啦。當初的NAS最多能使用Transmission來進行BT下載,那時就在想,如果能下載普通的http資源就好了。再進一步,有什么方案可以通吃所有下載方式呢? 記得那個時候…

linux好用的編譯器,推薦幾款Linux下比Notepad++好的編輯器軟件

Notepad這一段又出風頭了,好好的做你軟件多好,非得參雜入政治。前兩天開源文本編輯器 Notepad 發布了 7.8.1 版本,然后在該版本中作者居然摸黑中國,具體的內容請大家自行百度。而且這已經不是 Notepad 第一次這么干了!…

linux下調用python腳本,Linux下QT調用Python腳本的解決方案,Qt,python,一種,解決辦法

最近在做一個深度學習對圖片中對象識別效果的檢測工具,其主要功能就是將自己標注的圖片與識別結果圖片進行對比然后計算識別的準確等參數,并提供原圖與結果圖片的顯示功能。腳本主要完成識別與計算功能,QT完成數據的整理顯示與圖片的顯示。我…

linux獲取bind返回值信息,v$sql_bind_capture 獲取綁定變量信息

截取自v$sql_bind_capture 對于游標中定義的每一個綁定變量都會有視圖中的一行對應。主要包含三個部分:指向父游標(hash_value, address)和子游標(hash_value, child_address)的信息,變量類型定義,變量的值(不包含復雜的值:LONG,LOB,和…

linux boost教程,Linux上安裝使用Boost入門指導

獲得boostboost分布只需要頭文件的庫使用boost建立一個簡單的程序準備使用boost二進制文件庫把你的程序鏈接到boost庫1.獲得boost解壓2.boost分布boost_1_46_1.........................boost根目錄boost/.....................................所有boost頭文件libs/..........…

vps如何linux內核4.19,Linux kernel 4.19 RC1 發布,一個相當大的版本

原標題:Linux kernel 4.19 RC1 發布,一個相當大的版本Linus Torvalds今天發布了第一個候選版本(RC),正式啟動了即將推出的Linux 4.19內核系列的開發周期。自Linux 4.18內核系列推出以來已經過去兩周了,因此下一個主要版本Linux ke…

linux下變量名長度,Linux中shell的變量介紹

Linux中shell的變量介紹發布時間:2020-06-24 16:20:39來源:億速云閱讀:112作者:元一這期內容當中的小編將會給大家帶來有關Linux中shell的變量介紹,以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可…

0 0/2 * * * ? linux文本含義,Linux基礎2.0

1、硬盤使用的步驟識別硬盤 > 分區規劃 > 格式化 > 掛載使用2、列出創建ext3、ext4、xfs、fat32文件系統的格式化工具及用法mkfs.ext3 分區設備路徑mkfs.ext4 分區設備路徑mkfs.xfs 分區設備路徑mkfs.vfat -F 32 分區設備路徑3、開機自動掛載配置文件及6個字段/etc/fs…

linux如何加載鏡像,linux可以加載iso鏡像文件到啟動項嗎

該樓層疑似違規已被系統折疊 隱藏此樓查看此樓樓主的需求描述不清,不作評述。只說下關于樓上一些吧友提到的grub loopback設備可mount iso并讀取其中文件的功能未讀過grub1/2的源碼,不太了解其實現原理,但從應用上來說,這個設備不…

10個linux awk文本處理經典案例,關于AWK的10個經典案例

1、分析訪問日志(Nginx為例)日志格式: $remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent" "$http_x_forwarded_for" 統計訪問IP次數: # awk…

arm linux 存儲,linux arm的存儲分布那些事

原標題:linux arm的存儲分布那些事linux arm 內存分布總覽上圖是linux的arm的虛擬地址分布總覽,我們按從低地址到高地址的順序逐個描述,每項的描述包括如下的內容的組和:地址范圍大小,虛擬轉物理的接口函數&#xff0c…