[R] RODBC does not like table names >11/12 characters [sqlFetch vs. sqlQuery]

Stefan Uhmann stefan.uhmann at googlemail.com
Tue Sep 15 11:39:58 CEST 2009


Just in case sb. has the same problem, using sqlQuery instead of 
sqlFetch solved the problem for me with RODBC 1.3-0. Seems as the 
implementation of sqlFetch does something bad to long table names - just 
a guess.

Stefan

Stefan Uhmann schrieb, Am 14.08.2009 14:12:
> Hi List,
> 
> I used to access a Paradox database using RODBC, but since last week I 
> am not able anymore to fetch any table which has a name longer than 11 
> or 12 characters.
> 
> Here is the the pattern of my code, nothing spectacular:
> 
> library(RODBC)
> channel2<-odbcDriverConnect('DSN=xxx')
> #table names with up to 11 characters still work
> sqlFetch(channel2, 'abcdefghijk')
> #table names with 13 or more characters do not
> sqlFetch(channel2, 'abcdefghijklm')
> Fehler in odbcTableExists(channel, sqtable) :
>    ‘abcdefghijklm’: table not found on channel
> 
> I do not have any tables with 12 character names, to check where exactly 
> the borderline is. Of course, the table ‘abcdefghijklm’ exist on the 
> channel, even if I feed it directly t osqlFetch via
> 
> sqlFetch(channel2, sqlTables(channel2)$TABLE_NAME[x])
> 
> I think it has to do with a recent update.packages(), i.e. with an 
> update of RODBC, but I do not know how to use an old RODBC version to 
> test this. Any suggestions, for example how to rre-install an old package?
> 
> Thanks in advance for any help,
> Stefan




More information about the R-help mailing list