Door
Elio vp
op 20-11-2010 14:49
gewijzigd op 20-11-2010 14:50
4.550 views
Hoi,
Ik ga ergens de fout in maar zie niet direct waar..
Als iemand een hint/duw kan geven richting de goede manier dan ben ik een tevreden mens :).
foutmelding:
INSERT INTO clients(username, password, fil, phone, email) SELECT '1', '2', id FROM fils WHERE fils.postalcode = '3', '4', '5'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 ' '4', '5'' at line 2
--> Ik heb een aantal dingen weggedaan met nr's omdat er gevoelige info in staat.
Mijn stukje code dat dit zou moeten doen:
$import = "INSERT INTO clients(username, password, fil_id, phone, email)
SELECT '$data[3]', '$data[4]', id FROM fils WHERE fils.postalcode = '$data[0]', '$data[1]', '$data[2]'";
Gegevens worden uit een .csv bestand geladen..
Kolom 1 uit de csv = postcode's
Kolom 2 uit de csv = telnr's
Kolom 3 uit de csv = emails
Kolom 4 uit de csv = usernamen
Kolom 5 uit de csv = paswoorden
Het gaat fout ergens om dat ik reeds een table heb in mysql waar alle postcodes in staan met elk hun uniek ID, en dat uniek ID wil ik in deze tabel krijgen..
Waarschijnlijk doe ik iets stoms ergens maar ik zie het niet direct..
Als iemand kan/wil helpen -> zeer geapprecieerd.
Vriendelijke Groeten!
?
Onbekende gebruiker
20-11-2010 15:10
Integers horen niet tussen quotes.
Leer sql: [google]sql where[/google].
Jah klopt eigenlijk wel, mijn select query is idd veel langer maar ik zou anders niet weten hoe ik die andere data vanuit die array kan inputten samen met die select query..
Als je daar ff mee kan helpen.. :-)
Hartelijk dank! en nogmaals bedankt voor jou reacties!!
?
Onbekende gebruiker
20-11-2010 18:59
De insert gaat rij voor rij. Dus de select gaat ook rij voor rij.
Waarom verschilt dan die select query van jou zoveel?
Kijk ook naar de where...
Die where kan sowieso nooit of te nimmer.
En dat ligt niet aan de insert, die geeft ook geen fout.
Mysql zegt toch dat de fout bij de where ligt.