Irskens Michael
2009-Sep-08 10:09 UTC
[R] RODBC version 1.3-0 crashes with systemtables using SQL server 2000
Dear all, I need to test for the existence of an index on a table. This cannot be done with sqlPrimaryKeys as it is not a primary key. Therefore I select directly from the systemtable of SQL-Server 2000 named sysindexes. This works well with RODBC Version 1.2-5 but not with version 1.3-0. Here is the code of the test example: sink(file = "proto.txt", append = FALSE, type = "output",split = TRUE) library(RODBC) sessionInfo() str <- "DRIVER=SQL Server;SERVER=NN;APP=Test;DATABASE=Northwind;Trusted_Connection=YES" sql.ch <- odbcDriverConnect(connection = str, case = "nochange", believeNRows = TRUE) sql <- "Select top 10 * From sysindexes" cat(date(),"Start query\n") rc <- sqlQuery(sql.ch, sql) print(rc) odbcCloseAll() sink() This is the output of the correct working version 1.2-5: R version 2.8.1 (2008-12-22) i386-pc-mingw32 locale: LC_COLLATE=German_Germany.1252;LC_CTYPE=German_Germany.1252;LC_MONETARY=German_Germany.1252;LC_NUMERIC=C;LC_TIME=German_Germany.1252 attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] RODBC_1.2-5 Tue Sep 08 09:54:37 2009 Start query id status first indid root minlen keycnt groupid dpages 1 1 18 080000000100 1 0B0000000100 42 1 1 3 2 1 2 3A0100000100 2 3A0100000100 7 3 1 1 ... output shortened This is the output for version 1.3-0, which crashes after the call to sqlQuery: R version 2.9.2 (2009-08-24) i386-pc-mingw32 locale: LC_COLLATE=German_Germany.1252;LC_CTYPE=German_Germany.1252;LC_MONETARY=German_Germany.1252;LC_NUMERIC=C;LC_TIME=German_Germany.1252 attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] RODBC_1.3-0 Tue Sep 08 09:52:37 2009 Start query CRASH! By the way: 'Select top 1 * From sysindexes' does not crash! I really do'nt know why RODBC crashes. Any hints to solve this problem with version 1.3-0 are welcome. Thanks in advance Michael Irskens German Public Employment Services Operations Research Nuremberg, Germany [[alternative HTML version deleted]]