Announcement

Collapse
No announcement yet.

Insert mit Select

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

  • Insert mit Select

    Hallo,
    hab ein Problem mit meine Insertanweisung.... im Internet fand ich nur Anweisungen mit einer Select ...


    INSERT INTO `euro`.`spiele` (`SpielID` ,`Manschafts1ID` ,`Manschafts2ID` ,`ToreM1` ,`ToreM2` ,`StadiumID` ,`Datum` ,`Zuschauer` ,`Art`)
    VALUES ( NULL ,
    Select ManschaftsID from Manschaften where Land = Schweiz;,
    Select ManschaftsID from Manschaften where Land = Tschechien;,
    '1', '0',
    'Select StadiumID from Stadium where Name = "St.Jakob-Park";',
    '08.03.08',
    '2000',
    'HF'
    );

    Vieleicht hat ja jemand eine Idee
    Danke

  • #2
    Hallo,

    liefern die Select's immer nur einen Wert?

    Gruß,
    Pixel

    Comment


    • #3
      Originally posted by Tanger View Post
      ...


      INSERT INTO `euro`.`spiele` (`SpielID` ,`Manschafts1ID` ,`Manschafts2ID` ,`ToreM1` ,`ToreM2` ,`StadiumID` ,`Datum` ,`Zuschauer` ,`Art`)
      VALUES ( NULL ,
      Select ManschaftsID from Manschaften where Land = Schweiz;,
      Select ManschaftsID from Manschaften where Land = Tschechien;,
      '1', '0',
      'Select StadiumID from Stadium where Name = "St.Jakob-Park";',
      '08.03.08',
      '2000',
      'HF'
      );
      Das Statement enthält mehrere Fehler!
      • Subselects werden NICHT in Hochkomma geschrieben
      • Subselects werden NICHT mit einem Semikolon versehen
      • SQL Strings müssen mit einfachen und nicht mit doppelten Hochkomma geschrieben werden

      Wenn du das berücksichtigst, dann sollte deine Insert-Anweisung funktionieren. Zusätzlich ist noch - wie von Pixel1001 angedeutet - wichtig, daß jedes Subselect mindestens einen und nur genau einen Datensatz zurückliefert!

      Gruß Falk
      Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

      Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

      Comment


      • #4
        danke für die antworten ich werde das mal ausprobieren ... allerdings
        hat die insert anweisung mysql erzeugt und soweit ich weiß funktioniert die auch... wenn ich die selects einzeln ausführe bekomme ich einen wert zurück ... führe ich die gesamte insert mit selects aus bekomme ich 0 in die tabell geschrieben...

        Comment


        • #5
          also so gehts:
          Code:
          INSERT INTO `euro`.`spiele` (`SpielID` ,`Manschafts1ID` ,`Manschafts2ID` ,`ToreM1` ,`ToreM2` ,`StadiumID` ,`Datum` ,`Zuschauer` ,`Art`)
          VALUES (
          NULL , 
          (Select ManschaftsID from Manschaften where Land = "Schweiz"), 
          (Select ManschaftsID from Manschaften where Land = "Tschechien"),
           '1', '0', 
          (Select StadiumID from Stadium where Name = "St.Jakob-Park"), 
          '08.03.08', 
          '2000', 
          'HF'
          );
          gruß
          martin

          Comment

          Working...
          X