<?xml version="1.0" encoding="windows-1252"?>
<node id="1010722" title="sqlcipher for sqlite" created="2012-12-28 12:36:16" updated="2012-12-28 12:36:16">
<type id="115">
perlquestion</type>
<author id="652112">
TomKane</author>
<data>
<field name="doctext">
&lt;p&gt;I have been using sqlite on Win32 for some time now. I am now trying to use the sqlite3.dll file that is derived from the &lt;a href="http://sqlcipher.net"&gt;sqlcipher&lt;/a&gt; source code. This is a relatively new extension of SQLite that provides a pragma of "key" that lets you encrypt the entire database.&lt;/p&gt;

&lt;p&gt;It took me a while, but I finally found the place for swapping out the dll file: C:/Perl/site/lib/auto/DBD/SQLite/SQLite.dll (where the new dll file was appropriately renamed). I have placed the new sqlite.dll and sqlite.lib files in the directory, but I do not have a sqlite.exp file, such as was provided in the original perl/sqlite installation.&lt;/p&gt;

&lt;p&gt;Here is the very brief program that I used to test the new dll:&lt;/p&gt;

&lt;code&gt;
use DBI ;
my $db_Handle = DBI-&gt;connect( 
        "dbi:SQLite:sql_cipher_test.db",
        "",
        "",
        { AutoCommit  =&gt; 1, }
    ) ;
&lt;/code&gt;

&lt;p&gt;The error message I'm getting is "Can't find 'boot_DBD__SQLite' symbol in" the dll file.&lt;/p&gt;

&lt;p&gt;I have a bad feeling that I'm going to have to rebuild SQLite.pm or the .xs file, or both, or something else that's really scary, in order to get this to work.&lt;/p&gt;

&lt;p&gt;If anyone has wisdom on the matters of linking perl to dll files (to sqlite.dll in particular), I would greatly appreciate your advice.&lt;/p&gt;
</field>
</data>
</node>
