2017-12-22 9 views
1

Ich habe ein Problem mit dem Löschen der Tabelle (Löschen von Datensätzen).SQL Alchemy Python DELETE-Datensätze, seltsames Schema

Die Tabelle haben rep Schema wie folgt aus: ART \ USER.TableName

Mein Code sieht so aus:

params = urllib.parse.quote_plus("DRIVER={SQL 
SERVER};SERVER=XXXXX;DATABASE=DBNAME;") 
engine = sqlalchemy.create_engine("mssql+pyodbc:///?odbc_connect=%s" % 
params) 

c=engine.connect() 
sql=("DELETE * FROM PROD\\USER.TableName") 
result=c.execute(sql) 

Was mache ich falsch und wie kann ich diese Arbeit macht (ich kann es nicht ändern das Schema der DB).

ERROR: Incorrect syntax near * 

Antwort

3

delete keine Spaltenliste nehmen (es sei denn, Sie top verwenden). Verliere einfach die *. Darüber hinaus ist es wahrscheinlich eine gute Idee, den Schemanamen zu umgehen:

sql=("DELETE FROM [PROD\\USER].TableName") 
+1

Hallo Mureinik und Ilja. Nach dem Kommentar von Mureinik wirkte das wie ein Zauber, aber Ilja das war auch keine schlechte Idee, dem Schemanamen zu entfliehen. Das einzige, was ich bedauere, kommt so spät hierher, ich verschwendete zu viel Zeit für solch dumme Probleme. Vielen Dank an Sie beide. – Kasprovv