2012-03-26 5 views
1

Ich habe versucht, eine SQL-Anweisung auszuführen und habe einige Probleme mit der Codierung. Nach dem Entkommen und der Kodierung gibt es einen Syntaxfehler zurück, den ich nicht identifizieren kann. durch den folgenden CodeEconding/char Escaping auf großen SQL-Anweisung in Python mit Mysqldb

Die Aussage gebildet wird:

dbquery = "INSERT INTO series (id,nombreSerie,imdbUrl,urlPoster,descripcionEs,descripcionEn,rating,episodiosEn,episodiosEs,estado,firstAired,airDay,Network) VALUES (" + t['gossip girl']['id']+ "," + t['gossip girl']['seriesname'] + ',http://imdb.com/title/' + t['gossip girl']['imdb_id'] + "," + t['gossip girl']['poster'] + "," + t['gossip girl']['overview'][:400] + "... ,"+ t['gossip girl']['overview'][:400] + "... ," + t['gossip girl']['rating'] + "," + total + "," + total + "," + t['gossip girl']['status'] + "," + t['gossip girl']['firstaired'] + "," + t['gossip girl']['airs_dayofweek'] + "," + t['gossip girl']['network']+")" 
cursor.execute (MySQLdb.escape_string(dbquery)) 

die Ausführung Drucken gibt die folgende:

print MySQLdb.escape_string(dbquery) 
INSERT INTO series (id,nombreSerie,imdbUrl,urlPoster,descripcionEs,descripcionEn,rating,episodiosEn,episodiosEs,estado,firstAired,airDay,Network) VALUES (80547,Gossip Girl,http://imdb.com/title/tt0397442,http://www.thetvdb.com/banners/posters/80547-6.jpg,Gossip Girl satirizes and revolves around the lives of young Manhattan socialites growing up on New York City\'s Upper East Side who attend elite academic institutions while dealing with sex, drugs, jealousy, and other teenage issues.... ,Gossip Girl satirizes and revolves around the lives of young Manhattan socialites growing up on New York City\'s Upper East Side who attend eliteacademic institutions while dealing with sex, drugs, jealousy, and other teenage issues.... ,8.1,0x11|1x18|2x25|3x22|4x22|5x24|,0x11|1x18|2x25|3x22|4x22|5x24|,Continuing,2007-09-19,Monday,The CW) 

Und die Fehler, die ich bekommen, ist dieses:

File "C:\Python27\lib\site-packages\MySQLdb\connections.py", line 36, in default errorhandler raise errorclass, errorvalue 
_mysql_exceptions.ProgrammingError: (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 'Girl,http://imdb.com/title/tt0397442,http://www.thetvdb.com/banners/posters/8054' at line 1") 

Ich weiß, dass die Kommas auf der großen Zeichenfolge möglicherweise die SQL-Syntax beeinflussen, aber ich habe die Kommas ersetzt d Es scheint die Abfrageausführung nicht zu beeinflussen.

Sorry, wenn dies ist sehr einfach, aber ich habe keine Antwort auf dem Netz gefunden (vielleicht habe ich nicht gut bin auf der Suche)

Vielen Dank im Voraus

Antwort

0

Strings haben müssen ‚‘ um sie herum sollten Sie haben

Values (80547,'Gossip Girl','http://imdb.com/title/tt0397442,http://www.thetvdb.com/banners/posters/80547-6.jpg', etc 
+0

Vielen Dank Niek de Klein! Ich habe mich damit herumgeschlagen, aber ich bin nicht sehr daran gewöhnt, SQL Statements zu schreiben. –