Grant alter on nur eine Spalte in der Tabelle
Ich möchte einem Benutzer die Berechtigung nur zum Bearbeiten einer Spalte in meiner Tabelle. Welchen Befehl verwende ich hier? Ich benutze die oracle 11g-Datenbank auf. Ich alrdy weiß, wie kann ich gewähren Sie nur Lesen oder löschen von auf der ganzen Tabelle, aber wie mache ich es für nur eine Spalte oder mehrere? pls ein Beispiel geben.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zum Beispiel, Sie wollen zu gewähren update-Privileg auf der ename Spalte, dann geben Sie die folgende Anweisung (wobei xyz ist der Benutzername)
Syntax:
EDIT: (für die Erteilung der select-Privileg)
Grant select-Anweisung auf die Tabelle emp zu XYZ und zu XYZ machen in der Lage sein weiter pass auf dieses Privileg, haben Sie zu geben, die MIT GRANT OPTION-Klausel in der GRANT-Anweisung wie dieser.
Auch,
Sie möchten zum Beispiel grant update-Privileg auf der ename Spalte nur-und insert-Berechtigungen auf die empno und ename Spalten nur, Sie können dies tun:
Basierend auf diese Quelle:
Nur
INSERT
,UPDATE
, undREFERENCES
Vorrechte können gewährt werden in die Spalte Ebene. Bei der Gewährung vonINSERT
unter der Spalte level, Sie müssen alle nicht-null-Spalten in der Zeile.Hier ist ein Beispiel: