Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Probleme mit RODBC sqlSave

Ich weiß, eine sehr alte Frage, aber ich hatte (und habe es für meine Instanz gelöst) gerade das gleiche Problem und bekam diesen Fehler

Error in odbcUpdate(channel, query, mydata, coldata[m, ], test = test,  : 
  missing columns in 'data'

von der Verwendung von

sqlSave(

Im rodbc-Paket.

Ich habe es gelöst, indem ich

eingestellt habe
,fast = F

Wenn jemand anderes aus den ersten Google-Ergebnissen hier landet, hoffe das hilft

BEARBEITEN:Also habe ich mir das seitdem mehr angesehen. Wenn Sie das Flag auf "F" setzen, wie ich unten empfehle, fügen Sie die Zeilen Zeile für Zeile in die Datenbank ein. Während es "T" war, würde es fehlschlagen, wenn eine Zeile falsch wäre. aber jetzt schlägt diese Zeile fehl und Sie wissen nichts davon. Daher fehlen in der Datenbank möglicherweise Daten, von denen Sie dachten, dass sie darin enthalten sind. Überprüfen Sie die Anzahl der Zeilen in der Datenbank im Vergleich zu der Anzahl der Zeilen, die Sie aus Ihrem Datenrahmen einfügen möchten. Sie haben wahrscheinlich einen einzelnen Wert, der nicht kompatibel ist. Was ich jetzt getan habe, ist die Verwendung der Funktion "Einfügen" in einer Schleife, um eine Zeichenfolge wie "insert into tableName values("eg1","eg2")" zu erstellen. Auf diese Weise kann ich Fehlermeldungen zurückerhalten, warum es nicht geklappt hat in die Datenbank