Sure here is the code.

using (SQLiteConnection sql_con = new SQLiteConnection("Data 
Source=C:\\Path\\To\\File\\docuidb.db;"))
        {
            sql_con.Open();
            SQLiteCommand sql_cmd = sql_con.CreateCommand();
            string CommandText = "update MyTable set field1='test', 
field2='test', field3='test' WHERE field4='field4';
            sql_cmd.CommandText = CommandText;
            sql_cmd.ExecuteNonQuery();
            sql_cmd.Dispose();
            sql_con.Close();
            sql_con.Dispose();
                //this just checks to see if it is locked or not and returns 
the result.
            try { FileStream fs = File.Open("C:\\Path\\To\\File\\docuidb.db", 
FileMode.Open); fs.Close(); }
            catch(Exception e){result = e.Message.ToString();}
        }

I am not sure about the SQLite.Interop.dll, when I remove the file it compiles 
fine, but when I go to run it I get:

System.DllNotFoundException: Unable to load DLL 'SQLite.Interop.dll': The 
specified module could not be found. (Exception from HRESULT: 0x8007007E)
   at 
System.Data.SQLite.UnsafeNativeMethods.sqlite3_config_none(SQLiteConfigOpsEnum 
op)
   at System.Data.SQLite.SQLite3.StaticIsInitialized()
   at System.Data.SQLite.SQLiteLog.Initialize()
   at System.Data.SQLite.SQLiteConnection..ctor(String connectionString)
   at Service.myService

Is this not the correct way to go about using the dll in the code?  This was 
originally built by someone who is not here anymore, so I cannot tell you the 
reasoning behind doing it this way.  Thank you for looking at this.

James Johnston

-----Original Message-----
From: [email protected] [mailto:[email protected]] 
On Behalf Of eschneider FE
Sent: Thursday, June 20, 2013 10:37 AM
To: 'General Discussion of SQLite Database'
Subject: Re: [sqlite] SQLite C# differences between Windows Server 2008 and 2003

Can you post the code?

And why do you need to use the SQLite.Interop.dll ?

-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of 
[email protected]
Sent: Thursday, June 20, 2013 9:59 AM
To: '[email protected]'
Subject: [sqlite] SQLite C# differences between Windows Server 2008 and 2003

Hello,

  I am using System.Data.SQLite.dll version 1.0.82.0 and SQLite.Interop.dll to 
connect to some SQLite databases using C# Web Services.  The code is working 
fine on Windows Server 2008, but on 2003 it is not releasing the database at 
the end of the call.  It is extremely simple code, just to connect, update a 
record, then close and dispose is being called.  I have tried a using(){}, 
which should automatically call the close and dispose as well as a 
try{ExecuteNonQuery()}finally{Close()}, but for some reason that database file 
remains locked well after the script has ran.  Sometimes it can take a few 
seconds up to a few minutes to close on the 2003 server(which works fine on the 
2008 server).  It might just be some setting for the IIS Worker Process, but I 
don't know where else to look.  If I manually end the w3wp.exe, it will then 
release the file back to the computer.  Has anyone ran into this issue?  What 
other settings should I look for?  Let me know when you get a chance, and I lo
   ok forward to hearing back.

James Johnston
_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users



_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to