Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Problemas de criação de tabela RODBC sqlSave


Depois de horas trabalhando nisso, finalmente consegui fazer o sqlSave funcionar enquanto especificava o nome da tabela - respiração profunda, por onde começar. Aqui está a lista de coisas que eu fiz para que isso funcionasse:
  • Abra o Administrador ODBC de 32 bits, crie um DSN de usuário e configure-o para seu banco de dados específico. No meu caso, estou criando uma tabela temporária global, então vinculei ao tempdb. Use este nome de conexão em seu odbcConnection(Name) . Aqui está meu código myconn2 <- odbcConnect("SYSTEMDB") .
  • Depois defini meus tipos de dados com o seguinte código:columnTypes <- list(Record = "VARCHAR(10)", Case_Number = "VARCHAR(15)", Claim_Type = "VARCHAR(15)", Block_Date = "datetime", Claim_Processed_Date = "datetime", Status ="VARCHAR(100)") .
  • Atualizei meus tipos de classe de quadro de dados usando as.character e as.Date para corresponder aos tipos de dados listados acima.
  • Eu já criei a tabela desde que estou trabalhando nela há horas, então tive que descartar a tabela usando sqlDrop(myconn2, "##R_Claims_Data") .
  • Em seguida, executei:sqlSave(myconn2, MainClmDF2, tablename = "##R_Claims_Data", verbose=TRUE, rownames= FALSE, varTypes=columnTypes)

Então minha cabeça caiu porque funcionou! Eu realmente espero que isso ajude alguém daqui para frente. Aqui estão os links que me ajudaram a chegar a este ponto:

Tabela não encontrada

sqlSalvar em R

RODBC