Veröffentlicht 6. Mai 200619 j Hi, ich habe folgende Tabellen in einer MySQL DB: CREATE TABLE eins ( id INT AUTO_INCREMENT, satz VARCHAR(250), ... PRIMARY KEY(id) ) CREATE TABLE zwei ( id INT, ... PRIMARY KEY(id) ) In Tabelle eins wird etwas eingetragen. INSERT INTO eins ('', 'Test 123', ...); Jetzt möchte ich über einen SQL Befehl die ID von dem Datensatz der als Text Test 123 hat in Tabelle zwei eintragen. Ich habe es wie folgt versucht: INSERT INTO zwei(id) VALUES (SELECT id FROM eins WHERE satz='Test 123'); Es kommt dann aber leider eine Fehlermeldung... Weiß jemand wo der Fehler liegt???
6. Mai 200619 j Es kommt dann aber leider eine Fehlermeldung... ach. und jetzt soll ich raten, wie die lautet? Weiß jemand wo der Fehler liegt??? INSERT INTO zwei(id) VALUES (SELECT id FROM eins WHERE satz='Test 123'); s'Amstel
7. Mai 200619 j Sry, die Fehlermeldung lautet: #1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT id FROM eins WHERE text = 'Test 123?' )' Wenn ich die SELECT Anweisung alleine ausführe, dann bekomme ich ein Ergebniss, nur als SQ funzt es net...
7. Mai 200619 j Welche MySQL Version setzt Du ein? Warum nimmst Du nicht LAST_INSERT_ID()? select LAST_INSERT_ID(); Frank
8. Mai 200619 j wenn du VALUES weggelassen hättest, hätt es sowieso geklappt. darum hab ichs eigentlich rot markiert. s'Amstel
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.