DBIパッケージとodbcパッケージを使用してSQL Serverデータベースに接続しています。私はfield.types
引数で指定された列型のテーブルを作成しようとしています。何らかの理由でこれが機能していないため、Rは書き込み時に独自のデータ型を選択します。SQL ServerデータベースのR DBIパッケージからdbWriteTableを使用するとFieldTypeが機能しない
再現性の例:
table <- data.frame(
col1 = 1:2,
col2 = c("a", "b")
)
con <- dbConnect(
odbc::odbc(),
dsn = "dsn",
UID = login,
PWD = password,
Port = 1433
)
dbWriteTable(
conn = con,
value = table,
name = "tableName",
row.names = FALSE,
field.types = c(
col1 = "varchar(50)",
col2 = "varchar(50)"
)
)
結果:私は上記の私の例を修正するにはどうすればよい
:列
[col1] [int] NULL, [col2] [varchar](255) NULL
私の質問で "tableNameの" と呼ばれるテーブル両方の列のデータベースの列の種類は
varchar(50)
になります。field.types
引数を他の例で正しく使用するにはどうすればよいですか?
、「種類が」私は何を私が知りたいのを使用する必要がありますされています。私は(それは問題かもしれないので、Rは、大文字と小文字が区別されます)「INT」または「整数」または「INT」が必要なのでしょうか?そして、これらのデータ型のリストはどこにありますか?私はdbDataTypeを使用しようとしましたが、この関数が返す型を使用するとどちらも機能しません。それとも別のことをやっているのですか?
ご協力いただきありがとうございます。
あなたはそうです。私はこれを再試行し、今それは動作します。非常に奇妙な。私はここで何が起こったのか分かりませんが、今はうまくいきます。どうも! – Willem