System.Data.SQLite

Check-in [e2a3aad455]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Add a draft 'Frequently Asked Questions' page.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: e2a3aad4554a13d37539e207583c1c60d9159695
User & Date: mistachkin 2012-01-23 07:10:54.869
Context
2012-01-23
07:13
Fix slight typo in FAQ page. check-in: 23afa7a120 user: mistachkin tags: trunk
07:10
Add a draft 'Frequently Asked Questions' page. check-in: e2a3aad455 user: mistachkin tags: trunk
04:54
Update build docs to include Mono and the managed-only binaries. check-in: 752f754a11 user: mistachkin tags: trunk
Changes
Unified Diff Ignore Whitespace Patch
Added www/faq.wiki.








































































































































































































































































































































































































































































































































































































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
<title>Frequently Asked Questions</title>

<a name="faq"></a>
<h2>Frequently Asked Questions</h2>

<ol>
  <li>
    <a href="#q1">When will the <b>next version</b> of System.Data.SQLite be
    released?</a>
  </li>
  <br>
  <li>
    <a href="#q2">When are you planning on adding feature &quot;X&quot;?</a>
  </li>
  <br>
  <li>
    <a href="#q3">What versions of <b>.NET Framework</b> are supported?</a>
  </li>
  <br>
  <li>
    <a href="#q4">What versions of <b>Visual Studio</b> are supported?</a>
  </li>
  <br>
  <li>
    <a href="#q5">Is there a <b>NuGet</b> package?</a>
  </li>
  <br>
  <li>
    <a href="#q6">How do I build the binaries for <b>Mono</b>?</a>
  </li>
  <br>
  <li>
    <a href="#q7">How do I build the binaries for <b>.NET Compact Framework</b>?</a>
  </li>
  <br>
  <li>
    <a href="#q8">How do I install System.Data.SQLite on a <b>development
    machine</b>?</a>
  </li>
  <br>
  <li>
    <a href="#q9">How do I install System.Data.SQLite on <b>end-user
    machines</b>?</a>
  </li>
  <br>
  <li>
    <a href="#q10">Do I need to add an assembly reference to the
    &quot;<b>sqlite3.dll</b>&quot; or &quot;<b>SQLite.Interop.dll</b>&quot; in
    my project?</a>
  </li>
  <br>
  <li>
    <a href="#q11">Why do I get a <b>DllNotFoundException</b> (for
    &quot;sqlite3.dll&quot; or &quot;SQLite.Interop.dll&quot;) when trying to
    run my application?</a>
  </li>
  <br>
  <li>
    <a href="#q12">Why do I get a <b>BadImageFormatException</b> (for
    &quot;sqlite3.dll&quot; or &quot;SQLite.Interop.dll&quot;) when trying to
    run my application?</a>
  </li>
  <br>
  <li>
    <a href="#q13">Why do I get the error &quot;<b>This assembly is built by a
    runtime newer than the currently loaded runtime and cannot be loaded.</b>
    &quot;?</a>
  </li>
  <br>
  <li>
    <a href="#q14">What is a <b>mixed-mode assembly</b>?</a>
  </li>
  <br>
  <li>
    <a href="#q15">What is a &quot;<b>bundle</b>&quot; package (i.e. from the
    download page)?</a>
  </li>
  <br>
  <li>
    <a href="#q16">What is the difference between the &quot;<b>Setup</b>&quot;
    and &quot;<b>Precompiled Binary</b>&quot; packages (i.e. from the download
    page)?</a>
  </li>
  <br>
  <li>
    <a href="#q17">Why is System.Data.SQLite <b>leaking</b> memory, resources,
    etc?</a>
  </li>
  <br>
  <li>
    <a href="#q18">What are the <b>support options</b> for System.Data.SQLite?</a>
  </li>
</ol>

<hr>
<a name="q1"></a>
<p>
  <b>(1) When will the next version of System.Data.SQLite be released?</b>
</p>

<p>
  The release schedule for the System.Data.SQLite project is roughly
  synchronized (within about two or three weeks) with that of the
  [http://www.sqlite.org/ | SQLite] core itself.  The release history for the
  System.Data.SQLite project is [./news.wiki | here].
</p>

<hr>
<a name="q2"></a>
<p>
  <b>(2) When are you planning on adding feature &quot;X&quot;?</b>
</p>

<p>
  This question is hard to answer precisely.  It depends on a number of factors,
  including but not limited to:
  <ul>
    <li>
      Can the feature be implemented in a backward compatible manner?
    </li>

    <li>
      Can the feature be implemented in a portable fashion for all the currently
      supported versions of the .NET Framework and/or Visual Studio?
    </li>

    <li>
      Does the feature fit well with the current design of the project?
    </li>

    <li>
      How much time will it take to design, implement, and test the feature?
    </li>

    <li>
      Will the feature benefit the entire community or only a tiny subset
      thereof?
    </li>
  </ul>
</p>

<hr>
<a name="q3"></a>
<p>
  <b>(3) What versions of .NET Framework are supported?</b>
</p>

<p>
  <ul>
    <li>
      The .NET Framework 2.0 SP2 (or higher) for the System.Data.SQLite assembly.
    </li>

    <li>
      The .NET Framework 3.5 SP1 (or higher) for the System.Data.SQLite.Linq
      assembly.
    </li>

    <li>
      All sub-projects are fully supported with the .NET Framework 4.0.
    </li>
  </ul>
</p>

<hr>
<a name="q4"></a>
<p>
  <b>(4) What versions of Visual Studio are supported?</b>
</p>

<p>
  Currently, Visual Studio 2005, 2008, and 2010 are supported, including the
  &quot;Express&quot; editions; however, in order to build the entire solution,
  including the necessary native code, the &quot;Professional&quot; edition (or
  higher) is required.  It may be possible to install both Visual C# Express
  and Visual C++ Express and then build the corresponding sub-projects via their
  respective integrated development environments (IDE); however, this
  configuration has <b>not</b> been tested.  The design-time components are
  <b>no longer</b> supported for the Express editions due to licensing
  restrictions.
</p>

<hr>
<a name="q5"></a>
<p>
  <b>(5) Is there a NuGet package?</b>
</p>

<p>
  Yes, the following official NuGet packages are available:

  <ul>
    <li>
      <a href="http://www.nuget.org/packages/System.Data.SQLite">
      System.Data.SQLite</a>: The SQLite database engine combined with a
      complete ADO.NET provider all rolled into a single mixed-mode assembly for
      x86.
    </li>

    <li>
      <a href="http://www.nuget.org/packages/System.Data.SQLite.x86">
      System.Data.SQLite.x86</a>: This currently contains the same content as
      the &quot;System.Data.SQLite&quot; package, above.
    </li>

    <li>
      <a href="http://www.nuget.org/packages/System.Data.SQLite.x64">
      System.Data.SQLite.x64</a>: The SQLite database engine combined with a
      complete ADO.NET provider all rolled into a single mixed-mode assembly for
      x64.
    </li>

    <li>
      <a href="http://www.nuget.org/packages/System.Data.SQLite.MSIL">
      System.Data.SQLite.MSIL</a>: Just the ADO.NET provider for SQLite
      (managed-only).
    </li>
  </ul>
</p>

<hr>
<a name="q6"></a>
<p>
  <b>(6) How do I build the binaries for Mono?</b>
</p>

<p>
  This is documented on the [./build.wiki#mono | build procedures] page.
</p>

<hr>
<a name="q7"></a>
<p>
  <b>(7) How do I build the binaries for .NET Compact Framework?</b>
</p>

<p>
  This is documented on the [./release.wiki#buildCeBinaries | release procedures]
  page.
</p>

<hr>
<a name="q8"></a>
<p>
  <b>(8) How do I install System.Data.SQLite on a development machine?</b>
</p>

<p>
  Strictly speaking, there is no need to install System.Data.SQLite on any
  development machine (e.g. via the setup).  The recommended way to use the
  assemblies is:

  <ul>
    <li>
      Download the precompiled binary package for your target framework and
      processor architecture (e.g. 32-bit x86, .NET Framework 2.0).
    </li>

    <li>
      Extract the package to a directory named "Externals" inside your project
      directory.
    </li>

    <li>
      Add a reference to the "System.Data.SQLite" assembly from the "Externals"
      directory.
    </li>

    <li>
      If necessary (i.e. you require LINQ support), also add a reference to the
      "System.Data.SQLite.Linq" assembly from the "Externals" directory.
    </li>
  </ul>

  Alternatively, when using Visual Studio 2010, you can simply use the NuGet
  package that corresponds to your target processor architecture.  Installing
  the assemblies into the Global Assembly Cache is not recommended as it may
  cause conflicts with other applications installed on the machine.
</p>

<hr>
<a name="q9"></a>
<p>
  <b>(9) How do I install System.Data.SQLite on end-user machines?</b>
</p>

<p>
  Strictly speaking, there is no need to install System.Data.SQLite on any
  end-user machine (e.g. via the setup).  The recommended way to deploy the
  assemblies is &quot;application local&quot; (i.e. copy them to the directory
  the application is installed to).  Installing the assemblies into the Global
  Assembly Cache is not recommended as it may cause conflicts with other
  applications installed on the machine.
</p>

<hr>
<a name="q10"></a>
<p>
  <b>(10) Do I need to add an assembly reference to the
  &quot;sqlite3.dll&quot; or &quot;SQLite.Interop.dll&quot; in my project?</b>
</p>

<p>
  No, because they are not managed assemblies and contain no managed code.
</p>

<hr>
<a name="q11"></a>
<p>
  <b>(11) Why do I get a <b>DllNotFoundException</b> (for &quot;sqlite3.dll&quot;
  or &quot;SQLite.Interop.dll&quot;) when trying to run my application?</b>
</p>

<p>
  Either the named dynamic link library (DLL) cannot be located or it cannot be
  loaded due to missing dependencies.  Make sure the named dynamic link library
  is located in the application directory or a directory along the system PATH
  and try again.  Also, be sure the necessary Visual C++ runtime redistributable
  has been installed unless you are using a dynamic link library that was built
  statically linked to it.
</p>

<hr>
<a name="q12"></a>
<p>
  <b>(12) Why do I get a BadImageFormatException (for &quot;sqlite3.dll&quot; or
  &quot;SQLite.Interop.dll&quot;) when trying to run my application?</b>
</p>

<p>
  The named dynamic link library (DLL) contains native code that was built for a
  processor architecture that is not compatible with the current process (e.g.
  you cannot load a 32-bit dynamic link library into a 64-bit process or
  vice-versa).  Another explanation is that the named dynamic link library was
  built for a later version of the CLR than is available in the current process
  (e.g. you cannot load an assembly built for the .NET Framework 4.0 into a .NET
  Framework 2.0 process, regardless of the processor architecture).
</p>

<hr>
<a name="q13"></a>
<p>
  <b>(13) Why do I get the error &quot;This assembly is built by a runtime newer
  than the currently loaded runtime and cannot be loaded.&quot;?</b>
</p>

<p>
  Because the assembly was built for the .NET Framework 4.0 and you are trying
  to load it into a process that is using the .NET Framework 2.0.
</p>

<hr>
<a name="q14"></a>
<p>
  <b>(14) What is a mixed-mode assembly?</b>
</p>

<p>
  A mixed-mode assembly is a dynamic link library that contains both managed and
  native code for a particular processor architecture.  Since it contains native
  code it can only be loaded into a process that matches the processor
  architecture it was compiled for.  Also see this
  <a href="http://stackoverflow.com/questions/7266936/what-is-a-mixed-mode-assembly">StackOverflow question</a>.
</p>

<hr>
<a name="q15"></a>
<p>
  <b>(15) What is a &quot;bundle&quot; package (i.e. from the download page)?</b>
</p>

<p>
  The &quot;bundle&quot; packages listed on the download page contains the
  System.Data.SQLite mixed-mode assembly in a file named
  &quot;System.Data.SQLite.dll&quot; (see <a href="#q14">question #14</a>)
  instead of separate &quot;System.Data.SQLite.dll&quot; and
  &quot;SQLite.Interop.dll&quot; files to contain the managed and native code,
  respectively.
</p>

<hr>
<a name="q16"></a>
<p>
  <b>(16) What is the difference between the &quot;Setup&quot; and
  &quot;Precompiled Binary&quot; packages (i.e. from the download page)?</b>
</p>

<p>
  The &quot;Setup&quot; packages are designed to install the necessary files,
  optionally installing the assemblies into the Global Assembly Cache,
  generating native images for the managed assemblies via Ngen, adding Start
  Menu shortcuts, modifying the .NET Framework machine configuration files to
  register the ADO.NET provider, and installing the design-time components for
  Visual Studio.  The &quot;Precompiled Binary&quot; packages are simply ZIP
  files that contain all the binaries compiled for a particular .NET Framework
  and processor architecture.
</p>

<hr>
<a name="q17"></a>
<p>
  <b>(17) Why is System.Data.SQLite leaking memory, resources, etc?</b>
</p>

<p>
  All System.Data.SQLite objects that implement IDisposable, either directly or
  indirectly, should be explicitly disposed when they are no longer needed.  If
  this is the case and you are still seeing a leak of some kind, please file a
  <a href="/index.html/tktnew">ticket</a>.
</p>

<hr>
<a name="q18"></a>
<p>
  <b>(18) What are the support options for System.Data.SQLite?</b>
</p>

<p>
  This is discussed on the [./support.wiki | support] page.
</p>
Changes to www/index.wiki.
1
2
3
4
5
6
7

8
9
10
11
12
13
14
<title>About</title>

<table align="right" border="1" cellpadding="10" hspace="10" cellspacing="0">
  <tr>
    <td>
      <ul>
        <li>[./features.wiki | Features]</li>

        <li>[./news.wiki | News]</li>
        <li>[./support.wiki | Support]</li>
        <li>[./downloads.wiki | Downloads]</li>
        <li>[./contribute.wiki | Contributing]</li>
        <li>[./source.wiki | Source Code]</li>
        <li>[./build.wiki | Build Procedures]</li>
        <li>[./test.wiki | Test Procedures]</li>







>







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<title>About</title>

<table align="right" border="1" cellpadding="10" hspace="10" cellspacing="0">
  <tr>
    <td>
      <ul>
        <li>[./features.wiki | Features]</li>
        <li>[./faq.wiki | Frequently Asked Questions]</li>
        <li>[./news.wiki | News]</li>
        <li>[./support.wiki | Support]</li>
        <li>[./downloads.wiki | Downloads]</li>
        <li>[./contribute.wiki | Contributing]</li>
        <li>[./source.wiki | Source Code]</li>
        <li>[./build.wiki | Build Procedures]</li>
        <li>[./test.wiki | Test Procedures]</li>