[NEWSboard IBMi Forum]
  1. #1
    cbe is offline [professional_User]
    Registriert seit
    May 2005
    Beiträge
    392

    View als Read Only?

    Hallo allerseits,

    ich stehe ein bisschen auf dem Schlauch.
    Eigentlich möchte ich nur was ganz einfaches:

    create view X (...)
    as select ... from Y

    Aber man soll die View X nur lesend verwenden dürfen.
    Gibts das nicht in SQL? sowas wie FOR READ ONLY?

    Wäre für einen Tip dankbar - es ist schon zu spät am Abend...

    Gruß
    Christian

  2. #2
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    Hallo,

    beim GRANT kann man das über Berechtigung lösen, oder durch Aufnahme eines Dummyfeldes aus einer anderen Datei, oder Verwendung einer Feldfunktion (upper o.ä.) wird die View generell read only.

    D*B

    Zitat Zitat von cbe Beitrag anzeigen
    Hallo allerseits,

    ich stehe ein bisschen auf dem Schlauch.
    Eigentlich möchte ich nur was ganz einfaches:

    create view X (...)
    as select ... from Y

    Aber man soll die View X nur lesend verwenden dürfen.
    Gibts das nicht in SQL? sowas wie FOR READ ONLY?

    Wäre für einen Tip dankbar - es ist schon zu spät am Abend...

    Gruß
    Christian
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  3. #3
    cbe is offline [professional_User]
    Registriert seit
    May 2005
    Beiträge
    392
    Hallo Dieter,

    danke für die schnelle Antwort.
    So richtig leicht ist das ja nicht...

    Die Funktion UPPER oder so verhindert leider nicht, dass ich mit
    DELETE FROM X
    alle Sätze lösche. Das will ich ja gerade vermeiden.

    Am besten gefällt mir noch die Verknüpfung mit einer anderen Dummy-Datei mit genau 1 Satz, das funktioniert prima:

    create view X (...)
    as select ... from Y, nur1satz

    Nochmal vielen Dank!
    Christian

  4. #4
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    für die 1 Satz Datei gibt es die SYSIBM.SYSDUMMY1, die nur einen Satz haben kann und deshalb Phoenix aus der Asche Sätze sicher vermeidet.
    Der Delete wird auch durch group by oder distinct verhindert.
    DROP und Co. geht natürlich unabhängig davon, der korrekte Weg ist da schon mit GRANT die notwendigen Berechtigungen zu vergeben.

    D*B
    Zitat Zitat von cbe Beitrag anzeigen
    Hallo Dieter,

    danke für die schnelle Antwort.
    So richtig leicht ist das ja nicht...

    Die Funktion UPPER oder so verhindert leider nicht, dass ich mit
    DELETE FROM X
    alle Sätze lösche. Das will ich ja gerade vermeiden.

    Am besten gefällt mir noch die Verknüpfung mit einer anderen Dummy-Datei mit genau 1 Satz, das funktioniert prima:

    create view X (...)
    as select ... from Y, nur1satz

    Nochmal vielen Dank!
    Christian
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  5. #5
    cbe is offline [professional_User]
    Registriert seit
    May 2005
    Beiträge
    392
    Zitat Zitat von BenderD Beitrag anzeigen
    für die 1 Satz Datei gibt es die SYSIBM.SYSDUMMY1...D*B
    ist ja lustig, dass IBM genau dieselben Tricks verwendet...

    Die Datei muss ich mir merken, danke für den Tip!

    Gruß
    Christian

  6. #6
    Registriert seit
    Nov 2003
    Beiträge
    2.403
    Zitat Zitat von cbe Beitrag anzeigen
    ist ja lustig, dass IBM genau dieselben Tricks verwendet...
    Welche Tricks?

  7. #7
    cbe is offline [professional_User]
    Registriert seit
    May 2005
    Beiträge
    392
    naja, eine Datei, die definiert genau 1 Satz enthält und SYSDUMMY1 heißt klingt schon nach tricky, oder?
    Aber jetzt wirds ein wenig off topic...

  8. #8
    Registriert seit
    Apr 2004
    Beiträge
    105
    Zitat Zitat von cbe Beitrag anzeigen
    naja, eine Datei, die definiert genau 1 Satz enthält und SYSDUMMY1 heißt klingt schon nach tricky, oder?
    Aber jetzt wirds ein wenig off topic...
    Hier noch ein paar Infos zur sysdummy1:
    ist die DB2-Tabelle SYSIBM.SYSDUMMY1 noch state-of-the-art

  9. #9
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    ... die sich nicht auf die DB2 auf der AS400 beziehen (soviel nur zu UDB). Wer sich anschaut, was bei einem SET auf einer AS/400 passiert, wird sich wundern - da wird ebenfalls eine Dummy Tabelle gelesen...

    D*B

    Zitat Zitat von woki Beitrag anzeigen
    Hier noch ein paar Infos zur sysdummy1:
    ist die DB2-Tabelle SYSIBM.SYSDUMMY1 noch state-of-the-art
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

Similar Threads

  1. CREATE VIEW
    By Franz Karl in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 20-01-07, 08:04
  2. create view oder constraint oder trigger oder ... ?
    By antvik in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 02-08-06, 18:04
  3. SQL -> CREATE VIEW
    By Kaufmann in forum IBM i Hauptforum
    Antworten: 17
    Letzter Beitrag: 11-05-06, 14:57
  4. SQL VIEW
    By KM in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 12-01-06, 08:52
  5. drop view für LF
    By Robi in forum NEWSboard Programmierung
    Antworten: 1
    Letzter Beitrag: 06-04-05, 16:59

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •