SQLite

Check-in [4caf624e90]
Login

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

Overview
Comment:Update the FAQ to explain how to enable large file support. (CVS 779)
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 4caf624e9061fe7489a8e3c6892975036a2272d5
User & Date: drh 2002-11-05 23:24:38.000
Context
2002-11-06
00:59
Changes to include files so that the >2GB file patch will compile under BSD. (CVS 780) (check-in: 81bb1aed5e user: drh tags: trunk)
2002-11-05
23:24
Update the FAQ to explain how to enable large file support. (CVS 779) (check-in: 4caf624e90 user: drh tags: trunk)
23:03
Add support for databases larger than 2GB under Unix. Must be compiled with -D_FILE_OFFSET_BITS=64 and -D_LARGEFILE_SOURCE in order to work with larger databases. (CVS 778) (check-in: a3f67fe912 user: drh tags: trunk)
Changes
Unified Diff Ignore Whitespace Patch
Changes to www/faq.tcl.
1
2
3
4
5
6
7
8
9
10
11
#
# Run this script to generated a faq.html output file
#
set rcsid {$Id: faq.tcl,v 1.19 2002/08/24 18:24:57 drh Exp $}

puts {<html>
<head>
  <title>SQLite Frequently Asked Questions</title>
</head>
<body bgcolor="white">
<h1 align="center">Frequently Asked Questions</h1>



|







1
2
3
4
5
6
7
8
9
10
11
#
# Run this script to generated a faq.html output file
#
set rcsid {$Id: faq.tcl,v 1.20 2002/11/05 23:24:38 drh Exp $}

puts {<html>
<head>
  <title>SQLite Frequently Asked Questions</title>
</head>
<body bgcolor="white">
<h1 align="center">Frequently Asked Questions</h1>
307
308
309
310
311
312
313
314
315
316

317
318
319
320
321
322
323
ORDER BY name
</pre></blockquote>
}

faq {
  Are there any known size limits to SQLite databases?
} {
  <p>Internally, SQLite can handle databases up to 2^40 bytes (1 terabyte)
  in size.  But the backend interface to POSIX and Win32 limits files to
  2^31 (2 gigabytes).</p>


  <p>SQLite arbitrarily limits the amount of data in one row to 1 megabyte.
  There is a single #define in the source code that can be changed to raise
  this limit as high as 16 megabytes if desired.</p>

  <p>There is a theoretical limit of about 2^32 (4 billion) rows
  in a single table, but there







|

|
>







307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
ORDER BY name
</pre></blockquote>
}

faq {
  Are there any known size limits to SQLite databases?
} {
  <p>Internally, SQLite can handle databases up to 2^41 bytes (2 terabytes)
  in size.  But the backend interface to POSIX and Win32 limits files to
  2^31 (2 gigabytes).  (See the next question for instructions on how
  to relax this limit under POSIX.)</p>

  <p>SQLite arbitrarily limits the amount of data in one row to 1 megabyte.
  There is a single #define in the source code that can be changed to raise
  this limit as high as 16 megabytes if desired.</p>

  <p>There is a theoretical limit of about 2^32 (4 billion) rows
  in a single table, but there
332
333
334
335
336
337
338















339
340
341
342
343
344
345
  number of columns, etc.  Indices are similarly unconstrained.</p>

  <p>The names of tables, indices, view, triggers, and columns can be
  as long as desired.  However, the names of SQL functions (as created
  by the <a href="c_interface.html#cfunc">sqlite_create_function()</a> API)
  may not exceed 255 characters in length.</p>
}
















faq {
  What is the maximum size of a VARCHAR in SQLite?
} {
  <p>Remember, SQLite is typeless.  A VARCHAR column can hold as much
  data as any other column.  The total amount of data in a single row
  of the database is limited to 1 megabyte.  You can increase this limit







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







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
  number of columns, etc.  Indices are similarly unconstrained.</p>

  <p>The names of tables, indices, view, triggers, and columns can be
  as long as desired.  However, the names of SQL functions (as created
  by the <a href="c_interface.html#cfunc">sqlite_create_function()</a> API)
  may not exceed 255 characters in length.</p>
}

faq {
  Are there any ways to increase the maximum database size limit above 2GB?
} {
  <p>For POSIX systems that support large files, you can increase the maximum
  database size of SQLite by adding the following two options to your
  compiler command line:</p>

  <blockquote><pre>
  -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
  </pre></blockquote>

  <p>The resulting library and "sqlite" executable should be able to work
  with databases as large as 2^41 bytes (2 terabytes).</p>
}

faq {
  What is the maximum size of a VARCHAR in SQLite?
} {
  <p>Remember, SQLite is typeless.  A VARCHAR column can hold as much
  data as any other column.  The total amount of data in a single row
  of the database is limited to 1 megabyte.  You can increase this limit