Domanda molto vecchia lo so, ma ho avuto (e risolto per la mia istanza) lo stesso problema proprio ora, ottenendo questo errore
Error in odbcUpdate(channel, query, mydata, coldata[m, ], test = test, :
missing columns in 'data'
dall'uso
sqlSave(
Nel pacchetto rodbc.
Ho risolto impostando
,fast = F
Se qualcun altro dai primi risultati di Google arriva qui, spero che questo aiuti
EDIT:Quindi da allora l'ho esaminato di più. Quando imposti il flag su "F" come ti consiglio di seguito, inserisci le righe, riga per riga nel database. Mentre era "T", fallirebbe se una riga non fosse corretta, ma ora quella riga fallisce e tu non lo sai. Quindi nel database potrebbero mancare i dati che pensavi fossero lì. Controlla il conteggio delle righe nel database rispetto al numero di righe che prevedi di essere inserito dal tuo dataframe. Probabilmente hai un singolo valore che è incompatibile. Quello che ho iniziato a fare ora è usare la funzione "incolla" in un ciclo per creare una stringa come "insert into tableName values("eg1","eg2") "in questo modo posso recuperare i messaggi di errore sul motivo per cui non è andato nel database