Thanks for the summary. Could be a useful addition to the docs.

1) single user.
2) I'm not 'using' anything. Just default open.
3) --> this could be it. How does this work exactly, and how do you avoid
it/correct it (after the event)?
4) N/A
5) Latest download.
6) Windows 8.1 NTFS.
7) None.
8) N/A.

Regards
David M Bennett FACS

Andl - A New Data Language - andl.org


-----Original Message-----
From: sqlite-users-boun...@mailinglists.sqlite.org
[mailto:sqlite-users-bounces at mailinglists.sqlite.org] On Behalf Of Keith
Medcalf
Sent: Saturday, 23 May 2015 1:42 PM
To: General Discussion of SQLite Database
Subject: Re: [sqlite] Under what circumstances can a table be locked when
the database is first opened?


1)  Something else has the database open and locked.
2)  You are using Shared Cache
3)  Something forgot to finalize a select
4)  The database is stored on a non-locally-attached filesystem
5)  An issue in the version of SQLite you are using (and you did not say
which version you are using)
6)  A buggy filesystem driver (you did not say which one you are using)
7)  Badly designed antivirus software
8)  Badly designed file syncronization software (for example, storing the
database in a directory that is being monitored and synced by badly designed
software (dropbox for example)).

> -----Original Message-----
> From: sqlite-users-bounces at mailinglists.sqlite.org 
> [mailto:sqlite-users- bounces at mailinglists.sqlite.org] On Behalf Of 
> david at andl.org
> Sent: Friday, 22 May, 2015 21:13
> To: 'General Discussion of SQLite Database'
> Subject: [sqlite] Under what circumstances can a table be locked when 
> the database is first opened?
> 
> Question: Under what circumstances can a table be locked when the 
> database is first opened?
> 
> My program does:
> 
> DROP TABLE IF EXISTS
> CREATE TABLE
> INSERT INTO (multiple times)
> SELECT * (for each row)
> 
> Run it once and it works perfectly. Run it twice and the DROP TABLE 
> triggers the error:
> 
> SQLITE_LOCKED, database table is locked
> 
> Delete the database and run it again and it works. Just once.
> 
> Nothing in the documentation tells me how a table can be locked when 
> the database is first opened. I'm using the raw C interface on 
> Windows, so what can I be doing wrong?
> 
> The code is actually written in C#, but uses Interop to call the C API 
> directly. The database open code looks like this. No open flags are used.
> 
> LastResult = (Result)sqlite3_open(path, out _dbhandle);
> 
> Regards
> David M Bennett FACS
> 
> Andl - A New Data Language - andl.org
> 
> 
> _______________________________________________
> sqlite-users mailing list
> sqlite-users at mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users



_______________________________________________
sqlite-users mailing list
sqlite-users at mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to