[NEWSboard IBMi Forum]
Seite 1 von 3 1 2 ... Letzte
  1. #1
    Registriert seit
    Apr 2002
    Beiträge
    792

    SQL - Create Table X/Y Angabe Satzformat

    Hallo,

    wie erstelle ich denn mit dem interaktiven SQL eine PF mit einem anderen Satzformatsnamen als die Datei selbst? Wo kann ich das angeben? Vielen Dank im Voraus

  2. #2
    Registriert seit
    Aug 2001
    Beiträge
    2.873
    Du erstellst die Tabelle mit Satz-Format-Name und benennst sie anschliessend um.

    CREATE TABLE MySchema/MyFormat .....

    RENAME TABLE MySchema/MyFormat TO SYSTEM NAME MYTable

    Eine andere Möglichkeit gibt es in SQL nicht! Sonst bleibt Dir nur DDS.

    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 4. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  3. #3
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    Hallo,

    ich kenne da nur den Work around die Tabelle mit dem Formatnamen zu erstellen und dann zu renamen (so war das, meine ich mich zu erinnern), aber wozu soll das eigentlich gut sein?

    mfg

    Dieter Bender

    Zitat Zitat von JonnyRico
    Hallo,

    wie erstelle ich denn mit dem interaktiven SQL eine PF mit einem anderen Satzformatsnamen als die Datei selbst? Wo kann ich das angeben? Vielen Dank im Voraus
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  4. #4
    Registriert seit
    Apr 2002
    Beiträge
    792
    Danke ihr beiden für die fixe Antwort. Dann mache ich das so. Danke und schönes Wochenende.

    Gruß

    Sascha

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    @Dieter
    Damit erspare ich mir das dauernde Umbenennen in RPG

    Allerdings: Warum mache ich CREATE TABLE um anschließend in RPG doch wieder native zuzugreifen ? *grübel*
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  6. #6
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    @Baldur,

    da kann man doch alternativ auf das E (extern definiert) in der F Lochkarte verzichten eine EDS separat ablochen und mit
    read Dateiname Datenstrukurname
    die Daten schnappen, oder was sagen die RPG Hardliner dazu?
    Den Scharmonz mit read Formatname, den habe ich eh nie verstanden, jaja ich weiß, MultiFormat Dateien, aber die habe ich auch nicht verstanden.

    Dieter

    Zitat Zitat von Fuerchau
    @Dieter
    Damit erspare ich mir das dauernde Umbenennen in RPG

    Allerdings: Warum mache ich CREATE TABLE um anschließend in RPG doch wieder native zuzugreifen ? *grübel*
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  7. #7
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    RPG lehnt die Umwandlung ab, da der Name nicht eindeutig ist.
    Es gibt immerhin noch DSPF's und PRTF's (multiple Formate).

    Der Compiler unterscheidet da leider nicht.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  8. #8
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    @Baldur: wenn ich unter Dateiformat kein E für extern beschrieben, sondern ein F für Programm beschrieben abloche, dann ist dem Compiler der Formatname schnurz. DSPF und PRTF werden nicht mit SQL erstellt und damit tritt sowas hier nicht auf.

    Dieter

    Zitat Zitat von Fuerchau
    RPG lehnt die Umwandlung ab, da der Name nicht eindeutig ist.
    Es gibt immerhin noch DSPF's und PRTF's (multiple Formate).

    Der Compiler unterscheidet da leider nicht.
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  9. #9
    Registriert seit
    Aug 2001
    Beiträge
    2.873
    Zitat Zitat von Fuerchau
    Allerdings: Warum mache ich CREATE TABLE um anschließend in RPG doch wieder native zuzugreifen ? *grübel*
    1. CREATE TABLE, um z.B. eine IDENTITY COLUM oder ROWID zu definieren, die beim Erstellen einen eindeutigen Wert generieren und zwar auf einem tieferen Level und sicherer als das eine RPG-Funktion könnte. Das Generieren dieser Werte klappt auch, wenn man mit native RPG einen gewöhnlichen WRITE absetzt.

    2. Native RPG, weil ein CHAIN halt immer noch schneller ist, als das entsprechende Statement mit SQL auszuführen.

    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 4. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  10. #10
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    Hallo,

    nicht alles was Oracle macht muss es wert sein in DB2 gekupfert zu werden. Ob diese Identity Columns halten was sie versprechen, habe ich noch nicht gesehen und das hat ja immerhin den Nachteil, dass ich nicht so ohne weiteres den Satz lesen kann, den ich gerade geschrieben habe. (Ja, ich weiß, dass es da einen Work around gibt...). Ein anderer dieser "Geheimtips", das API GENUUID jedenfalls hielt garnicht, was es versprach, funktioniert nämlich bei Multiprozessor Maschinen nur fast - und damit garnicht.
    Und was die Geschwindigkeit angeht, oft gehört, aber - in erster Näherung hängt die Geschwindigkeit von der Anzahl der Zugriffe ab und da sind viele Rekord Löffel Exzess Programme eher Penner als Renner.


    mfg

    Dieter Bender

    PS: Bei der gegenwärtigen Menge an Bugs in der Datenbank würde ich die Schlüssel Generierung nur ungern der Datenbank überlassen...

    Zitat Zitat von B.Hauser
    1. CREATE TABLE, um z.B. eine IDENTITY COLUM oder ROWID zu definieren, die beim Erstellen einen eindeutigen Wert generieren und zwar auf einem tieferen Level und sicherer als das eine RPG-Funktion könnte. Das Generieren dieser Werte klappt auch, wenn man mit native RPG einen gewöhnlichen WRITE absetzt.

    2. Native RPG, weil ein CHAIN halt immer noch schneller ist, als das entsprechende Statement mit SQL auszuführen.

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

  11. #11
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    @Dieter
    Interne Dateien aber dann externe Strukturen ??

    @Birgitta
    Dass ein CHAIN noch schneller sein soll als ein Select, halte ich für ein Gerücht.
    Was ich in RPG mit mehreren native-Befehlen machen muss, erledige ich häufig mit einem SQL.
    Das mit der Performance war mal so bei V3 !
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  12. #12
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    Hallo,

    genau das!!! damit hört der Quatsch des impliziten Füllens auf etc... Ich kann genau sagen wohin ich lesen will und aus was ich füllen will - das ist um Längen lesbarer- denk mal drüber nach.
    Zu den Performance Geschichten: nach meinen Erfahrungen ist record level access bezogen auf eine Einzeloperation immer noch schneller als SQL, obwohl IBM von Release zu Release seit V4 das Gegenteil behauptet, da handelt es sich wohl um Wunschdenken aber: bezogen auf reale Programme ist SQL im Schnitt schneller und ich biete folgendes an:
    jedes Batchprogramm, das mehr als 30 Minuten läuft und Rekord Löffel Exzess benutzt, mache ich mit SQL schneller, wenn die Maschine genug freie Ressourcen hat, erreiche ich das Ziel nicht, ist mein Bemühen kostenlos. (Habe ich auch mal für Java im Batch schneller als RPG angeboten).

    mfg

    Dieter Bender

    Zitat Zitat von Fuerchau
    @Dieter
    Interne Dateien aber dann externe Strukturen ??

    @Birgitta
    Dass ein CHAIN noch schneller sein soll als ein Select, halte ich für ein Gerücht.
    Was ich in RPG mit mehreren native-Befehlen machen muss, erledige ich häufig mit einem SQL.
    Das mit der Performance war mal so bei V3 !
    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. SQL -> CREATE VIEW
    By Kaufmann in forum IBM i Hauptforum
    Antworten: 17
    Letzter Beitrag: 11-05-06, 14:57
  2. CREATE SQL FUNCTION
    By Xanas in forum NEWSboard Programmierung
    Antworten: 1
    Letzter Beitrag: 23-02-06, 10:29
  3. Table erweitern mit SQL
    By Emely in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 17-11-04, 16:20
  4. CPYTOPCD mit Angabe einer Translate Table
    By jbie in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 11-09-01, 10:21
  5. DATFMT bei CREATE TABLE
    By lorenzen in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 21-03-01, 13:44

Berechtigungen

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