chiragforever has asked for the wisdom of the Perl Monks concerning the following question:

I am trying to open media.vdb SQLite file using DBI module.But getting the error message

"DBD::SQLite::db prepare failed: file is encrypted or is not a databas +e(26) at dbdimp.c line 269 at a.pl line 10. Can't call method "execute" on an undefined value at a.pl line 3."

Please help me out if any body has any idea about the problem.
Thanks in advance.
Chirag

Below is the code:
##########################################

use DBI qw(:sql_types); my $dbh = DBI->connect("DBI:SQLite:media.vdb"); $tmp="select * from links_video"; $sth = $dbh->prepare($tmp); $sth->execute(); @row=$sth->fetchrow(); print "ROW|@row|\n";

20060727 Janitored by Corion: Added formatting, code tags, as per Writeup Formatting Tips

  • Comment on DBD::SQLite::db prepare failed: file is encrypted or is not a database(26) at dbdimp.c line 269 at a.pl line 10.
  • Select or Download Code

Replies are listed 'Best First'.
Re: DBD::SQLite::db prepare failed: file is encrypted or is not a database(26) at dbdimp.c line 269 at a.pl line 10.
by davidrw (Prior) on Jul 27, 2006 at 12:14 UTC
    You probably have mismatched versions of SQLite .. v2 and v3 are incompatible with each other, so if the media.vdb file was created by one but you're trying to read it (sqlite libraries, DBD::SQLite) with the other, you would get that message.