一度に 1 行ずつ Oracle テーブルに行を挿入する必要があります。PK の設定により、重複する場合は挿入されません。db テーブルへの重複行の挿入を拒否する必要があります。
私は RODBC を使用してこれを行っていますが、午後 7 時以降はテーブルに重複する値がなく、午後 7 時以降はテーブルにレコードを挿入できません。データ フレームには、7PM より前と 7PM より後の値があります。しかし、午後 7 時以降、宛先 oracle テーブルには値がありません。一度に1行ずつ値がテーブルに挿入されるようにするために、他にどのように実装できますか?
tryCatch({
ch=odbcConnect("<id>",pwd = "<password>")
sqlSave(ch,dat, tablename="<tablename>", rownames=FALSE, append=TRUE, fast=FALSE)
},error = function(e) {
print(e)
})
odbcClose(ch)
次のエラーが表示されます。
<simpleError in sqlSave(ch, dat, tablename = "<tablename>", rownames = FALSE, append = TRUE, fast = FALSE): un
able to append to table '<tablename'>