Ok, more info....
The SQLite.so library in the perl site install directory is version
3.2.7 from looking at the strings in the binary itself.
If I rename that file so as to 'hide' it the perl code falls over dead
as it can't find it.
SO.... I have a library that I NOW it is using which:
Claims to be 3.2.7 according to the source code.
Claims to be 3.2.7 according to the compiled lib strings.
BUT It Returns 3.2.2 from the $dbh ->{sqlite_version} function.
It ACTS like it is older than 3.2.6 in that
count(distinct(expression)) does not work.
Now What?????
m christensen wrote:
OK, the DBD 1.11 install creates a SQLite.so Library.
There is ONE in the perl site install directory.
The is another one burried down in /home which perl SHOULD not find....
The strings command finds version 3.2.7 in BOTH files.
Where else could perl possibly be finding a SQLite library?????
m christensen wrote:
My Perl code reports version 3.2.2 from $dbh->{sqlite_version}
My sqlite header file in the sqlite DBD 1.11 install dir clearly
states 'IT' is 3.2.7.
The DBD 1.11 install built fine, tested perfectly and installed
without errors.
There must be an older one that came with the OS install or something
which perl is finding first.
Thanks.
Dennis Cote wrote:
m christensen wrote:
I have a linux machine that saw one-to-many power outages.
I got a backup of everything and reinstalled it.
I have some code that uses Perl DBI and connects to several Oracle
Databases and builds several local sqlite databases.
It pulls a lot of data from Oracle and builds several hundred Meg
of sqlite tables before this failure.
I have the following code which HAD worked for months.
select count(distinct(rec_key))
from test_rows
where list = 'A';
Now it suddenly fails with a Prepare failed near 'DISTINCT' :
syntax error(1) at dbdimp.c line 269 error.
The code runs just fine with the same database file using the
sqlite command line tool.
I tried upgrading DBI from 1.48 to 1.5.
I tried downgrading the sqlite DBD to 1.09 (Which is what I THINK I
was running before), nothing helps.
Ideas.
It sounds familiar but I can't find any references for the life of
me...
SQLite has only supported the count(distinct(expression)) since
version 3.2.6.
I suspect that you have restored to an earlier version. You can
check the library version by executing
select sqlite_version();
HTH
Dennis Cote