跨表空間訪問資料

2022-08-30 06:39:12 字數 1018 閱讀 2121

建立自己的使用者名稱,在自己的使用者名稱下建表,寫儲存過程,為了方便管理,不與其他使用者公用表空間所引起一些不必要的麻煩。

一. 環境說明:

1. 本機安裝10.2

2. 本地建了乙個資料庫例項叫ywl

3. 在這個資料庫例項下面有乙個使用者叫user1,它下面有很多表。

二. 問題描述:

1. 現在我要在ywl下面新加乙個使用者叫user2,然後我會在這個使用者下,建自己的一些表,寫一些自己的儲存過程,儲存過程中需要訪問user1裡面一些表的資料。

2. 我的做法如下:

a) 建立乙個新的表空間 newtablespace,建立表空間的時候為表空間設定大小,其他預設。

b) 建立乙個新使用者 user2,建立的時候通過enterprise manage concole來建立,直接在security->users下建立乙個使用者,

在建立視窗的general tab頁下面的tablespace中default中選擇新建的表空間newtablespace,temporary預設。在role的tab頁中為使用者選擇dba role。

最後完成建立新使用者,user2.

c) 用user1連線lyprd,連線成功後執行

select  'grant select on '||table_name||' to user2;' from user_tables;

grant select on xj_vdsp_core.service to xj_vdsp_up

grant select on xj_vdsp_core.sp to xj_vdsp_up

執行結果為一組sql語句,將user1下的所有表的select許可權都授權給了user2.

將執行結果中的需要授權的表的grant語句拷貝出來,然後在user1下將這些grant語句全部執行,即完成了將user1的特定表的查詢許可權授予給了user2.

用user2連線ywl,在user2下寫儲存過程,裡面用到user1中表的時候,

直接用user1.tablename即可。

oracle的表如何跨表空間儲存

oracle的乙個表所在表空間,空間已經佔滿,其他表空間有剩餘空間.實現表存在另外的表空間 方案一 利用原表重建分割槽表 1 原表temp,存在欄位id,time 2 temp存在紀錄 3 根據原表temp建立新的分割槽表temp new create table temp new id,time ...

iframe跨域資料訪問

前提 父頁面和子頁面不同域 首先是父頁面傳資料給子頁面 parent.html your browser dose not support iframes child.html 需要注意的是一定要加上http 同時統一用ip都用ip,用網域名稱都用網域名稱,用localhost都用localhost...

資料庫 mysql 跨庫訪問 資料庫跨庫訪問問題

sql server中的所有權鏈及其問題 沒有多少朋友對所有權鏈真的理解的。我自己有時候經常回過來看看這些資料,覺得還是很有意思的。下面的內容摘自微軟文件,介紹得比較好 簡而言之 1.如果在同乙個資料庫中,只要兩個物件的所有者是一樣的,那麼他們之間的訪問是不檢查訪問者身份的。例如乙個檢視和乙個表是屬...