Po wielu godzinach pracy nad tym udało mi się w końcu uruchomić program sqlSave podczas określania nazwy tabeli — głęboki oddech, od czego zacząć. Oto lista rzeczy, które zrobiłem, aby to zadziałało:
- Otwórz 32-bitowy Administrator ODBC i utwórz nazwę DSN użytkownika i skonfiguruj ją dla swojej bazy danych. W moim przypadku tworzę globalną tabelę temp, więc połączyłem się z tempdb. Użyj tej nazwy połączenia w swoim
odbcConnection(Name)
. Oto mój kodmyconn2 <- odbcConnect("SYSTEMDB")
. - Następnie zdefiniowałem moje typy danych za pomocą następującego kodu:
columnTypes <- list(Record = "VARCHAR(10)", Case_Number = "VARCHAR(15)", Claim_Type = "VARCHAR(15)", Block_Date = "datetime", Claim_Processed_Date = "datetime", Status ="VARCHAR(100)")
. - Następnie zaktualizowałem moje typy klas ramek danych za pomocą
as.character
ias.Date
aby pasowały do typów danych wymienionych powyżej. - Już utworzyłem tabelę, ponieważ pracowałem nad nią godzinami, więc musiałem ją usunąć za pomocą
sqlDrop(myconn2, "##R_Claims_Data")
. - Następnie uruchomiłem:
sqlSave(myconn2, MainClmDF2, tablename = "##R_Claims_Data", verbose=TRUE, rownames= FALSE, varTypes=columnTypes)
Potem odpadła mi głowa, bo zadziałało! Naprawdę mam nadzieję, że to pomoże komuś iść naprzód. Oto linki, które pomogły mi dotrzeć do tego punktu: