在ASP.NET中使用Sqlite,有下面的注意事项:
1,使用最新版本1.0.66.0,以前的1.0.60.0有bug。
2,发布的时候不要忘记把System.Data.SQLite.DLL拷贝到Bin目录下。否则其它机器上不能正确执行。
3,为了方便,一般把DB文件放到App_Data目录下,这样在web.config中可以这样配置:
<add name="ConnectSqlite3" connectionString="data source=|DataDirectory|Sqliete3.db3"/>
4,为了能正确使用,web.config要有下面的配置:
<system.data>
<DbProviderFactories>
<remove invariant="System.Data.SQLite"/>
<add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".Net Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite, Version=1.0.66.0, Culture=neutral, PublicKeyToken=DB937BC2D44FF139"/>
</DbProviderFactories>
</system.data>
以及参照时自动添加的:
<compilation debug="true" strict="false" explicit="true">
<assemblies>
<add assembly="System.Data.SQLite, Version=1.0.66.0, Culture=neutral, PublicKeyToken=DB937BC2D44FF139"/></assemblies>
</compilation>
5,为了能够写DB文件,必须给IIS_IUSERS用户添加对App_Data目录的写的权限。
WindowsXP和Winodws7的配置方法稍微不同。
6,Sqlite3使用的是uft-8字符集,因此ASP.NET编程时不需要任何特殊处理。
7,Sqlite3的SQL里面,2个字符串连接用两个竖线: ||
8,SQLite.SQLiteParameter使用时,使用System.Data.DbType的类型。
9,Sqlite3支持load_extension进行扩充,比如SELECT load_extension('./libsql.dll');