[NEWSboard IBMi Forum]
Seite 1 von 2 1 2 Letzte
  1. #1
    Registriert seit
    Feb 2006
    Beiträge
    78

    SQL Datenfeld in Tabelle einfügen

    Hallo Gemeinde,

    besteht die Möglichkeit ein Datenfeld in eine DB an eine bestimmte Stelle einfügen zu können?

    Beispiel:
    Datensatz hat Felder.
    - Nummer
    - Kunde
    - Adresse
    - User ...

    nun möchte ich gerne zwishen Kunde und Adresse das Feld Firma einfügen.
    Ist das möglich?

    Thx!

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Bei SQL-Tabellen ist die Position des Feldes unerheblich.
    Es gibt auch keinen SQL-Befehl dafür.

    Was du machen kannst:
    Eine neue Tabelle mit den Feldern in der gewünschten Folge erstellen und per "insert into Neu (f1, f2, ..., fn) select f1, f2, < default > , ..., fn from Alt" kopieren.
    Zum Schluss nur noch umbenennen und fertig.
    Nunja, Indizes, Views auf "Alt" ... sind natürlich ebenso dann umzubiegen.
    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

  3. #3
    Registriert seit
    Feb 2006
    Beiträge
    78
    Hmm, schade.
    Muss ich dann den von dir beschriebenen Weg gehen (möchte einfach bestimmte Felder in einer Reihenfolge haben - nur für mich )

    Aber Danke!

  4. #4
    Registriert seit
    Aug 2001
    Beiträge
    2.928
    Korrektur Vor Release 7.1 gab es keinen Weg eine Spalte an einer bestimmten Stellen in eine Tabelle einzufügen!

    Seit Release 7.1 ist das möglich!

    Dazu muss man lediglich nach der Spalten-Definition BEFORE und den Spalten-Namen, vor der die neue Spalte eingefügt werden soll angeben:

    Code:
    ALTER TABLE YourLib/YourTable 
          ADD COLUMN NewColumn CHARACTER (10) NOT NULL DEFAULT 
          BEFORE ColumnX;
    Birgitta
    Birgitta Hauser

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

  5. #5
    Registriert seit
    Nov 2003
    Beiträge
    2.403
    Oder eine passende DDS-Quelle erstellen und CHGPF SRCFILE(...) SRCMBR(...).

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Allerdings frage ich mich, wofür das gerade bei SQL-Tabellen nötig ist.
    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

  7. #7
    Registriert seit
    Nov 2003
    Beiträge
    2.403
    Vielleicht damit der SELECT * FROM TABELLE aufgeräumt aussieht.

  8. #8
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Dies gilt aber doch nur für Dialog-SQL's, im Programm ist das doch vollkommen egal.
    Aber wenn's Freude macht .
    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

  9. #9
    Registriert seit
    Feb 2006
    Beiträge
    78
    Yes Yes Yes, Danke!

    Ich will das haben, dann sieht die DB für mich besser aus

    schönes Wochenende!

    LG

  10. #10
    Registriert seit
    Feb 2006
    Beiträge
    78
    Zitat Zitat von B.Hauser Beitrag anzeigen
    Korrektur Vor Release 7.1 gab es keinen Weg eine Spalte an einer bestimmten Stellen in eine Tabelle einzufügen!

    Seit Release 7.1 ist das möglich!

    Dazu muss man lediglich nach der Spalten-Definition BEFORE und den Spalten-Namen, vor der die neue Spalte eingefügt werden soll angeben:

    Code:
    ALTER TABLE YourLib/YourTable 
          ADD COLUMN NewColumn CHARACTER (10) NOT NULL DEFAULT 
          BEFORE ColumnX;
    Birgitta
    Möchte das Thema nochmals aufgreifen.
    Besteht auch die Möglichkeit bestehende Felder in der Reihung zu verschieben?
    Beispiel:
    -Name
    -Vorname
    -Straße
    -Ort
    -PLZ

    nun möchte ich PLZ vor Ort stellen.

    Geht das?

    Thx

  11. #11
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Bevor du es so kompliziert machst, erstelle doch einfach eine View, die die Felder in der gewünschten Reihenfolge enthält und arbeite dann mit dieser.
    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
    Feb 2006
    Beiträge
    78
    Zitat Zitat von Fuerchau Beitrag anzeigen
    Bevor du es so kompliziert machst, erstelle doch einfach eine View, die die Felder in der gewünschten Reihenfolge enthält und arbeite dann mit dieser.
    Das ist schon ein gangbarer Weg.

    Aber ich bin halt eher für die Anpassung in der DB.
    Ich möchte es einfach wissen, ev. braucht man das ja später einmal.

    LG

Similar Threads

  1. Antworten: 11
    Letzter Beitrag: 18-07-16, 09:49
  2. Tabelle per SQL übertragen
    By marty in forum NEWSboard Programmierung
    Antworten: 1
    Letzter Beitrag: 04-02-12, 12:20
  3. Ungültiges Datum in einer mit SQL erstellten Tabelle
    By GJV23 in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 03-02-11, 17:52
  4. SQL .. for update of (RPG embedded SQL)
    By loeweadolf in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 01-06-06, 09:43
  5. Tabelle einfügen in RPG
    By santoshs in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 26-07-05, 16:11

Berechtigungen

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