2016-05-28 6 views
0

Ich möchte Leseberechtigungen für alle Informationen in einer Ansicht gewähren können, mit Ausnahme der Zeilen, in denen DOB nicht leer ist (d. H. Der Benutzer kann nur Zeilen lesen, in denen DOB null ist). Ist das möglich? Ein Beispiel (das nicht funktioniert, dass ich arbeiten möchte) ist:SQL ist es möglich, eine WHERE-Klausel zu einer GRANT SELECT-Anweisung hinzuzufügen?

GRANT SELECT ON DRVADM WHERE DOB IS NULL TO user_2; 

Dank

+0

, warum Sie nicht die Bedingung der Ansicht selbst hinzufügen? oder machen Sie eine weitere Ansicht mit dob ​​ist null Bedingung –

+1

Dies ist für eine Hausaufgabe leider, und es muss die DRVADM-Ansicht verwenden, die bereits einen anderen Benutzer mit verschiedenen Leseberechtigungen – Animorphs

+0

Entschuldigungen hat, seine einfach lokalen SQL durch Ubuntu Terminal – Animorphs

Antwort

0
  1. Ich nehme an, Sie verwenden mysql (das zu bestätigen, schreiben die Befehle, die Sie für die Verbindung verwenden die Datenbank von Ihrer Terminalsitzung).
  2. Sie können nicht GRANT basierend auf Zeilen, nur auf der Ebene der Spalten/Tabellen. Es gibt keine WHERE Klausel auf eine GRANT SELECT Anweisung in mysql docs
  3. Sie in Erwägung ziehen könnte eine VIEW mit nur ausgewählten Zeilen zu schaffen (die, die er sehen muss). Dann gewähren den Benutzerzugriff auf diese VIEW (= zu alle Zeilen)
+0

Ja, mit mysql in Terminal, verbunden mit verwenden Sie Datenbank1; Und da dies eine Hausaufgabenaufgabe ist (wie oben erwähnt) kann ich leider keine neue Ansicht erstellen, ich muss DRVADM verwenden, die eine andere Verwendung erlaubt, alles zu lesen – Animorphs

+0

Wenn Ihre Aufgabe ist buchstäblich Leseberechtigungen für alle Informationen in einem gewähren bis auf einige Zeilen sehe ich dann keine mögliche Lösung mit mysql (aus dem Grund, der im zweiten Teil meiner Antwort erklärt wurde). –

+0

Das ist buchstäblich dieser Teil der Aufgabe, also danke trotzdem, ich muss mit unserem Tutor darüber sprechen. Es ist wie folgt (ich tat 3, aber 4 ist mit dieser Frage verbunden): (3) Das Skript gewährt allen Informationen, die eine Ansicht DRVADM für Benutzer_1 enthalten, Leseberechtigung. (4) Als nächstes gewährt das Skript allen Informationen, die in einer Ansicht DRVADM enthalten sind, eine Leseberechtigung, mit Ausnahme der Zeilen, bei denen das Geburtsdatum nicht leer ist: user_2 – Animorphs

Verwandte Themen