用R读取MS SQLServer 的MDF文件
今天客户发了两个文件enjoy_interface.ldf 和enjoy_interface.mdf,从后缀可以看出是微软的SQL Server数据库文件,可我系统上并没有安装SQL Server或者Express。网上搜索了一番,发现至少需要SqlLocalDB
找到SqlLocalDB.exe的目录,默认是: C:\Program Files\Microsoft SQL Server\120\Tools\Binn
命令行下运行
SqlLocalDB -c enjoy_interface -s#创建并运行enjoy_interface实例
然后按图示创建DSN(注意选择SQL Server Native Client 11.0)
接下来就可以在R中使用我们创建的DSN了
library("RODBC") crs$odbc <- odbcConnect("localdb", believeNRows=TRUE) crs$odbc.tables <- sqlTables(crs$odbc)$TABLE_NAME crs$sale <- sqlQuery(crs$odbc, "SELECT * FROM tb_sale") #crs$cust <- sqlQuery(crs$odbc, "SELECT * FROM tb_cust") #报错 # Error in as.POSIXlt.character(x, tz, ...) : # character string is not in a standard unambiguous format #解决办法,强制转换 crs$cust <- sqlQuery(crs$odbc, "SELECT * FROM tb_cust",as.is=T)