1
data.frame
をodbcを通じて新しいテーブルのSQL Serverデータベースに保存します。 data.frame
には、1つの列に日付が含まれています。SQL Serverデータに日付を書き込むR
私は、次のコマンドを使用しています:
require(odbc)
require(DBI)
MyData <- data.frame(Date = as.Date(c("2017-05-17","2017-05-18"), format = "%Y-%m-%d"))
conn <- DBI::dbConnect(drv = odbc::odbc(), dsn='MyDatabaseSource')
dbWriteTable(conn = conn, name = 'dbo.MyTable', value = MyData, overwrite = T)
しかし、これは、結果、次のエラーメッセージ
Error in result_insert_dataframe([email protected], values) : nanodbc/nanodbc.cpp:1587: 22007: [Microsoft][ODBC SQL Server Driver][SQL Server]Conversion failed when converting date and/or time from character string.
私はcharacter
に列タイプを変更することによってそれを解決したが、その後することができます列はvarchar(255)
としてデータベースに格納されます。 varchar
ではなく、日付の列を日付形式でデータベースに格納するにはどうすればよいですか?
データベース内のその列の型がどのようなものです:私は、日付形式に戻し、その後YYYYMMDD形式で
chr
に日付列を変更することによってこれをしませんでしたか? –テーブルが存在しないので、dbWriteTableはテーブルを作成します。 – Mace
言語依存フォーマットyyyy-mm-ddを使用せず、yyyymmddを使用します。 – sepupic