?? readme.htm
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title></title>
</head>
<body>
ADO.NET 2.0 SQLite Data Provider<br>
Version 1.0.36.1 October 25, 2006<br>
Using SQLite 3.3.8<br>
Written by Robert Simpson (<a href="mailto:robert@blackcastlesoft.com">robert@blackcastlesoft.com</a>)<br>
Released to the public domain, use at your own risk!<br>
Official provider website: <a href="http://sqlite.phxsoftware.com">http://sqlite.phxsoftware.com</a><br />
<br>
The latest version can be downloaded <a href="http://sourceforge.net/projects/sqlite-dotnet2">
here</a>
<br>
<br>
<b></b>
<h2>
<b>Features:</b><br>
</h2>
<UL>
<LI>
Written from scratch on VS2005 specifically for ADO.NET 2.0, implementing all the
base classes and features recently introduced in the framework, including automatic
transaction enlistment.<li>Supports the Full
and Compact .NET Framework, as well as native C/C++ development. 100% binary
compatible with the original sqlite3.dll.</li>
<LI>
On the Compact Framework, it is faster than the newly-introduced Sql Server
Mobile. SQLite's installed size is a fraction of Sql Mobile's. It uses less memory at runtime, runs queries faster, and has a smaller database file size as well.
<li>Encrypted database support. Encrypted databases are fully encrypted and
support both binary and cleartext password types.</li>
<LI>
Visual Studio 2005 Design-Time Support, works with all versions of VS2005, including
all Express Editions. You can add a SQLite
database to the Servers list, design queries with the Query Designer,
drag-and-drop tables onto a Typed DataSet, etc.
<LI>
Single file redistributable. The core sqlite3 codebase and the ADO.NET wrapper
are combined into one multi-module assembly.
<LI>
Binaries included for Itanium, x64, x86 and ARM processors.
<LI>
DbProviderFactory support.
<LI>
Full support for ATTACH'ed databases. Exposed as <I>Catalogs</I>
in the schema. When cloning a connection, all attached databases are
automatically re-attached to the new connection.
<LI>
DbConnection.GetSchema(...) support includes <I>ReservedWords, MetaDataCollections</I>, <I>DataSourceInformation</I>,
<I>DataTypes, Columns</I>, <I>Tables</I>, <I>Views, ViewColumns, </I><I>Catalogs, </I><I>Indexes,
IndexColumns </I>and <EM>ForeignKeys</EM>
.
<LI>
Enhanced DbDataReader.GetSchemaTable() functionality returns catalog, namespace
and detailed schema information even for complex queries.
<LI>
Named and unnamed parameters.
<LI>
Full UTF-8 and UTF-16 support, each with optimized pipelines into the native
database core.
<LI>
Multiple simultaneous DataReaders (one DataReader per Command however).
<LI>
Full support for user-defined scalar and aggregate functions, encapsulated into
an easy-to-use base class in which only a couple of overrides are necessary to
implement new SQL functions.
<LI>
Full support for user-defined collating sequences, every bit as simple to
implement as user-defined functions and uses the same base class.
<LI>
Full source for the entire engine and wrapper. No copyrights.
Public Domain. 100% free for commercial and non-commercial use. </LI></UL>
<strong></strong>
<h2>
<strong>Design-Time Support (new as of 1.0.14)</strong></h2>
<P>
In Windows Explorer, navigate to the <STRONG>SQLite.NET\bin\Designer</STRONG>
folder and execute the <STRONG>INSTALL.EXE</STRONG>
file. The program will
automatically detect what version(s) of Visual Studio 2005 are installed and allow
you to selectively install and uninstall the designer for each edition.</P>
<H2><STRONG>DbFactory Support (Non-Compact Framework)</STRONG></H2>
In order to use the SQLiteFactory and have the SQLite data provider enumerated
in the DbProviderFactories methods, you must add the following segment into your application's app.config file:<br>
<br>
<pre><configuration>
<system.data>
<DbProviderFactories>
<remove invariant="System.Data.SQLite"/>
<add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".Net Framework Data Provider for SQLite"<BR > type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite" />
</DbProviderFactories>
</system.data>
</configuration>
</pre>
<p>See the help documentation for further details on implementing both version-specific (GAC enabled) and version independent DBProviderFactories support.
</p>
<h3>
Compiling for the Compact Framework</h3>
<p>
Just change the target platform from Win32 to Compact Framework and
recompile. <STRONG>The Compact Framework has no support for enumerating
attributes in an assembly, therefore all user-defined collating sequences and
functions must be explicitly registered.</STRONG> See the <STRONG>testce</STRONG>
sample application for an example of how to explicitly register user-defined
collating sequences and functions.</p>
<h2>
<b><A name="redist"></A>Distributing The SQLite Engine and ADO.NET Assembly</b></h2>
<P>
Only the <STRONG>System.Data.SQLite.DLL</STRONG> file needs to be distributed with your
application(s). This DLL contains both the managed wrapper and the native
SQLite3 codebase.</P>
<H2><B>Development Notes Regarding the SQLite 3 Source Code</B></H2>
<p>
The SQLite3 source code is compiled directly from the SQLite.org release
sources. All builds of sqlite after 3.2.8 have included support for Windows CE. Additionally,
just one minor modification is made to pager.c, that modification is made automatically by the fixsource.vbs file
when the VS2005 solution is compiled.</p>
<p></p>
<p>
<b>Version History</b></p>
<p><b>1.0.36.1 - October 25, 2006</b></p>
<ul>
<li>Added support for LONGVARCHAR, SMALLDATE and SMALLDATETIME. These were actually added in 1.0.36.0 but were undocumented.</li>
<li>Fixed the embedded helpfile which was accidentally built from old sources. </li>
<li>Fixed an unfortunate re-entry of a bug in the .36 codebase that caused the provider to "forget" about commands on a connection under certain circumstances.</li>
</ul>
<p><b>1.0.36.0 - October 23, 2006</b></p>
<ul>
<li>Code merge with SQLite 3.3.8, including support for full-text search via the FTS1
extension. </li><li>Fixed a bug retrieving data types when UseUtf16Encoding is true. Side-effect of further merging the common code between the two base classes.</li>
<li>Fixed a bug with System.Transactions whereby a connection closed/disposed within
a transaction scope is rolled back and cannot be committed.</li>
<li>Added more error checking and reporting to transactions to help user's isolate
the source of transaction failures.</li>
<li>Implemented a workaround for a Compact Framework issue regarding strong-named
assemblies containing a PE section with a raw size less than the virtual size. </li>
</ul>
<p><b>1.0.35.1 - September 12, 2006</b></p>
<ul>
<li>Fixed the TYPES keyword to work when UseUTF16Encoding is true.</li>
<li>Fix another bug revealed in 1.0.35.0 regarding infinite loops when the 2nd or subsequent statements of a semi-colon separated command cannot be parsed.</li>
<li>Updated the help documentation. </li>
</ul>
<p><b>1.0.35.0 - September 10, 2006</b></p>
<ul>
<li>Fixed an infinite loop bug in SQLiteCommand caused when multiple semi-colon separated
statements in a single command are executed via datareader and one of the statements
contains a syntax error preventing it from being prepared. </li><li>Added the TYPES preparser keyword to be placed before a SELECT statement to
aid the wrapper in converting expressions in a subsequent select clause into more
robust types. Documentation yet to be integrated, but available on the forums.</li>
<li>Added a new connectionstring parameter "BinaryGUID=true/false" (default is "true").
When true, guid types are stored in the database as binary blobs to save space.
Binary has been the default format since 1.0.32.0 but this parameter eases backward
compatibility.</li>
</ul>
<p><b>1.0.34.0 - September 4, 2006</b></p>
<ul>
<li>Fixed a bug in SQLiteParameterCollection.RemoveAt(namedparam)</li>
<li>Fixed a bug in SQLiteDataReader introduced in 1.0.30 that broke DateTimes using the Ticks option in the connection string.</li>
<li>Fixed a bug in the recent changes to guid behavior wherein using a datareader's
indexer to fetch a guid from a column containing both binary and text guids would
sometimes return a byte array instead of a guid.</li>
<li>Enacted a workaround involving typed datasets in Compact Framework projects in
which it took an excessive amount of time to open a form and generated a lot of
temporary files in the user's Local Settings\Application Data\Microsoft\VisualStudio\8.0\Assembly
References folder.</li>
</ul>
<p><b>1.0.33.0 - August 21, 2006</b></p>
<ul>
<li>Code merge with SQLite 3.3.7</li>
<li>Fixed a bug in SQLiteConnection that caused it to "forget" about commands bound
to it and occasionally throw an error when a database is closed and opened repeatedly.
</li>
</ul>
<p><b>1.0.32.0 - August 6, 2006</b></p>
<ul>
<li>Added AllowPartiallyTrustedCallers attribute to the assembly</li><li>Added the missing "nchar" type</li>
<li>Added support for binary Guid's. Guids are now stored as binary by default
when using parameterized queries. Text guids are still fully supported.</li>
<li>Fixed a TransactionScope() error that caused the transaction not to be completed.</li>
<li>Enhanced parameter names so that if they are added to the Parameters collection
without their prefix character (@ : or $) they are still properly mapped. </li>
</ul>
<p><b>1.0.31.0 - July 16, 2006</b></p>
<ul>
<li>Re-applied the view parsing bugfix in 1.0.29.0 that was accidentally reverted
out of the 30 build.</li><li>Fixed SQLiteCommand.ExecuteScalar() to return null instead of DbNull.Value
when no rows were returned.</li>
<li>Design-time installer now installs the package-based designer on full Visual Studio
versions. Express editions continue to use the packageless designer.</li>
<li>In Visual Studio (not Express), you can now right-click a SQLite connection in
the Server Explorer and vacuum the database and change the encryption password.</li>
</ul>
<p><b>1.0.30.1 - July 2, 2006</b></p>
<ul>
<li>Code merge with SQLite 3.3.6</li>
<li>Added support for the |DataDirectory| keyword in the Data Source filename string.
</li>
<li>Added hook notification support to SQLiteConnection. Specifically, there
are three new events on the SQLiteConnection object which are raised when an update/insert/delete
occurs and when transactions are committed and rolled back.</li><li>Changed SQLiteTransaction to default to BEGIN IMMEDIATE instead of just BEGIN,
which solves a multithreaded race condition. </li>
<li>Changed SQLiteDataReader to better support SQLite's typelessness. The data
reader no longer caches column affinity, but re-evaluates it for each column/row.</li>
<li>Fixed a bug in Prepare() which caused an intermittant fault due to the code accessing
the memory of an unpinned variable. </li>
<li>Fixed a multithreaded lock-retry bug in in SQLiteConnection.Open() and in
SQLiteTransaction, which failed to use a command timeout before giving up.</li>
</ul>
<p><b>1.0.29.0 - May 16, 2006</b></p>
<ul>
<li>Fixed a bug in the Views schema information which caused multi-line view definition statements not to be parsed</li>
<li>Fixed a parsing bug in SQLiteDataReader.GetSchemaTable() to account for numeric(x,y) datatypes with specified precision and scale</li>
<li>Fixed a bug in SQLiteConnection.Open() which tried to automatically enlist in an ambient transaction but had not yet set the state of the database to Opened, thereby causing a transaction fault</li>
<li>Changed SQLiteException to inherit from DbException on the full framework</li>
</ul>
<p><b>1.0.28.0 - April 14, 2006</b></p>
<ul>
<li>Code merge with SQLite 3.3.5</li>
<li>You can now specify a relative path in the Compact Framework's "Data Source" by
prefixing the file with ".\". i.e. "Data Source=.\\mydb.db3"</li>
<li>Several more changes and enhancements to schemas for better compatibility.</li>
<li>Fixed several bugs with the 64-bit builds of the provider. The x64 binary
is now optimized.</li>
<li>Design-time installer now tries to install the 64-bit builds into the GAC along
with the 32-bit build.</li>
<li>Fixed a bug in the SQLiteDataReader.GetSchemaTable() function when used with tables
containing apostrophes.</li>
<li>Fixed an XSD-related bug whereby the XSD utility was unable to locate the provider
and could not generate typed datasets.</li>
<li>Added NTEXT and STRING datatypes to the list of recognized keywords (used for
schema retrieval).</li>
<li>Due to the XSD bug and other potential problems related to external build utilities,
changes to the installation of the designer have had to be made. The installer
used to write the DbProviderFactories XML into the devenv.exe.config file and its
express cousins, but now has to write instead to the machine.config.</li>
<li>Installer writes to both the 32-bit machine.config and the 64-bit machine.config
if it exists. </li>
</ul>
<p><b>1.0.27.1 - February 28, 2006</b></p>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -