Oracle数据库视图与权限问题
前几天客户遇上这样一个问题,某个用户A将视图的SELECT给予另一个用户B,但是用户B查询这个视图时,仍然报错:ORA-01031: 权限不
前几天客户遇上这样一个问题,某个用户A将视图的SELECT给予另一个用户B,但是用户B查询这个视图时,,仍然报错:ORA-01031: 权限不足。这是怎么一回事呢?下面来模拟一下这个过程:
有三个用户test1,test2,test3, 三个用户都具有DBA色色权限。
用TEST1用户创建一个表T1,并将其查询权限授予TEST2:
用TEST2用户创建一个视图,视图的基表是TEST1.T1,并将查询权限授予TEST3:
TEST3用户查询视图TEST2.V_T1:
可以看到报了权限不足的错误,就算这里TEST3用户有DBA权限。
这到底是怎么回事呢?

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Panduan Konfigurasi Pembolehubah Alam Sekitar Oracle: Buat pembolehubah persekitaran Oracle_Home, menunjuk ke direktori rumah Oracle. Tambah direktori binari oracle ke pembolehubah persekitaran jalan. Tetapkan pembolehubah persekitaran TNS_ADMIN (jika fail dinamakan menggunakan TNS). Sahkan tetapan pembolehubah persekitaran untuk memastikan output memaparkan pembolehubah set.

Kaedah Import Data: 1. Gunakan utiliti SQLLoader: Sediakan fail data, buat fail kawalan, dan jalankan SQLLoader; 2. Gunakan alat IMP/EXP: data eksport, data import. Petua: 1. Disyorkan SQL*loader untuk set data besar; 2. Jadual sasaran harus wujud dan perlawanan definisi lajur; 3. Selepas mengimport, integriti data perlu disahkan.

Kunci utama adalah lajur khas atau gabungan lajur yang secara unik mengenal pasti setiap baris dalam jadual. Ia memastikan bahawa rekod dalam jadual adalah unik dan boleh dibuat dengan: menentukan nama jadual menggunakan pernyataan Alter Table. Tambah kata kunci utama utama diikuti dengan nama lajur untuk menentukan sebagai kunci utama. Kekangan utama utama membantu memastikan keunikan data, meningkatkan kelajuan pertanyaan, mencegah rekod pendua dan memudahkan jadual gabungan.

Gunakan pernyataan ALTER Jadual, sintaks khusus adalah seperti berikut: alter table table_name Tambah column_name data_type [kekangan-klausa]. Di mana: Table_name adalah nama jadual, column_name adalah nama medan, data_type adalah jenis data, dan kekangan-fasal adalah kekangan pilihan. Contoh: Alter Table Pekerja menambah e -mel varchar2 (100) Tambahkan medan e -mel ke jadual pekerja.

Untuk menanyakan saiz ruang meja oracle, ikuti langkah -langkah berikut: Tentukan nama meja dengan menjalankan pertanyaan: pilih Tablespace_Name dari DBA_TableSpaces; Tanya saiz meja dengan menjalankan pertanyaan: pilih jumlah (bait) sebagai total_size, jumlah (bytes_free) sebagai tersedia_space, jumlah (bytes) - jumlah (bytes_free) sebagai digunakan_space dari dba_data_files di mana tablespace_

Masalah Garbled Oracle boleh diselesaikan dengan memeriksa set aksara pangkalan data untuk memastikan ia sepadan dengan data. Tetapkan set aksara klien untuk memadankan pangkalan data. Tukar data atau ubah suai set aksara lajur untuk memadankan set aksara pangkalan data. Gunakan set aksara Unicode dan elakkan set aksara multibyte. Semak bahawa tetapan bahasa pangkalan data dan pelanggan betul.

Oracle menyediakan pelbagai kaedah pertanyaan deduplikasi: Kata kunci yang berbeza mengembalikan nilai yang unik untuk setiap lajur. Kumpulan oleh klausa mengumpulkan hasil dan mengembalikan nilai tidak berulang bagi setiap kumpulan. Kata kunci yang unik digunakan untuk membuat indeks yang mengandungi hanya baris unik, dan pertanyaan indeks akan secara automatik deduplicate. Fungsi row_number () memberikan nombor unik dan menapis hasil yang mengandungi hanya baris 1. Min () atau max () mengembalikan nilai tidak berulang dari lajur angka. Operator Intersect mengembalikan nilai -nilai bersama kedua -dua set hasil (tiada pendua).

Langkah -langkah untuk mengubah suai nama medan dalam jadual Oracle adalah seperti berikut: Sambung ke pangkalan data. Gunakan pernyataan Alter Table untuk mengubah suai nama medan. Tentukan nama jadual dan nama medan lama. Tentukan nama medan baru. Hantar perubahan.
