Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R:Data Frame正在从nvarchar/unicode字段中删除所有其他字符_R_Sql Server_Database_Odbc_Sqldatatypes - Fatal编程技术网

R:Data Frame正在从nvarchar/unicode字段中删除所有其他字符

R:Data Frame正在从nvarchar/unicode字段中删除所有其他字符,r,sql-server,database,odbc,sqldatatypes,R,Sql Server,Database,Odbc,Sqldatatypes,我已通过以下方式将R连接到我的数据库: con <- DBI::dbConnect(odbc::odbc(), Driver = "/usr/local/lib/libmsodbcsql.17.dylib", Server = "my server", Database = "my db", UID

我已通过以下方式将R连接到我的数据库:

con <- DBI::dbConnect(odbc::odbc(),
                      Driver   = "/usr/local/lib/libmsodbcsql.17.dylib",
                      Server   = "my server",
                      Database = "my db",
                      UID      = "my uid",
                      PWD      = "my pw",
                      Port     = 1433)
返回:

SLn
AddressLine1    OrderDate    OrderTotal
Ts drs ie1     2019-10-28      100.00
但是,实际的表名是“SOLine”

示例2-使用以下命令运行查询:

query<-paste0("SELECT SOOrder.AddressLine1, SOOrder.OrderDate, SOOrder.OrderTotal FROM SOOrder WHERE SOOrder.OrderNbr=1")

test_query<-dbGetQuery(con,query)

test query
在SSMS中运行相同查询时,返回:

AddressLine1             OrderDate    OrderTotal
Test Address Line 1     2019-10-28      100.00

因此,整数和日期时间不受影响。它看起来只是字符串:更具体地说是nvarchar(varchar类型不受影响)。查看模式时,它们是Unicode字段。

尚未找到修复方法,但有一个很好的解决方法

CAST(Table.Column作为varchar)作为列

这允许整个列成功地完成

AddressLine1             OrderDate    OrderTotal
Test Address Line 1     2019-10-28      100.00