Announcement

Collapse
No announcement yet.

SQL Inhalte dynamisch Erzeugen, aber WIE ???

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • SQL Inhalte dynamisch Erzeugen, aber WIE ???

    Hallo,

    ich suche nach folgender Lösung. Ich möchte Abhängig des Variableninhalts unterschiedliche Inhalte in eine Tab. Eintragen. z.Bsp. Hat die Var NULL soll auch NULL Übergeben werden hat die Var ein Datum soll dieses Übergeben werden.

    $sql="INSERT INTO NEUEMITARBEITER(
    NEUEMITARBEITER.NM_MELDUNG, NEUEMITARBEITER.NM_MELDER,
    NEUEMITARBEITER.NM_TERMIN)
    VALUES ('$meldedatum', '$melder', HIER STEHT NULL ODER $termin ";
    IF $termin=="" then $sql=$sql+NULL else $sql=$sql+$termin;

    Ich hoffe Ihr habe eine bessere Idee!

    Vielen dank im voraus
    Wolfgang

  • #2
    Hi!

    Wo soll die Selektion "zusamengebaut" werden ?
    In der Datenbank oder durch deine Applikation.
    Welche DB setzt du ein ? Wenn durch deine Applikation welches Entwicklungstool setzt du ein ? Wenn du unter
    Oracle in einer Selektion in Abhägigkeit vom Wert ein Insert
    machen möchtest siehts es so aus:

    Beispiel:

    In Abhängigkeit von der UNTER_Nummer
    soll ein anderer Wert in die Tabelle geschrieben
    werden.
    Wenn 1 in der Variablen steht wird 3 reigeschrieben.
    Wenn 4 in der Variablen steht wird 2 reigeschrieben.
    Wenn kein passender Treffer vorhanden ist wird der Default-Wert 666 (teuflische Angelegenheit ) geschrieben.
    insert into

    GDV.VS_NUMMER
    ( VSNR,
    HAUPT_Nummer,
    UNTER_Nummer
    )
    values (123,444,decode ( v_unter,
    1,3,
    4,2,
    99,1,
    666 ))


    Gruß
    Michae

    Comment


    • #3
      Hallo,

      ich benutze eine DB2UDB und möchte über eine Webanwendung mit PHP
      datensätze einfügen.

      Ich möchte folgende SQL durch eine PHP Page ausführen lassen :
      $sql="INSERT INTO NEUEMITARBEITER(
      NEUEMITARBEITER.NM_MELDUNG,
      NEUEMITARBEITER.NM_Melder, ............
      NEUEMITARBEITER.NM_TERMIN)
      VALUES (
      '$meldedatum',
      '$melder',................
      Hier soll NULL oder '$termin' stehen
      ";
      IF $termin=="" then $sql=$sql+"NULL)" else $sql=$sql+$termin+")";

      Das ganze soll für 7 Variablen sein.

      D.H. Formular ausfüllen, absenden (Neue Seite aufrufen mit dem SQL) fertig. Einige Datumsfelder können Null sein.
      Beim Insert wird aber erst auf das Format geprüft und so kommt es zu dem Fehler.
      Also muß anstatt des Variableninhalts Null übergeben werden. Es kann aber nicht ein String mit Inhalt Null sein.
      So müßte je nach Formularinhalt das SQL dynamisch sein.

      Leider weiß ich aber noch keine Lösung wie es im Code aussehen muß.:-(

      Vielen dank!!!

      Gruß Wolfgan

      Comment

      Working...
      X