sql-serverrrevoscaler

revoscaler sqlServerdData rxImport uniqueidentifier column failed


I'm trying to import data from SQL Server, but I'm having issues importing a table which consists of uniqueidentifier column type.

I'm using R Client 3.3.2.0 to query database.

Database table:

enter image description here

Code:

sqlConnString = "DRIVER=ODBC Driver 11 for SQL Server;SERVER=JDIMKO;DATABASE=Test;UID=sa;PWD=***;"

colClasses = c("id" = "integer", "ui" = "character")

sqlServerData <- RxSqlServerData(
    sqlQuery = "select * from tbl1",
    connectionString = sqlConnString, colClasses = colClasses)

custData = rxImport(sqlServerData)

Error:

Unhandled SQL data type!!! 
Unhandled SQL data type!!! 
Could not open data source.
Error in doTryCatch(return(expr), name, parentenv, handler) : 
  Could not open data source.

Solution

  • RxSqlServerData not supported UNIQUEIDENTIFIER data type. You should convert it to varchar.

    sqlServerData <- RxSqlServerData(
        sqlQuery = "select id, CONVERT(VARCHAR(36), ui) ui from tbl1",
        connectionString = sqlConnString, colClasses = colClasses)