Documentation Source Text

Hex Artifact Content
Login

Artifact 1c0c8863daf858a65abafcbe9074c6b76879aede:


0000: 3c 74 69 74 6c 65 3e 43 6f 6d 70 69 6c 61 74 69  <title>Compilati
0010: 6f 6e 20 4f 70 74 69 6f 6e 73 20 46 6f 72 20 53  on Options For S
0020: 51 4c 69 74 65 3c 2f 74 69 74 6c 65 3e 0a 0a 3c  QLite</title>..<
0030: 68 31 3e 43 6f 6d 70 69 6c 61 74 69 6f 6e 20 4f  h1>Compilation O
0040: 70 74 69 6f 6e 73 20 46 6f 72 20 53 51 4c 69 74  ptions For SQLit
0050: 65 3c 2f 68 31 3e 0a 0a 3c 70 3e 0a 46 6f 72 20  e</h1>..<p>.For 
0060: 6d 6f 73 74 20 70 75 72 70 6f 73 65 73 2c 20 53  most purposes, S
0070: 51 4c 69 74 65 20 63 61 6e 20 62 65 20 62 75 69  QLite can be bui
0080: 6c 74 20 6a 75 73 74 20 66 69 6e 65 20 75 73 69  lt just fine usi
0090: 6e 67 20 74 68 65 20 64 65 66 61 75 6c 74 0a 63  ng the default.c
00a0: 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 70 74 69 6f  ompilation optio
00b0: 6e 73 2e 20 48 6f 77 65 76 65 72 2c 20 69 66 20  ns. However, if 
00c0: 72 65 71 75 69 72 65 64 2c 20 74 68 65 20 63 6f  required, the co
00d0: 6d 70 69 6c 65 2d 74 69 6d 65 20 6f 70 74 69 6f  mpile-time optio
00e0: 6e 73 0a 64 6f 63 75 6d 65 6e 74 65 64 20 62 65  ns.documented be
00f0: 6c 6f 77 20 63 61 6e 20 62 65 20 75 73 65 64 20  low can be used 
0100: 74 6f 20 0a 3c 61 20 68 72 65 66 3d 22 23 6f 6d  to .<a href="#om
0110: 69 74 66 65 61 74 75 72 65 73 22 3e 6f 6d 69 74  itfeatures">omit
0120: 20 53 51 4c 69 74 65 20 66 65 61 74 75 72 65 73   SQLite features
0130: 3c 2f 61 3e 20 28 72 65 73 75 6c 74 69 6e 67 20  </a> (resulting 
0140: 69 6e 0a 61 20 73 6d 61 6c 6c 65 72 20 63 6f 6d  in.a smaller com
0150: 70 69 6c 65 64 20 6c 69 62 72 61 72 79 20 73 69  piled library si
0160: 7a 65 29 20 6f 72 20 74 6f 20 63 68 61 6e 67 65  ze) or to change
0170: 20 74 68 65 0a 3c 61 20 68 72 65 66 3d 22 23 64   the.<a href="#d
0180: 65 66 61 75 6c 74 73 22 3e 64 65 66 61 75 6c 74  efaults">default
0190: 20 76 61 6c 75 65 73 3c 2f 61 3e 20 6f 66 20 73   values</a> of s
01a0: 6f 6d 65 20 70 61 72 61 6d 65 74 65 72 73 2e 0a  ome parameters..
01b0: 3c 2f 70 3e 0a 3c 70 3e 0a 45 76 65 72 79 20 65  </p>.<p>.Every e
01c0: 66 66 6f 72 74 20 68 61 73 20 62 65 65 6e 20 6d  ffort has been m
01d0: 61 64 65 20 74 6f 20 65 6e 73 75 72 65 20 74 68  ade to ensure th
01e0: 61 74 20 74 68 65 20 76 61 72 69 6f 75 73 20 63  at the various c
01f0: 6f 6d 62 69 6e 61 74 69 6f 6e 73 0a 6f 66 20 63  ombinations.of c
0200: 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 70 74 69 6f  ompilation optio
0210: 6e 73 20 77 6f 72 6b 20 68 61 72 6d 6f 6e 69 6f  ns work harmonio
0220: 75 73 6c 79 20 61 6e 64 20 70 72 6f 64 75 63 65  usly and produce
0230: 20 61 20 77 6f 72 6b 69 6e 67 20 6c 69 62 72 61   a working libra
0240: 72 79 2e 0a 4e 65 76 65 72 74 68 65 6c 65 73 73  ry..Nevertheless
0250: 2c 20 69 74 20 69 73 20 73 74 72 6f 6e 67 6c 79  , it is strongly
0260: 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 68 61   recommended tha
0270: 74 20 74 68 65 20 53 51 4c 69 74 65 20 74 65 73  t the SQLite tes
0280: 74 2d 73 75 69 74 65 0a 62 65 20 65 78 65 63 75  t-suite.be execu
0290: 74 65 64 20 74 6f 20 63 68 65 63 6b 20 66 6f 72  ted to check for
02a0: 20 65 72 72 6f 72 73 20 62 65 66 6f 72 65 20 75   errors before u
02b0: 73 69 6e 67 20 61 6e 20 53 51 4c 69 74 65 20 6c  sing an SQLite l
02c0: 69 62 72 61 72 79 20 62 75 69 6c 74 0a 77 69 74  ibrary built.wit
02d0: 68 20 6e 6f 6e 2d 73 74 61 6e 64 61 72 64 20 63  h non-standard c
02e0: 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 70 74 69 6f  ompilation optio
02f0: 6e 73 2e 0a 3c 2f 70 3e 0a 3c 61 20 6e 61 6d 65  ns..</p>.<a name
0300: 3d 22 64 65 66 61 75 6c 74 73 22 3e 3c 2f 61 3e  ="defaults"></a>
0310: 0a 3c 68 32 3e 4f 70 74 69 6f 6e 73 20 54 6f 20  .<h2>Options To 
0320: 53 65 74 20 44 65 66 61 75 6c 74 20 50 61 72 61  Set Default Para
0330: 6d 65 74 65 72 20 56 61 6c 75 65 73 3c 2f 68 32  meter Values</h2
0340: 3e 0a 0a 3c 70 3e 3c 62 3e 53 51 4c 49 54 45 5f  >..<p><b>SQLITE_
0350: 44 45 46 41 55 4c 54 5f 41 55 54 4f 56 41 43 55  DEFAULT_AUTOVACU
0360: 55 4d 3d 3c 69 3e 26 6c 74 3b 31 20 6f 72 20 30  UM=<i>&lt;1 or 0
0370: 26 67 74 3b 3c 2f 69 3e 3c 2f 62 3e 3c 62 72 3e  &gt;</i></b><br>
0380: 0a 54 68 69 73 20 6d 61 63 72 6f 20 64 65 74 65  .This macro dete
0390: 72 6d 69 6e 65 73 20 69 66 20 53 51 4c 69 74 65  rmines if SQLite
03a0: 20 63 72 65 61 74 65 73 20 64 61 74 61 62 61 73   creates databas
03b0: 65 73 20 77 69 74 68 20 74 68 65 20 0a 3c 61 20  es with the .<a 
03c0: 68 72 65 66 3d 22 70 72 61 67 6d 61 2e 68 74 6d  href="pragma.htm
03d0: 6c 23 70 72 61 67 6d 61 5f 61 75 74 6f 5f 76 61  l#pragma_auto_va
03e0: 63 75 75 6d 22 3e 61 75 74 6f 2d 76 61 63 75 75  cuum">auto-vacuu
03f0: 6d 3c 2f 61 3e 20 0a 66 6c 61 67 20 73 65 74 20  m</a> .flag set 
0400: 62 79 20 64 65 66 61 75 6c 74 2e 20 54 68 65 20  by default. The 
0410: 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 69 73  default value is
0420: 20 30 20 28 64 6f 20 6e 6f 74 20 63 72 65 61 74   0 (do not creat
0430: 65 20 61 75 74 6f 2d 76 61 63 75 75 6d 0a 64 61  e auto-vacuum.da
0440: 74 61 62 61 73 65 73 29 2e 20 49 6e 20 61 6e 79  tabases). In any
0450: 20 63 61 73 65 20 74 68 65 20 63 6f 6d 70 69 6c   case the compil
0460: 65 2d 74 69 6d 65 20 64 65 66 61 75 6c 74 20 6d  e-time default m
0470: 61 79 20 62 65 20 6f 76 65 72 72 69 64 64 65 6e  ay be overridden
0480: 20 62 79 20 74 68 65 20 0a 22 50 52 41 47 4d 41   by the ."PRAGMA
0490: 20 61 75 74 6f 5f 76 61 63 75 75 6d 22 20 63 6f   auto_vacuum" co
04a0: 6d 6d 61 6e 64 2e 0a 3c 2f 70 3e 0a 0a 3c 70 3e  mmand..</p>..<p>
04b0: 3c 62 3e 53 51 4c 49 54 45 5f 44 45 46 41 55 4c  <b>SQLITE_DEFAUL
04c0: 54 5f 43 41 43 48 45 5f 53 49 5a 45 3d 3c 69 3e  T_CACHE_SIZE=<i>
04d0: 26 6c 74 3b 70 61 67 65 73 26 67 74 3b 3c 2f 69  &lt;pages&gt;</i
04e0: 3e 3c 2f 62 3e 3c 62 72 3e 0a 54 68 69 73 20 6d  ></b><br>.This m
04f0: 61 63 72 6f 20 73 65 74 73 20 74 68 65 20 64 65  acro sets the de
0500: 66 61 75 6c 74 20 73 69 7a 65 20 6f 66 20 74 68  fault size of th
0510: 65 20 70 61 67 65 2d 63 61 63 68 65 20 66 6f 72  e page-cache for
0520: 20 65 61 63 68 20 61 74 74 61 63 68 65 64 0a 64   each attached.d
0530: 61 74 61 62 61 73 65 2c 20 69 6e 20 70 61 67 65  atabase, in page
0540: 73 2e 20 54 68 69 73 20 63 61 6e 20 62 65 20 6f  s. This can be o
0550: 76 65 72 72 69 64 64 65 6e 20 62 79 20 74 68 65  verridden by the
0560: 20 22 50 52 41 47 4d 41 20 63 61 63 68 65 5f 73   "PRAGMA cache_s
0570: 69 7a 65 22 0a 63 6f 6d 61 6d 6e 64 2e 20 54 68  ize".comamnd. Th
0580: 65 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20  e default value 
0590: 69 73 20 32 30 30 30 2e 0a 3c 2f 70 3e 0a 0a 3c  is 2000..</p>..<
05a0: 70 3e 3c 62 3e 53 51 4c 49 54 45 5f 44 45 46 41  p><b>SQLITE_DEFA
05b0: 55 4c 54 5f 50 41 47 45 5f 53 49 5a 45 3d 3c 69  ULT_PAGE_SIZE=<i
05c0: 3e 26 6c 74 3b 62 79 74 65 73 26 67 74 3b 3c 2f  >&lt;bytes&gt;</
05d0: 69 3e 3c 2f 62 3e 3c 62 72 3e 0a 54 68 69 73 20  i></b><br>.This 
05e0: 6d 61 63 72 6f 20 69 73 20 75 73 65 64 20 74 6f  macro is used to
05f0: 20 73 65 74 20 74 68 65 20 64 65 66 61 75 6c 74   set the default
0600: 20 70 61 67 65 2d 73 69 7a 65 20 75 73 65 64 20   page-size used 
0610: 77 68 65 6e 20 61 0a 64 61 74 61 62 61 73 65 20  when a.database 
0620: 69 73 20 63 72 65 61 74 65 64 2e 20 54 68 65 20  is created. The 
0630: 76 61 6c 75 65 20 61 73 73 69 67 6e 65 64 20 6d  value assigned m
0640: 75 73 74 20 62 65 20 61 20 70 6f 77 65 72 20 6f  ust be a power o
0650: 66 20 32 2e 20 54 68 65 0a 64 65 66 61 75 6c 74  f 2. The.default
0660: 20 76 61 6c 75 65 20 69 73 20 31 30 32 34 2e 20   value is 1024. 
0670: 54 68 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65  The compile-time
0680: 20 64 65 66 61 75 6c 74 20 6d 61 79 20 62 65 20   default may be 
0690: 6f 76 65 72 72 69 64 64 65 6e 20 61 74 20 0a 72  overridden at .r
06a0: 75 6e 74 69 6d 65 20 62 79 20 74 68 65 20 22 50  untime by the "P
06b0: 52 41 47 4d 41 20 70 61 67 65 5f 73 69 7a 65 22  RAGMA page_size"
06c0: 20 63 6f 6d 6d 61 6e 64 2e 0a 3c 2f 70 3e 0a 0a   command..</p>..
06d0: 3c 70 3e 3c 62 3e 53 51 4c 49 54 45 5f 44 45 46  <p><b>SQLITE_DEF
06e0: 41 55 4c 54 5f 54 45 4d 50 5f 43 41 43 48 45 5f  AULT_TEMP_CACHE_
06f0: 53 49 5a 45 3d 3c 69 3e 26 6c 74 3b 70 61 67 65  SIZE=<i>&lt;page
0700: 73 26 67 74 3b 3c 2f 69 3e 3c 2f 62 3e 3c 62 72  s&gt;</i></b><br
0710: 3e 0a 54 68 69 73 20 6d 61 63 72 6f 20 73 65 74  >.This macro set
0720: 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 73 69  s the default si
0730: 7a 65 20 6f 66 20 74 68 65 20 70 61 67 65 2d 63  ze of the page-c
0740: 61 63 68 65 20 66 6f 72 20 74 65 6d 70 6f 72 61  ache for tempora
0750: 72 79 20 66 69 6c 65 73 0a 63 72 65 61 74 65 64  ry files.created
0760: 20 62 79 20 53 51 4c 69 74 65 20 74 6f 20 73 74   by SQLite to st
0770: 6f 72 65 20 69 6e 74 65 72 6d 65 64 69 61 74 65  ore intermediate
0780: 20 72 65 73 75 6c 74 73 2c 20 69 6e 20 70 61 67   results, in pag
0790: 65 73 2e 20 49 74 20 64 6f 65 73 0a 6e 6f 74 20  es. It does.not 
07a0: 61 66 66 65 63 74 20 74 68 65 20 70 61 67 65 2d  affect the page-
07b0: 63 61 63 68 65 20 66 6f 72 20 74 68 65 20 74 65  cache for the te
07c0: 6d 70 20 64 61 74 61 62 61 73 65 2c 20 77 68 65  mp database, whe
07d0: 72 65 20 74 61 62 6c 65 73 20 63 72 65 61 74 65  re tables create
07e0: 64 0a 75 73 69 6e 67 20 22 43 52 45 41 54 45 20  d.using "CREATE 
07f0: 54 45 4d 50 20 54 41 42 4c 45 22 20 61 72 65 20  TEMP TABLE" are 
0800: 73 74 6f 72 65 64 2e 20 54 68 65 20 64 65 66 61  stored. The defa
0810: 75 6c 74 20 76 61 6c 75 65 20 69 73 20 35 30 30  ult value is 500
0820: 2e 0a 3c 2f 70 3e 0a 0a 3c 70 3e 3c 62 3e 53 51  ..</p>..<p><b>SQ
0830: 4c 49 54 45 5f 4d 41 58 5f 50 41 47 45 5f 53 49  LITE_MAX_PAGE_SI
0840: 5a 45 3d 3c 69 3e 26 6c 74 3b 62 79 74 65 73 26  ZE=<i>&lt;bytes&
0850: 67 74 3b 3c 2f 69 3e 3c 2f 62 3e 3c 62 72 3e 0a  gt;</i></b><br>.
0860: 54 68 69 73 20 69 73 20 75 73 65 64 20 74 6f 20  This is used to 
0870: 73 65 74 20 74 68 65 20 6d 61 78 69 6d 75 6d 20  set the maximum 
0880: 61 6c 6c 6f 77 61 62 6c 65 20 70 61 67 65 2d 73  allowable page-s
0890: 69 7a 65 20 74 68 61 74 20 63 61 6e 0a 62 65 20  ize that can.be 
08a0: 73 70 65 63 69 66 69 65 64 20 62 79 20 74 68 65  specified by the
08b0: 20 22 50 52 41 47 4d 41 20 70 61 67 65 5f 73 69   "PRAGMA page_si
08c0: 7a 65 22 20 63 6f 6d 6d 61 6e 64 2e 20 54 68 65  ze" command. The
08d0: 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 0a 69   default value.i
08e0: 73 20 38 31 39 32 2e 0a 3c 2f 70 3e 0a 0a 3c 61  s 8192..</p>..<a
08f0: 20 6e 61 6d 65 3d 22 6f 6d 69 74 66 65 61 74 75   name="omitfeatu
0900: 72 65 73 22 3e 3c 2f 61 3e 0a 3c 68 32 3e 4f 70  res"></a>.<h2>Op
0910: 74 69 6f 6e 73 20 54 6f 20 4f 6d 69 74 20 46 65  tions To Omit Fe
0920: 61 74 75 72 65 73 3c 2f 68 32 3e 0a 0a 3c 70 3e  atures</h2>..<p>
0930: 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 6f 70  The following op
0940: 74 69 6f 6e 73 20 61 72 65 20 75 73 65 64 20 74  tions are used t
0950: 6f 20 72 65 64 75 63 65 20 74 68 65 20 73 69 7a  o reduce the siz
0960: 65 20 6f 66 20 74 68 65 20 63 6f 6d 70 69 6c 65  e of the compile
0970: 64 0a 6c 69 62 72 61 72 79 20 62 79 20 6f 6d 69  d.library by omi
0980: 74 69 6e 67 20 6f 70 74 69 6f 6e 61 6c 20 66 65  ting optional fe
0990: 61 74 75 72 65 73 2e 20 54 68 69 73 20 69 73 20  atures. This is 
09a0: 70 72 6f 62 61 62 6c 79 20 6f 6e 6c 79 20 75 73  probably only us
09b0: 65 66 75 6c 0a 69 6e 20 65 6d 62 65 64 64 65 64  eful.in embedded
09c0: 20 73 79 73 74 65 6d 73 20 77 68 65 72 65 20 73   systems where s
09d0: 70 61 63 65 20 69 73 20 65 73 70 65 63 69 61 6c  pace is especial
09e0: 6c 79 20 74 69 67 68 74 2c 20 61 73 20 65 76 65  ly tight, as eve
09f0: 6e 20 77 69 74 68 20 61 6c 6c 0a 66 65 61 74 75  n with all.featu
0a00: 72 65 73 20 69 6e 63 6c 75 64 65 64 20 74 68 65  res included the
0a10: 20 53 51 4c 69 74 65 20 6c 69 62 72 61 72 79 20   SQLite library 
0a20: 69 73 20 72 65 6c 61 74 69 76 65 6c 79 20 73 6d  is relatively sm
0a30: 61 6c 6c 2e 20 44 6f 6e 27 74 20 66 6f 72 67 65  all. Don't forge
0a40: 74 0a 74 6f 20 74 65 6c 6c 20 79 6f 75 72 20 63  t.to tell your c
0a50: 6f 6d 70 69 6c 65 72 20 74 6f 20 6f 70 74 69 6d  ompiler to optim
0a60: 69 7a 65 20 66 6f 72 20 62 69 6e 61 72 79 20 73  ize for binary s
0a70: 69 7a 65 21 20 28 74 68 65 20 2d 4f 73 20 6f 70  ize! (the -Os op
0a80: 74 69 6f 6e 20 69 66 0a 75 73 69 6e 67 20 47 43  tion if.using GC
0a90: 43 29 2e 3c 2f 70 3e 0a 0a 3c 70 3e 54 68 65 20  C).</p>..<p>The 
0aa0: 6d 61 63 72 6f 73 20 69 6e 20 74 68 69 73 20 73  macros in this s
0ab0: 65 63 74 69 6f 6e 20 64 6f 20 6e 6f 74 20 72 65  ection do not re
0ac0: 71 75 69 72 65 20 76 61 6c 75 65 73 2e 20 54 68  quire values. Th
0ad0: 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 0a 63 6f 6d  e following .com
0ae0: 70 69 6c 61 74 69 6f 6e 20 73 77 69 74 63 68 65  pilation switche
0af0: 73 20 61 6c 6c 20 68 61 76 65 20 74 68 65 20 73  s all have the s
0b00: 61 6d 65 20 65 66 66 65 63 74 3a 3c 62 72 3e 0a  ame effect:<br>.
0b10: 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 41 4c  -DSQLITE_OMIT_AL
0b20: 54 45 52 54 41 42 4c 45 3c 62 72 3e 0a 2d 44 53  TERTABLE<br>.-DS
0b30: 51 4c 49 54 45 5f 4f 4d 49 54 5f 41 4c 54 45 52  QLITE_OMIT_ALTER
0b40: 54 41 42 4c 45 3d 31 3c 62 72 3e 0a 2d 44 53 51  TABLE=1<br>.-DSQ
0b50: 4c 49 54 45 5f 4f 4d 49 54 5f 41 4c 54 45 52 54  LITE_OMIT_ALTERT
0b60: 41 42 4c 45 3d 30 0a 3c 2f 70 3e 0a 0a 3c 70 3e  ABLE=0.</p>..<p>
0b70: 49 66 20 61 6e 79 20 6f 66 20 74 68 65 73 65 20  If any of these 
0b80: 6f 70 74 69 6f 6e 73 20 61 72 65 20 64 65 66 69  options are defi
0b90: 6e 65 64 2c 20 74 68 65 6e 20 74 68 65 20 73 61  ned, then the sa
0ba0: 6d 65 20 73 65 74 20 6f 66 20 53 51 4c 49 54 45  me set of SQLITE
0bb0: 5f 4f 4d 49 54 5f 58 58 58 0a 6f 70 74 69 6f 6e  _OMIT_XXX.option
0bc0: 73 20 6d 75 73 74 20 61 6c 73 6f 20 62 65 20 64  s must also be d
0bd0: 65 66 69 6e 65 64 20 77 68 65 6e 20 75 73 69 6e  efined when usin
0be0: 67 20 74 68 65 20 27 6c 65 6d 6f 6e 27 20 74 6f  g the 'lemon' to
0bf0: 6f 6c 20 74 6f 20 67 65 6e 65 72 61 74 65 20 61  ol to generate a
0c00: 20 70 61 72 73 65 2e 63 0a 66 69 6c 65 2e 20 42   parse.c.file. B
0c10: 65 63 61 75 73 65 20 6f 66 20 74 68 69 73 2c 20  ecause of this, 
0c20: 74 68 65 73 65 20 6f 70 74 69 6f 6e 73 20 6d 61  these options ma
0c30: 79 20 6f 6e 6c 79 20 75 73 65 64 20 77 68 65 6e  y only used when
0c40: 20 74 68 65 20 6c 69 62 72 61 72 79 20 69 73 20   the library is 
0c50: 62 75 69 6c 74 0a 66 72 6f 6d 20 73 6f 75 72 63  built.from sourc
0c60: 65 2c 20 6e 6f 74 20 66 72 6f 6d 20 74 68 65 20  e, not from the 
0c70: 63 6f 6c 6c 65 63 74 69 6f 6e 20 6f 66 20 70 72  collection of pr
0c80: 65 2d 70 61 63 6b 61 67 65 64 20 43 20 66 69 6c  e-packaged C fil
0c90: 65 73 20 70 72 6f 76 69 64 65 64 20 66 6f 72 0a  es provided for.
0ca0: 6e 6f 6e 2d 55 4e 49 58 20 6c 69 6b 65 20 70 6c  non-UNIX like pl
0cb0: 61 74 66 6f 72 6d 73 20 6f 6e 20 74 68 65 20 77  atforms on the w
0cc0: 65 62 73 69 74 65 2e 0a 3c 2f 70 3e 0a 0a 3c 70  ebsite..</p>..<p
0cd0: 3e 3c 62 3e 53 51 4c 49 54 45 5f 4f 4d 49 54 5f  ><b>SQLITE_OMIT_
0ce0: 41 4c 54 45 52 54 41 42 4c 45 3c 2f 62 3e 3c 62  ALTERTABLE</b><b
0cf0: 72 3e 0a 57 68 65 6e 20 74 68 69 73 20 6f 70 74  r>.When this opt
0d00: 69 6f 6e 20 69 73 20 64 65 66 69 6e 65 64 2c 20  ion is defined, 
0d10: 74 68 65 20 0a 3c 61 20 68 72 65 66 3d 22 6c 61  the .<a href="la
0d20: 6e 67 5f 61 6c 74 65 72 74 61 62 6c 65 2e 68 74  ng_altertable.ht
0d30: 6d 6c 22 3e 41 4c 54 45 52 20 54 41 42 4c 45 3c  ml">ALTER TABLE<
0d40: 2f 61 3e 20 63 6f 6d 6d 61 6e 64 20 69 73 20 6e  /a> command is n
0d50: 6f 74 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 74  ot included in t
0d60: 68 65 20 0a 6c 69 62 72 61 72 79 2e 20 45 78 65  he .library. Exe
0d70: 63 75 74 69 6e 67 20 61 6e 20 41 4c 54 45 52 20  cuting an ALTER 
0d80: 54 41 42 4c 45 20 73 74 61 74 65 6d 65 6e 74 20  TABLE statement 
0d90: 63 61 75 73 65 73 20 61 20 70 61 72 73 65 20 65  causes a parse e
0da0: 72 72 6f 72 2e 0a 3c 2f 70 3e 0a 0a 3c 70 3e 3c  rror..</p>..<p><
0db0: 62 3e 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 41 55  b>SQLITE_OMIT_AU
0dc0: 54 48 4f 52 49 5a 41 54 49 4f 4e 3c 2f 62 3e 3c  THORIZATION</b><
0dd0: 62 72 3e 0a 44 65 66 69 6e 69 6e 67 20 74 68 69  br>.Defining thi
0de0: 73 20 6f 70 74 69 6f 6e 20 6f 6d 69 74 73 20 74  s option omits t
0df0: 68 65 20 61 75 74 68 6f 72 69 7a 61 74 69 6f 6e  he authorization
0e00: 20 63 61 6c 6c 62 61 63 6b 20 66 65 61 74 75 72   callback featur
0e10: 65 20 66 72 6f 6d 20 74 68 65 0a 6c 69 62 72 61  e from the.libra
0e20: 72 79 2e 20 54 68 65 20 3c 61 20 68 72 65 66 3d  ry. The <a href=
0e30: 22 63 61 70 69 33 72 65 66 2e 68 74 6d 6c 23 73  "capi3ref.html#s
0e40: 71 6c 69 74 65 33 5f 73 65 74 5f 61 75 74 68 6f  qlite3_set_autho
0e50: 72 69 7a 65 72 22 3e 0a 73 71 6c 69 74 65 33 5f  rizer">.sqlite3_
0e60: 73 65 74 5f 61 75 74 68 6f 72 69 7a 65 72 28 29  set_authorizer()
0e70: 3c 2f 61 3e 20 41 50 49 20 66 75 6e 63 74 69 6f  </a> API functio
0e80: 6e 20 69 73 20 6e 6f 74 20 70 72 65 73 65 6e 74  n is not present
0e90: 20 69 6e 20 74 68 65 20 6c 69 62 72 61 72 79 2e   in the library.
0ea0: 0a 3c 2f 70 3e 0a 0a 3c 70 3e 3c 62 3e 53 51 4c  .</p>..<p><b>SQL
0eb0: 49 54 45 5f 4f 4d 49 54 5f 41 55 54 4f 56 41 43  ITE_OMIT_AUTOVAC
0ec0: 55 55 4d 3c 2f 62 3e 3c 62 72 3e 0a 49 66 20 74  UUM</b><br>.If t
0ed0: 68 69 73 20 6f 70 74 69 6f 6e 20 69 73 20 64 65  his option is de
0ee0: 66 69 6e 65 64 2c 20 74 68 65 20 6c 69 62 72 61  fined, the libra
0ef0: 72 79 20 63 61 6e 6e 6f 74 20 63 72 65 61 74 65  ry cannot create
0f00: 20 6f 72 20 77 72 69 74 65 20 74 6f 20 0a 64 61   or write to .da
0f10: 74 61 62 61 73 65 73 20 74 68 61 74 20 73 75 70  tabases that sup
0f20: 70 6f 72 74 20 0a 3c 61 20 68 72 65 66 3d 22 70  port .<a href="p
0f30: 72 61 67 6d 61 2e 68 74 6d 6c 23 70 72 61 67 6d  ragma.html#pragm
0f40: 61 5f 61 75 74 6f 5f 76 61 63 75 75 6d 22 3e 61  a_auto_vacuum">a
0f50: 75 74 6f 2d 76 61 63 75 75 6d 3c 2f 61 3e 2e 20  uto-vacuum</a>. 
0f60: 45 78 65 63 75 74 69 6e 67 20 61 0a 22 50 52 41  Executing a."PRA
0f70: 47 4d 41 20 61 75 74 6f 5f 76 61 63 75 75 6d 22  GMA auto_vacuum"
0f80: 20 73 74 61 74 65 6d 65 6e 74 20 69 73 20 6e 6f   statement is no
0f90: 74 20 61 6e 20 65 72 72 6f 72 2c 20 62 75 74 20  t an error, but 
0fa0: 64 6f 65 73 20 6e 6f 74 20 72 65 74 75 72 6e 20  does not return 
0fb0: 61 20 76 61 6c 75 65 0a 6f 72 20 6d 6f 64 69 66  a value.or modif
0fc0: 79 20 74 68 65 20 61 75 74 6f 2d 76 61 63 75 75  y the auto-vacuu
0fd0: 6d 20 66 6c 61 67 20 69 6e 20 74 68 65 20 64 61  m flag in the da
0fe0: 74 61 62 61 73 65 20 66 69 6c 65 2e 20 49 66 20  tabase file. If 
0ff0: 61 20 64 61 74 61 62 61 73 65 20 74 68 61 74 0a  a database that.
1000: 73 75 70 70 6f 72 74 73 20 61 75 74 6f 2d 76 61  supports auto-va
1010: 63 75 75 6d 20 69 73 20 6f 70 65 6e 65 64 20 62  cuum is opened b
1020: 79 20 61 20 6c 69 62 72 61 72 79 20 63 6f 6d 70  y a library comp
1030: 69 6c 65 64 20 77 69 74 68 20 74 68 69 73 20 6f  iled with this o
1040: 70 74 69 6f 6e 2c 20 69 74 0a 69 73 20 61 75 74  ption, it.is aut
1050: 6f 6d 61 74 69 63 61 6c 6c 79 20 6f 70 65 6e 65  omatically opene
1060: 64 20 69 6e 20 72 65 61 64 2d 6f 6e 6c 79 20 6d  d in read-only m
1070: 6f 64 65 2e 0a 3c 2f 70 3e 0a 0a 3c 70 3e 3c 62  ode..</p>..<p><b
1080: 3e 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 41 55 54  >SQLITE_OMIT_AUT
1090: 4f 49 4e 43 52 45 4d 45 4e 54 3c 2f 62 3e 3c 62  OINCREMENT</b><b
10a0: 72 3e 0a 54 68 69 73 20 6f 70 74 69 6f 6e 20 69  r>.This option i
10b0: 73 20 75 73 65 64 20 74 6f 20 6f 6d 69 74 20 74  s used to omit t
10c0: 68 65 20 41 55 54 4f 49 4e 43 52 45 4d 45 4e 54  he AUTOINCREMENT
10d0: 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 2e 20   functionality. 
10e0: 57 68 65 6e 20 74 68 69 73 20 0a 69 73 20 6d 61  When this .is ma
10f0: 63 72 6f 20 69 73 20 64 65 66 69 6e 65 64 2c 20  cro is defined, 
1100: 63 6f 6c 75 6d 6e 73 20 64 65 63 6c 61 72 65 64  columns declared
1110: 20 61 73 20 22 49 4e 54 45 47 45 52 20 50 52 49   as "INTEGER PRI
1120: 4d 41 52 59 20 4b 45 59 20 41 55 54 4f 49 4e 43  MARY KEY AUTOINC
1130: 52 45 4d 45 4e 54 22 0a 62 65 68 61 76 65 20 69  REMENT".behave i
1140: 6e 20 74 68 65 20 73 61 6d 65 20 77 61 79 20 61  n the same way a
1150: 73 20 63 6f 6c 75 6d 6e 73 20 64 65 63 6c 61 72  s columns declar
1160: 65 64 20 61 73 20 22 49 4e 54 45 47 45 52 20 50  ed as "INTEGER P
1170: 52 49 4d 41 52 59 20 4b 45 59 22 20 77 68 65 6e  RIMARY KEY" when
1180: 20 61 20 0a 4e 55 4c 4c 20 69 73 20 69 6e 73 65   a .NULL is inse
1190: 72 74 65 64 2e 20 54 68 65 20 73 71 6c 69 74 65  rted. The sqlite
11a0: 5f 73 65 71 75 65 6e 63 65 20 73 79 73 74 65 6d  _sequence system
11b0: 20 74 61 62 6c 65 20 69 73 20 6e 65 69 74 68 65   table is neithe
11c0: 72 20 63 72 65 61 74 65 64 2c 20 6e 6f 72 0a 72  r created, nor.r
11d0: 65 73 70 65 63 74 65 64 20 69 66 20 69 74 20 61  espected if it a
11e0: 6c 72 65 61 64 79 20 65 78 69 73 74 73 2e 0a 3c  lready exists..<
11f0: 2f 70 3e 0a 3c 70 3e 3c 69 3e 54 4f 44 4f 3a 20  /p>.<p><i>TODO: 
1200: 4e 65 65 64 20 61 20 6c 69 6e 6b 20 68 65 72 65  Need a link here
1210: 20 2d 20 41 55 54 4f 49 4e 43 52 45 4d 45 4e 54   - AUTOINCREMENT
1220: 20 69 73 20 6e 6f 74 20 79 65 74 20 64 6f 63 75   is not yet docu
1230: 6d 65 6e 74 65 64 3c 2f 69 3e 3c 70 3e 0a 0a 3c  mented</i><p>..<
1240: 70 3e 3c 62 3e 53 51 4c 49 54 45 5f 4f 4d 49 54  p><b>SQLITE_OMIT
1250: 5f 42 4c 4f 42 5f 4c 49 54 45 52 41 4c 3c 2f 62  _BLOB_LITERAL</b
1260: 3e 3c 62 72 3e 0a 57 68 65 6e 20 74 68 69 73 20  ><br>.When this 
1270: 6f 70 74 69 6f 6e 20 69 73 20 64 65 66 69 6e 65  option is define
1280: 64 2c 20 69 74 20 69 73 20 6e 6f 74 20 70 6f 73  d, it is not pos
1290: 73 69 62 6c 65 20 74 6f 20 73 70 65 63 69 66 79  sible to specify
12a0: 20 61 20 62 6c 6f 62 20 69 6e 0a 61 6e 20 53 51   a blob in.an SQ
12b0: 4c 20 73 74 61 74 65 6d 65 6e 74 20 75 73 69 6e  L statement usin
12c0: 67 20 74 68 65 20 58 27 41 42 43 44 27 20 73 79  g the X'ABCD' sy
12d0: 6e 74 61 78 2e 3c 2f 70 3e 20 0a 7d 0a 23 3c 70  ntax.</p> .}.#<p
12e0: 3e 57 41 52 4e 49 4e 47 3a 20 54 68 65 20 56 41  >WARNING: The VA
12f0: 43 55 55 4d 20 63 6f 6d 6d 61 6e 64 20 64 65 70  CUUM command dep
1300: 65 6e 64 73 20 6f 6e 20 74 68 69 73 20 73 79 6e  ends on this syn
1310: 74 61 78 20 66 6f 72 20 76 61 63 75 75 6d 69 6e  tax for vacuumin
1320: 67 20 64 61 74 61 62 61 73 65 73 0a 23 74 68 61  g databases.#tha
1330: 74 20 63 6f 6e 74 61 69 6e 20 62 6c 6f 62 73 2c  t contain blobs,
1340: 20 73 6f 20 64 69 73 61 62 6c 69 6e 67 20 74 68   so disabling th
1350: 69 73 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79  is functionality
1360: 20 6d 61 79 20 72 65 6e 64 65 72 20 61 20 64 61   may render a da
1370: 74 61 62 61 73 65 0a 23 75 6e 76 61 63 75 75 6d  tabase.#unvacuum
1380: 61 62 6c 65 2e 0a 23 3c 2f 70 3e 0a 23 3c 70 3e  able..#</p>.#<p>
1390: 3c 69 3e 54 4f 44 4f 3a 20 4e 65 65 64 20 61 20  <i>TODO: Need a 
13a0: 6c 69 6e 6b 20 68 65 72 65 20 2d 20 69 73 20 74  link here - is t
13b0: 68 61 74 20 73 79 6e 74 61 78 20 64 6f 63 75 6d  hat syntax docum
13c0: 65 6e 74 65 64 20 61 6e 79 77 68 65 72 65 3f 3c  ented anywhere?<
13d0: 2f 69 3e 3c 70 3e 0a 70 75 74 73 20 7b 0a 0a 3c  /i><p>.puts {..<
13e0: 70 3e 3c 62 3e 53 51 4c 49 54 45 5f 4f 4d 49 54  p><b>SQLITE_OMIT
13f0: 5f 43 4f 4d 50 4c 45 54 45 3c 2f 62 3e 3c 62 72  _COMPLETE</b><br
1400: 3e 0a 54 68 69 73 20 6f 70 74 69 6f 6e 20 63 61  >.This option ca
1410: 75 73 65 73 20 74 68 65 20 3c 61 20 68 72 65 66  uses the <a href
1420: 3d 22 63 61 70 69 33 72 65 66 2e 68 74 6d 6c 23  ="capi3ref.html#
1430: 73 71 6c 69 74 65 33 5f 63 6f 6d 70 6c 65 74 65  sqlite3_complete
1440: 22 3e 0a 73 71 6c 69 74 65 33 5f 63 6f 6d 70 6c  ">.sqlite3_compl
1450: 65 74 65 3c 2f 61 3e 20 41 50 49 20 74 6f 20 62  ete</a> API to b
1460: 65 20 6f 6d 69 74 74 65 64 2e 0a 3c 2f 70 3e 0a  e omitted..</p>.
1470: 0a 3c 70 3e 3c 62 3e 53 51 4c 49 54 45 5f 4f 4d  .<p><b>SQLITE_OM
1480: 49 54 5f 43 4f 4d 50 4f 55 4e 44 5f 53 45 4c 45  IT_COMPOUND_SELE
1490: 43 54 3c 2f 62 3e 3c 62 72 3e 0a 54 68 69 73 20  CT</b><br>.This 
14a0: 6f 70 74 69 6f 6e 20 69 73 20 75 73 65 64 20 74  option is used t
14b0: 6f 20 6f 6d 69 74 20 74 68 65 20 63 6f 6d 70 6f  o omit the compo
14c0: 75 6e 64 20 53 45 4c 45 43 54 20 66 75 6e 63 74  und SELECT funct
14d0: 69 6f 6e 61 6c 69 74 79 2e 20 0a 3c 61 20 68 72  ionality. .<a hr
14e0: 65 66 3d 22 6c 61 6e 67 5f 73 65 6c 65 63 74 2e  ef="lang_select.
14f0: 68 74 6d 6c 22 3e 53 45 4c 45 43 54 20 73 74 61  html">SELECT sta
1500: 74 65 6d 65 6e 74 73 3c 2f 61 3e 20 74 68 61 74  tements</a> that
1510: 20 75 73 65 20 74 68 65 20 0a 55 4e 49 4f 4e 2c   use the .UNION,
1520: 20 55 4e 49 4f 4e 20 41 4c 4c 2c 20 49 4e 54 45   UNION ALL, INTE
1530: 52 53 45 43 54 20 6f 72 20 45 58 43 45 50 54 20  RSECT or EXCEPT 
1540: 63 6f 6d 70 6f 75 6e 64 20 53 45 4c 45 43 54 20  compound SELECT 
1550: 6f 70 65 72 61 74 6f 72 73 20 77 69 6c 6c 20 0a  operators will .
1560: 63 61 75 73 65 20 61 20 70 61 72 73 65 20 65 72  cause a parse er
1570: 72 6f 72 2e 0a 3c 2f 70 3e 0a 0a 3c 70 3e 3c 62  ror..</p>..<p><b
1580: 3e 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 43 4f 4e  >SQLITE_OMIT_CON
1590: 46 4c 49 43 54 5f 43 4c 41 55 53 45 3c 2f 62 3e  FLICT_CLAUSE</b>
15a0: 3c 62 72 3e 0a 49 6e 20 74 68 65 20 66 75 74 75  <br>.In the futu
15b0: 72 65 2c 20 74 68 69 73 20 6f 70 74 69 6f 6e 20  re, this option 
15c0: 77 69 6c 6c 20 62 65 20 75 73 65 64 20 74 6f 20  will be used to 
15d0: 6f 6d 69 74 20 74 68 65 20 0a 3c 61 20 68 72 65  omit the .<a hre
15e0: 66 3d 22 6c 61 6e 67 5f 63 6f 6e 66 6c 69 63 74  f="lang_conflict
15f0: 2e 68 74 6d 6c 22 3e 4f 4e 20 43 4f 4e 46 4c 49  .html">ON CONFLI
1600: 43 54 3c 2f 61 3e 20 63 6c 61 75 73 65 20 66 72  CT</a> clause fr
1610: 6f 6d 20 74 68 65 20 6c 69 62 72 61 72 79 2e 0a  om the library..
1620: 3c 2f 70 3e 0a 0a 3c 70 3e 3c 62 3e 53 51 4c 49  </p>..<p><b>SQLI
1630: 54 45 5f 4f 4d 49 54 5f 44 41 54 45 54 49 4d 45  TE_OMIT_DATETIME
1640: 5f 46 55 4e 43 53 3c 2f 62 3e 3c 62 72 3e 0a 49  _FUNCS</b><br>.I
1650: 66 20 74 68 69 73 20 6f 70 74 69 6f 6e 20 69 73  f this option is
1660: 20 64 65 66 69 6e 65 64 2c 20 53 51 4c 69 74 65   defined, SQLite
1670: 27 73 20 62 75 69 6c 74 2d 69 6e 20 64 61 74 65  's built-in date
1680: 20 61 6e 64 20 74 69 6d 65 20 6d 61 6e 69 70 75   and time manipu
1690: 6c 61 74 69 6f 6e 0a 66 75 6e 63 74 69 6f 6e 73  lation.functions
16a0: 20 61 72 65 20 6f 6d 69 74 74 65 64 2e 20 53 70   are omitted. Sp
16b0: 65 63 69 66 69 63 61 6c 6c 79 2c 20 74 68 65 20  ecifically, the 
16c0: 53 51 4c 20 66 75 6e 63 74 69 6f 6e 73 20 6a 75  SQL functions ju
16d0: 6c 69 61 6e 64 61 79 28 29 2c 20 64 61 74 65 28  lianday(), date(
16e0: 29 2c 0a 74 69 6d 65 28 29 2c 20 64 61 74 65 74  ),.time(), datet
16f0: 69 6d 65 28 29 20 61 6e 64 20 73 74 72 66 74 69  ime() and strfti
1700: 6d 65 28 29 20 61 72 65 20 6e 6f 74 20 61 76 61  me() are not ava
1710: 69 6c 61 62 6c 65 2e 20 54 68 65 20 64 65 66 61  ilable. The defa
1720: 75 6c 74 20 63 6f 6c 75 6d 6e 0a 76 61 6c 75 65  ult column.value
1730: 73 20 43 55 52 52 45 4e 54 5f 54 49 4d 45 2c 20  s CURRENT_TIME, 
1740: 43 55 52 52 45 4e 54 5f 44 41 54 45 20 61 6e 64  CURRENT_DATE and
1750: 20 43 55 52 52 45 4e 54 5f 44 41 54 45 54 49 4d   CURRENT_DATETIM
1760: 45 20 61 72 65 20 73 74 69 6c 6c 20 61 76 61 69  E are still avai
1770: 6c 61 62 6c 65 2e 0a 3c 2f 70 3e 0a 0a 3c 70 3e  lable..</p>..<p>
1780: 3c 62 3e 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 45  <b>SQLITE_OMIT_E
1790: 58 50 4c 41 49 4e 3c 2f 62 3e 3c 62 72 3e 0a 44  XPLAIN</b><br>.D
17a0: 65 66 69 6e 69 6e 67 20 74 68 69 73 20 6f 70 74  efining this opt
17b0: 69 6f 6e 20 63 61 75 73 65 73 20 74 68 65 20 45  ion causes the E
17c0: 58 50 4c 41 49 4e 20 63 6f 6d 6d 61 6e 64 20 74  XPLAIN command t
17d0: 6f 20 62 65 20 6f 6d 69 74 74 65 64 20 66 72 6f  o be omitted fro
17e0: 6d 20 74 68 65 0a 6c 69 62 72 61 72 79 2e 20 41  m the.library. A
17f0: 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 65 78 65  ttempting to exe
1800: 63 75 74 65 20 61 6e 20 45 58 50 4c 41 49 4e 20  cute an EXPLAIN 
1810: 73 74 61 74 65 6d 65 6e 74 20 77 69 6c 6c 20 63  statement will c
1820: 61 75 73 65 20 61 20 70 61 72 73 65 0a 65 72 72  ause a parse.err
1830: 6f 72 2e 0a 3c 2f 70 3e 0a 0a 3c 70 3e 3c 62 3e  or..</p>..<p><b>
1840: 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 46 4c 4f 41  SQLITE_OMIT_FLOA
1850: 54 49 4e 47 5f 50 4f 49 4e 54 3c 2f 62 3e 3c 62  TING_POINT</b><b
1860: 72 3e 0a 54 68 69 73 20 6f 70 74 69 6f 6e 20 69  r>.This option i
1870: 73 20 75 73 65 64 20 74 6f 20 6f 6d 69 74 20 66  s used to omit f
1880: 6c 6f 61 74 69 6e 67 2d 70 6f 69 6e 74 20 6e 75  loating-point nu
1890: 6d 62 65 72 20 73 75 70 70 6f 72 74 20 66 72 6f  mber support fro
18a0: 6d 20 74 68 65 20 53 51 4c 69 74 65 0a 6c 69 62  m the SQLite.lib
18b0: 72 61 72 79 2e 20 57 68 65 6e 20 73 70 65 63 69  rary. When speci
18c0: 66 69 65 64 2c 20 73 70 65 63 69 66 79 69 6e 67  fied, specifying
18d0: 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e   a floating poin
18e0: 74 20 6e 75 6d 62 65 72 20 61 73 20 61 20 6c 69  t number as a li
18f0: 74 65 72 61 6c 20 0a 28 69 2e 65 2e 20 22 31 2e  teral .(i.e. "1.
1900: 30 31 22 29 20 72 65 73 75 6c 74 73 20 69 6e 20  01") results in 
1910: 61 20 70 61 72 73 65 20 65 72 72 6f 72 2e 0a 3c  a parse error..<
1920: 2f 70 3e 0a 3c 70 3e 49 6e 20 74 68 65 20 66 75  /p>.<p>In the fu
1930: 74 75 72 65 2c 20 74 68 69 73 20 6f 70 74 69 6f  ture, this optio
1940: 6e 20 6d 61 79 20 61 6c 73 6f 20 64 69 73 61 62  n may also disab
1950: 6c 65 20 6f 74 68 65 72 20 66 6c 6f 61 74 69 6e  le other floatin
1960: 67 20 70 6f 69 6e 74 20 0a 66 75 6e 63 74 69 6f  g point .functio
1970: 6e 61 6c 69 74 79 2c 20 66 6f 72 20 65 78 61 6d  nality, for exam
1980: 70 6c 65 20 74 68 65 20 73 71 6c 69 74 65 33 5f  ple the sqlite3_
1990: 72 65 73 75 6c 74 5f 64 6f 75 62 6c 65 28 29 2c  result_double(),
19a0: 20 0a 73 71 6c 69 74 65 33 5f 62 69 6e 64 5f 64   .sqlite3_bind_d
19b0: 6f 75 62 6c 65 28 29 2c 20 73 71 6c 69 74 65 33  ouble(), sqlite3
19c0: 5f 76 61 6c 75 65 5f 64 6f 75 62 6c 65 28 29 20  _value_double() 
19d0: 61 6e 64 20 73 71 6c 69 74 65 33 5f 63 6f 6c 75  and sqlite3_colu
19e0: 6d 6e 5f 64 6f 75 62 6c 65 28 29 20 0a 41 50 49  mn_double() .API
19f0: 20 66 75 6e 63 74 69 6f 6e 73 2e 0a 3c 2f 70 3e   functions..</p>
1a00: 0a 0a 3c 70 3e 3c 62 3e 53 51 4c 49 54 45 5f 4f  ..<p><b>SQLITE_O
1a10: 4d 49 54 5f 46 4f 52 45 49 47 4e 5f 4b 45 59 3c  MIT_FOREIGN_KEY<
1a20: 2f 62 3e 3c 62 72 3e 0a 49 66 20 74 68 69 73 20  /b><br>.If this 
1a30: 6f 70 74 69 6f 6e 20 69 73 20 64 65 66 69 6e 65  option is define
1a40: 64 2c 20 46 4f 52 45 49 47 4e 20 4b 45 59 20 63  d, FOREIGN KEY c
1a50: 6c 61 75 73 65 73 20 69 6e 20 63 6f 6c 75 6d 6e  lauses in column
1a60: 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 61 72   declarations ar
1a70: 65 0a 69 67 6e 6f 72 65 64 2e 0a 3c 2f 70 3e 0a  e.ignored..</p>.
1a80: 0a 3c 70 3e 3c 62 3e 53 51 4c 49 54 45 5f 4f 4d  .<p><b>SQLITE_OM
1a90: 49 54 5f 49 4e 54 45 47 52 49 54 59 5f 43 48 45  IT_INTEGRITY_CHE
1aa0: 43 4b 3c 2f 62 3e 3c 62 72 3e 0a 54 68 69 73 20  CK</b><br>.This 
1ab0: 6f 70 74 69 6f 6e 20 6d 61 79 20 62 65 20 75 73  option may be us
1ac0: 65 64 20 74 6f 20 6f 6d 69 74 20 74 68 65 20 0a  ed to omit the .
1ad0: 3c 61 20 68 72 65 66 3d 22 70 72 61 67 6d 61 2e  <a href="pragma.
1ae0: 68 74 6d 6c 23 70 72 61 67 6d 61 5f 69 6e 74 65  html#pragma_inte
1af0: 67 72 69 74 79 5f 63 68 65 63 6b 22 3e 22 50 52  grity_check">"PR
1b00: 41 47 4d 41 20 69 6e 74 65 67 72 69 74 79 5f 63  AGMA integrity_c
1b10: 68 65 63 6b 22 3c 2f 61 3e 20 0a 63 6f 6d 6d 61  heck"</a> .comma
1b20: 6e 64 20 66 72 6f 6d 20 74 68 65 20 63 6f 6d 70  nd from the comp
1b30: 69 6c 65 64 20 6c 69 62 72 61 72 79 2e 0a 3c 2f  iled library..</
1b40: 70 3e 0a 0a 3c 70 3e 3c 62 3e 53 51 4c 49 54 45  p>..<p><b>SQLITE
1b50: 5f 4f 4d 49 54 5f 4d 45 4d 4f 52 59 44 42 3c 2f  _OMIT_MEMORYDB</
1b60: 62 3e 3c 62 72 3e 0a 57 68 65 6e 20 74 68 69 73  b><br>.When this
1b70: 20 69 73 20 64 65 66 69 6e 65 64 2c 20 74 68 65   is defined, the
1b80: 20 6c 69 62 72 61 72 79 20 64 6f 65 73 20 6e 6f   library does no
1b90: 74 20 72 65 73 70 65 63 74 20 74 68 65 20 73 70  t respect the sp
1ba0: 65 63 69 61 6c 20 64 61 74 61 62 61 73 65 0a 6e  ecial database.n
1bb0: 61 6d 65 20 22 3a 6d 65 6d 6f 72 79 3a 22 20 28  ame ":memory:" (
1bc0: 6e 6f 72 6d 61 6c 6c 79 20 75 73 65 64 20 74 6f  normally used to
1bd0: 20 63 72 65 61 74 65 20 61 6e 20 69 6e 2d 6d 65   create an in-me
1be0: 6d 6f 72 79 20 64 61 74 61 62 61 73 65 29 2e 20  mory database). 
1bf0: 49 66 20 0a 22 3a 6d 65 6d 6f 72 79 3a 22 20 69  If .":memory:" i
1c00: 73 20 70 61 73 73 65 64 20 74 6f 20 73 71 6c 69  s passed to sqli
1c10: 74 65 33 5f 6f 70 65 6e 28 29 2c 20 61 20 66 69  te3_open(), a fi
1c20: 6c 65 20 77 69 74 68 20 74 68 69 73 20 6e 61 6d  le with this nam
1c30: 65 20 77 69 6c 6c 20 62 65 20 0a 6f 70 65 6e 65  e will be .opene
1c40: 64 20 6f 72 20 63 72 65 61 74 65 64 2e 0a 3c 2f  d or created..</
1c50: 70 3e 0a 0a 3c 70 3e 3c 62 3e 53 51 4c 49 54 45  p>..<p><b>SQLITE
1c60: 5f 4f 4d 49 54 5f 50 41 47 45 52 5f 50 52 41 47  _OMIT_PAGER_PRAG
1c70: 4d 41 53 3c 2f 62 3e 3c 62 72 3e 0a 44 65 66 69  MAS</b><br>.Defi
1c80: 6e 69 6e 67 20 74 68 69 73 20 6f 70 74 69 6f 6e  ning this option
1c90: 20 6f 6d 69 74 73 20 70 72 61 67 6d 61 73 20 72   omits pragmas r
1ca0: 65 6c 61 74 65 64 20 74 6f 20 74 68 65 20 70 61  elated to the pa
1cb0: 67 65 72 20 73 75 62 73 79 73 74 65 6d 20 66 72  ger subsystem fr
1cc0: 6f 6d 20 0a 74 68 65 20 62 75 69 6c 64 2e 20 43  om .the build. C
1cd0: 75 72 72 65 6e 74 6c 79 2c 20 74 68 65 20 0a 3c  urrently, the .<
1ce0: 61 20 68 72 65 66 3d 22 70 72 61 67 6d 61 2e 68  a href="pragma.h
1cf0: 74 6d 6c 23 70 72 61 67 6d 61 5f 64 65 66 61 75  tml#pragma_defau
1d00: 6c 74 5f 63 61 63 68 65 5f 73 69 7a 65 22 3e 64  lt_cache_size">d
1d10: 65 66 61 75 6c 74 5f 63 61 63 68 65 5f 73 69 7a  efault_cache_siz
1d20: 65 3c 2f 61 3e 20 61 6e 64 20 0a 3c 61 20 68 72  e</a> and .<a hr
1d30: 65 66 3d 22 70 72 61 67 6d 61 2e 68 74 6d 6c 23  ef="pragma.html#
1d40: 70 72 61 67 6d 61 5f 63 61 63 68 65 5f 73 69 7a  pragma_cache_siz
1d50: 65 22 3e 63 61 63 68 65 5f 73 69 7a 65 3c 2f 61  e">cache_size</a
1d60: 3e 20 70 72 61 67 6d 61 73 20 61 72 65 20 6f 6d  > pragmas are om
1d70: 69 74 74 65 64 2e 0a 3c 2f 70 3e 0a 0a 3c 70 3e  itted..</p>..<p>
1d80: 3c 62 3e 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 50  <b>SQLITE_OMIT_P
1d90: 52 41 47 4d 41 3c 2f 62 3e 3c 62 72 3e 0a 54 68  RAGMA</b><br>.Th
1da0: 69 73 20 6f 70 74 69 6f 6e 20 69 73 20 75 73 65  is option is use
1db0: 64 20 74 6f 20 6f 6d 69 74 20 74 68 65 20 3c 61  d to omit the <a
1dc0: 20 68 72 65 66 3d 22 70 72 61 67 6d 61 2e 68 74   href="pragma.ht
1dd0: 6d 6c 22 3e 50 52 41 47 4d 41 20 63 6f 6d 6d 61  ml">PRAGMA comma
1de0: 6e 64 3c 2f 61 3e 20 0a 66 72 6f 6d 20 74 68 65  nd</a> .from the
1df0: 20 6c 69 62 72 61 72 79 2e 20 4e 6f 74 65 20 74   library. Note t
1e00: 68 61 74 20 69 74 20 69 73 20 75 73 65 66 75 6c  hat it is useful
1e10: 20 74 6f 20 64 65 66 69 6e 65 20 74 68 65 20 6d   to define the m
1e20: 61 63 72 6f 73 20 74 68 61 74 20 6f 6d 69 74 0a  acros that omit.
1e30: 73 70 65 63 69 66 69 63 20 70 72 61 67 6d 61 73  specific pragmas
1e40: 20 69 6e 20 61 64 64 69 74 69 6f 6e 20 74 6f 20   in addition to 
1e50: 74 68 69 73 2c 20 61 73 20 74 68 65 79 20 6d 61  this, as they ma
1e60: 79 20 61 6c 73 6f 20 72 65 6d 6f 76 65 20 73 75  y also remove su
1e70: 70 70 6f 72 74 69 6e 67 20 63 6f 64 65 0a 69 6e  pporting code.in
1e80: 20 6f 74 68 65 72 20 73 75 62 2d 73 79 73 74 65   other sub-syste
1e90: 6d 73 2e 20 54 68 69 73 20 6d 61 63 72 6f 20 72  ms. This macro r
1ea0: 65 6d 6f 76 65 73 20 74 68 65 20 50 52 41 47 4d  emoves the PRAGM
1eb0: 41 20 63 6f 6d 6d 61 6e 64 20 6f 6e 6c 79 2e 0a  A command only..
1ec0: 3c 2f 70 3e 0a 0a 3c 70 3e 3c 62 3e 53 51 4c 49  </p>..<p><b>SQLI
1ed0: 54 45 5f 4f 4d 49 54 5f 50 52 4f 47 52 45 53 53  TE_OMIT_PROGRESS
1ee0: 5f 43 41 4c 4c 42 41 43 4b 3c 2f 62 3e 3c 62 72  _CALLBACK</b><br
1ef0: 3e 0a 54 68 69 73 20 6f 70 74 69 6f 6e 20 6d 61  >.This option ma
1f00: 79 20 62 65 20 64 65 66 69 6e 65 64 20 74 6f 20  y be defined to 
1f10: 6f 6d 69 74 20 74 68 65 20 63 61 70 61 62 69 6c  omit the capabil
1f20: 69 74 79 20 74 6f 20 69 73 73 75 65 20 22 70 72  ity to issue "pr
1f30: 6f 67 72 65 73 73 22 20 0a 63 61 6c 6c 62 61 63  ogress" .callbac
1f40: 6b 73 20 64 75 72 69 6e 67 20 6c 6f 6e 67 2d 72  ks during long-r
1f50: 75 6e 6e 69 6e 67 20 53 51 4c 20 73 74 61 74 65  unning SQL state
1f60: 6d 65 6e 74 73 2e 20 54 68 65 20 0a 3c 61 20 68  ments. The .<a h
1f70: 72 65 66 3d 22 63 61 70 69 33 72 65 66 2e 68 74  ref="capi3ref.ht
1f80: 6d 6c 23 73 71 6c 69 74 65 33 5f 70 72 6f 67 72  ml#sqlite3_progr
1f90: 65 73 73 5f 68 61 6e 64 6c 65 72 22 3e 73 71 6c  ess_handler">sql
1fa0: 69 74 65 33 5f 70 72 6f 67 72 65 73 73 5f 68 61  ite3_progress_ha
1fb0: 6e 64 6c 65 72 28 29 3c 2f 61 3e 0a 41 50 49 20  ndler()</a>.API 
1fc0: 66 75 6e 63 74 69 6f 6e 20 69 73 20 6e 6f 74 20  function is not 
1fd0: 70 72 65 73 65 6e 74 20 69 6e 20 74 68 65 20 6c  present in the l
1fe0: 69 62 72 61 72 79 2e 0a 0a 3c 70 3e 3c 62 3e 53  ibrary...<p><b>S
1ff0: 51 4c 49 54 45 5f 4f 4d 49 54 5f 52 45 49 4e 44  QLITE_OMIT_REIND
2000: 45 58 3c 2f 62 3e 3c 62 72 3e 0a 57 68 65 6e 20  EX</b><br>.When 
2010: 74 68 69 73 20 6f 70 74 69 6f 6e 20 69 73 20 64  this option is d
2020: 65 66 69 6e 65 64 2c 20 74 68 65 20 3c 61 20 68  efined, the <a h
2030: 72 65 66 3d 22 6c 61 6e 67 5f 72 65 69 6e 64 65  ref="lang_reinde
2040: 78 2e 68 74 6d 6c 22 3e 52 45 49 4e 44 45 58 3c  x.html">REINDEX<
2050: 2f 61 3e 20 0a 63 6f 6d 6d 61 6e 64 20 69 73 20  /a> .command is 
2060: 6e 6f 74 20 69 6e 63 6c 75 64 65 64 20 69 6e 20  not included in 
2070: 74 68 65 20 6c 69 62 72 61 72 79 2e 20 45 78 65  the library. Exe
2080: 63 75 74 69 6e 67 20 61 20 52 45 49 4e 44 45 58  cuting a REINDEX
2090: 20 73 74 61 74 65 6d 65 6e 74 20 63 61 75 73 65   statement cause
20a0: 73 20 0a 61 20 70 61 72 73 65 20 65 72 72 6f 72  s .a parse error
20b0: 2e 0a 3c 2f 70 3e 0a 0a 3c 70 3e 3c 62 3e 53 51  ..</p>..<p><b>SQ
20c0: 4c 49 54 45 5f 4f 4d 49 54 5f 53 43 48 45 4d 41  LITE_OMIT_SCHEMA
20d0: 5f 50 52 41 47 4d 41 53 3c 2f 62 3e 3c 62 72 3e  _PRAGMAS</b><br>
20e0: 0a 44 65 66 69 6e 69 6e 67 20 74 68 69 73 20 6f  .Defining this o
20f0: 70 74 69 6f 6e 20 6f 6d 69 74 73 20 70 72 61 67  ption omits prag
2100: 6d 61 73 20 66 6f 72 20 71 75 65 72 79 69 6e 67  mas for querying
2110: 20 74 68 65 20 64 61 74 61 62 61 73 65 20 73 63   the database sc
2120: 68 65 6d 61 20 66 72 6f 6d 20 0a 74 68 65 20 62  hema from .the b
2130: 75 69 6c 64 2e 20 43 75 72 72 65 6e 74 6c 79 2c  uild. Currently,
2140: 20 74 68 65 20 0a 3c 61 20 68 72 65 66 3d 22 70   the .<a href="p
2150: 72 61 67 6d 61 2e 68 74 6d 6c 23 70 72 61 67 6d  ragma.html#pragm
2160: 61 5f 74 61 62 6c 65 5f 69 6e 66 6f 22 3e 74 61  a_table_info">ta
2170: 62 6c 65 5f 69 6e 66 6f 3c 2f 61 3e 2c 0a 3c 61  ble_info</a>,.<a
2180: 20 68 72 65 66 3d 22 70 72 61 67 6d 61 2e 68 74   href="pragma.ht
2190: 6d 6c 23 70 72 61 67 6d 61 5f 69 6e 64 65 78 5f  ml#pragma_index_
21a0: 69 6e 66 6f 22 3e 69 6e 64 65 78 5f 69 6e 66 6f  info">index_info
21b0: 3c 2f 61 3e 2c 0a 3c 61 20 68 72 65 66 3d 22 70  </a>,.<a href="p
21c0: 72 61 67 6d 61 2e 68 74 6d 6c 23 70 72 61 67 6d  ragma.html#pragm
21d0: 61 5f 69 6e 64 65 78 5f 6c 69 73 74 22 3e 69 6e  a_index_list">in
21e0: 64 65 78 5f 6c 69 73 74 3c 2f 61 3e 20 61 6e 64  dex_list</a> and
21f0: 0a 3c 61 20 68 72 65 66 3d 22 70 72 61 67 6d 61  .<a href="pragma
2200: 2e 68 74 6d 6c 23 70 72 61 67 6d 61 5f 64 61 74  .html#pragma_dat
2210: 61 62 61 73 65 5f 6c 69 73 74 22 3e 64 61 74 61  abase_list">data
2220: 62 61 73 65 5f 6c 69 73 74 3c 2f 61 3e 0a 70 72  base_list</a>.pr
2230: 61 67 6d 61 73 20 61 72 65 20 6f 6d 69 74 74 65  agmas are omitte
2240: 64 2e 0a 3c 2f 70 3e 0a 0a 3c 70 3e 3c 62 3e 53  d..</p>..<p><b>S
2250: 51 4c 49 54 45 5f 4f 4d 49 54 5f 53 43 48 45 4d  QLITE_OMIT_SCHEM
2260: 41 5f 56 45 52 53 49 4f 4e 5f 50 52 41 47 4d 41  A_VERSION_PRAGMA
2270: 53 3c 2f 62 3e 3c 62 72 3e 0a 44 65 66 69 6e 69  S</b><br>.Defini
2280: 6e 67 20 74 68 69 73 20 6f 70 74 69 6f 6e 20 6f  ng this option o
2290: 6d 69 74 73 20 70 72 61 67 6d 61 73 20 66 6f 72  mits pragmas for
22a0: 20 71 75 65 72 79 69 6e 67 20 61 6e 64 20 6d 6f   querying and mo
22b0: 64 69 66 79 69 6e 67 20 74 68 65 20 0a 64 61 74  difying the .dat
22c0: 61 62 61 73 65 20 73 63 68 65 6d 61 20 76 65 72  abase schema ver
22d0: 73 69 6f 6e 20 61 6e 64 20 75 73 65 72 20 76 65  sion and user ve
22e0: 72 73 69 6f 6e 20 66 72 6f 6d 20 74 68 65 20 62  rsion from the b
22f0: 75 69 6c 64 2e 20 53 70 65 63 69 66 69 63 61 6c  uild. Specifical
2300: 6c 79 2c 20 74 68 65 20 0a 3c 61 20 68 72 65 66  ly, the .<a href
2310: 3d 22 70 72 61 67 6d 61 2e 68 74 6d 6c 23 70 72  ="pragma.html#pr
2320: 61 67 6d 61 5f 73 63 68 65 6d 61 5f 76 65 72 73  agma_schema_vers
2330: 69 6f 6e 22 3e 73 63 68 65 6d 61 5f 76 65 72 73  ion">schema_vers
2340: 69 6f 6e 3c 2f 61 3e 20 61 6e 64 0a 3c 61 20 68  ion</a> and.<a h
2350: 72 65 66 3d 22 70 72 61 67 6d 61 2e 68 74 6d 6c  ref="pragma.html
2360: 23 70 72 61 67 6d 61 5f 75 73 65 72 5f 76 65 72  #pragma_user_ver
2370: 73 69 6f 6e 22 3e 75 73 65 72 5f 76 65 72 73 69  sion">user_versi
2380: 6f 6e 3c 2f 61 3e 0a 70 72 61 67 6d 61 73 20 61  on</a>.pragmas a
2390: 72 65 20 6f 6d 69 74 74 65 64 2e 0a 0a 3c 70 3e  re omitted...<p>
23a0: 3c 62 3e 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 53  <b>SQLITE_OMIT_S
23b0: 55 42 51 55 45 52 59 3c 2f 62 3e 3c 62 72 3e 0a  UBQUERY</b><br>.
23c0: 3c 70 3e 49 66 20 64 65 66 69 6e 65 64 2c 20 73  <p>If defined, s
23d0: 75 70 70 6f 72 74 20 66 6f 72 20 73 75 62 2d 73  upport for sub-s
23e0: 65 6c 65 63 74 73 20 61 6e 64 20 74 68 65 20 49  elects and the I
23f0: 4e 28 29 20 6f 70 65 72 61 74 6f 72 20 61 72 65  N() operator are
2400: 20 6f 6d 69 74 74 65 64 2e 0a 3c 2f 70 3e 0a 0a   omitted..</p>..
2410: 3c 70 3e 3c 62 3e 53 51 4c 49 54 45 5f 4f 4d 49  <p><b>SQLITE_OMI
2420: 54 5f 54 43 4c 5f 56 41 52 49 41 42 4c 45 3c 2f  T_TCL_VARIABLE</
2430: 62 3e 3c 62 72 3e 0a 3c 70 3e 49 66 20 74 68 69  b><br>.<p>If thi
2440: 73 20 6d 61 63 72 6f 20 69 73 20 64 65 66 69 6e  s macro is defin
2450: 65 64 2c 20 74 68 65 6e 20 74 68 65 20 73 70 65  ed, then the spe
2460: 63 69 61 6c 20 22 24 3c 76 61 72 69 61 62 6c 65  cial "$<variable
2470: 2d 6e 61 6d 65 3e 22 20 73 79 6e 74 61 78 0a 75  -name>" syntax.u
2480: 73 65 64 20 74 6f 20 61 75 74 6f 6d 61 74 69 63  sed to automatic
2490: 61 6c 6c 79 20 62 69 6e 64 20 53 51 4c 20 76 61  ally bind SQL va
24a0: 72 69 61 62 6c 65 73 20 74 6f 20 54 43 4c 20 76  riables to TCL v
24b0: 61 72 69 61 62 6c 65 73 20 69 73 20 6f 6d 69 74  ariables is omit
24c0: 74 65 64 2e 0a 3c 2f 70 3e 0a 0a 3c 70 3e 3c 62  ted..</p>..<p><b
24d0: 3e 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 54 52 49  >SQLITE_OMIT_TRI
24e0: 47 47 45 52 3c 2f 62 3e 3c 62 72 3e 0a 44 65 66  GGER</b><br>.Def
24f0: 69 6e 69 6e 67 20 74 68 69 73 20 6f 70 74 69 6f  ining this optio
2500: 6e 20 6f 6d 69 74 73 20 73 75 70 70 6f 72 74 20  n omits support 
2510: 66 6f 72 20 56 49 45 57 20 6f 62 6a 65 63 74 73  for VIEW objects
2520: 2e 20 4e 65 69 74 68 65 72 20 74 68 65 20 0a 3c  . Neither the .<
2530: 61 20 68 72 65 66 3d 22 6c 61 6e 67 5f 63 72 65  a href="lang_cre
2540: 61 74 65 74 72 69 67 67 65 72 2e 68 74 6d 6c 22  atetrigger.html"
2550: 3e 43 52 45 41 54 45 20 54 52 49 47 47 45 52 3c  >CREATE TRIGGER<
2560: 2f 61 3e 20 6f 72 20 0a 3c 61 20 68 72 65 66 3d  /a> or .<a href=
2570: 22 6c 61 6e 67 5f 64 72 6f 70 74 72 69 67 67 65  "lang_droptrigge
2580: 72 2e 68 74 6d 6c 22 3e 44 52 4f 50 20 54 52 49  r.html">DROP TRI
2590: 47 47 45 52 3c 2f 61 3e 20 0a 63 6f 6d 6d 61 6e  GGER</a> .comman
25a0: 64 73 20 61 72 65 20 61 76 61 69 6c 61 62 6c 65  ds are available
25b0: 20 69 6e 20 74 68 69 73 20 63 61 73 65 2c 20 61   in this case, a
25c0: 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 65 78 65  ttempting to exe
25d0: 63 75 74 65 20 65 69 74 68 65 72 20 77 69 6c 6c  cute either will
25e0: 20 72 65 73 75 6c 74 0a 69 6e 20 61 20 70 61 72   result.in a par
25f0: 73 65 20 65 72 72 6f 72 2e 0a 3c 2f 70 3e 0a 3c  se error..</p>.<
2600: 70 3e 0a 57 41 52 4e 49 4e 47 3a 20 49 66 20 74  p>.WARNING: If t
2610: 68 69 73 20 6d 61 63 72 6f 20 69 73 20 64 65 66  his macro is def
2620: 69 6e 65 64 2c 20 69 74 20 77 69 6c 6c 20 6e 6f  ined, it will no
2630: 74 20 62 65 20 70 6f 73 73 69 62 6c 65 20 74 6f  t be possible to
2640: 20 6f 70 65 6e 20 61 20 64 61 74 61 62 61 73 65   open a database
2650: 0a 66 6f 72 20 77 68 69 63 68 20 74 68 65 20 73  .for which the s
2660: 63 68 65 6d 61 20 63 6f 6e 74 61 69 6e 73 20 54  chema contains T
2670: 52 49 47 47 45 52 20 6f 62 6a 65 63 74 73 2e 20  RIGGER objects. 
2680: 0a 3c 2f 70 3e 0a 0a 3c 70 3e 3c 62 3e 53 51 4c  .</p>..<p><b>SQL
2690: 49 54 45 5f 4f 4d 49 54 5f 55 54 46 31 36 3c 2f  ITE_OMIT_UTF16</
26a0: 62 3e 3c 62 72 3e 0a 54 68 69 73 20 6d 61 63 72  b><br>.This macr
26b0: 6f 20 69 73 20 75 73 65 64 20 74 6f 20 6f 6d 69  o is used to omi
26c0: 74 20 73 75 70 70 6f 72 74 20 66 6f 72 20 55 54  t support for UT
26d0: 46 31 36 20 74 65 78 74 20 65 6e 63 6f 64 69 6e  F16 text encodin
26e0: 67 2e 20 57 68 65 6e 20 74 68 69 73 20 69 73 0a  g. When this is.
26f0: 64 65 66 69 6e 65 64 20 61 6c 6c 20 41 50 49 20  defined all API 
2700: 66 75 6e 63 74 69 6f 6e 73 20 74 68 61 74 20 72  functions that r
2710: 65 74 75 72 6e 20 6f 72 20 61 63 63 65 70 74 20  eturn or accept 
2720: 55 54 46 31 36 20 65 6e 63 6f 64 65 64 20 74 65  UTF16 encoded te
2730: 78 74 20 61 72 65 0a 75 6e 61 76 61 69 6c 61 62  xt are.unavailab
2740: 6c 65 2e 20 54 68 65 73 65 20 66 75 6e 63 74 69  le. These functi
2750: 6f 6e 73 20 63 61 6e 20 62 65 20 69 64 65 6e 74  ons can be ident
2760: 69 66 69 65 64 20 62 79 20 74 68 65 20 66 61 63  ified by the fac
2770: 74 20 74 68 61 74 20 74 68 65 79 20 65 6e 64 0a  t that they end.
2780: 77 69 74 68 20 27 31 36 27 2c 20 66 6f 72 20 65  with '16', for e
2790: 78 61 6d 70 6c 65 20 73 71 6c 69 74 65 33 5f 70  xample sqlite3_p
27a0: 72 65 70 61 72 65 31 36 28 29 2c 20 73 71 6c 69  repare16(), sqli
27b0: 74 65 33 5f 63 6f 6c 75 6d 6e 5f 74 65 78 74 31  te3_column_text1
27c0: 36 28 29 20 61 6e 64 0a 73 71 6c 69 74 65 33 5f  6() and.sqlite3_
27d0: 62 69 6e 64 5f 74 65 78 74 31 36 28 29 2e 0a 3c  bind_text16()..<
27e0: 2f 70 3e 0a 0a 3c 70 3e 3c 62 3e 53 51 4c 49 54  /p>..<p><b>SQLIT
27f0: 45 5f 4f 4d 49 54 5f 56 41 43 55 55 4d 3c 2f 62  E_OMIT_VACUUM</b
2800: 3e 3c 62 72 3e 0a 57 68 65 6e 20 74 68 69 73 20  ><br>.When this 
2810: 6f 70 74 69 6f 6e 20 69 73 20 64 65 66 69 6e 65  option is define
2820: 64 2c 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22  d, the <a href="
2830: 6c 61 6e 67 5f 76 61 63 75 75 6d 2e 68 74 6d 6c  lang_vacuum.html
2840: 22 3e 56 41 43 55 55 4d 3c 2f 61 3e 20 0a 63 6f  ">VACUUM</a> .co
2850: 6d 6d 61 6e 64 20 69 73 20 6e 6f 74 20 69 6e 63  mmand is not inc
2860: 6c 75 64 65 64 20 69 6e 20 74 68 65 20 6c 69 62  luded in the lib
2870: 72 61 72 79 2e 20 45 78 65 63 75 74 69 6e 67 20  rary. Executing 
2880: 61 20 56 41 43 55 55 4d 20 73 74 61 74 65 6d 65  a VACUUM stateme
2890: 6e 74 20 63 61 75 73 65 73 20 0a 61 20 70 61 72  nt causes .a par
28a0: 73 65 20 65 72 72 6f 72 2e 0a 3c 2f 70 3e 0a 0a  se error..</p>..
28b0: 3c 70 3e 3c 62 3e 53 51 4c 49 54 45 5f 4f 4d 49  <p><b>SQLITE_OMI
28c0: 54 5f 56 49 45 57 3c 2f 62 3e 3c 62 72 3e 0a 44  T_VIEW</b><br>.D
28d0: 65 66 69 6e 69 6e 67 20 74 68 69 73 20 6f 70 74  efining this opt
28e0: 69 6f 6e 20 6f 6d 69 74 73 20 73 75 70 70 6f 72  ion omits suppor
28f0: 74 20 66 6f 72 20 56 49 45 57 20 6f 62 6a 65 63  t for VIEW objec
2900: 74 73 2e 20 4e 65 69 74 68 65 72 20 74 68 65 20  ts. Neither the 
2910: 0a 3c 61 20 68 72 65 66 3d 22 6c 61 6e 67 5f 63  .<a href="lang_c
2920: 72 65 61 74 65 76 69 65 77 2e 68 74 6d 6c 22 3e  reateview.html">
2930: 43 52 45 41 54 45 20 56 49 45 57 3c 2f 61 3e 20  CREATE VIEW</a> 
2940: 6f 72 20 0a 3c 61 20 68 72 65 66 3d 22 6c 61 6e  or .<a href="lan
2950: 67 5f 64 72 6f 70 76 69 65 77 2e 68 74 6d 6c 22  g_dropview.html"
2960: 3e 44 52 4f 50 20 56 49 45 57 3c 2f 61 3e 20 0a  >DROP VIEW</a> .
2970: 63 6f 6d 6d 61 6e 64 73 20 61 72 65 20 61 76 61  commands are ava
2980: 69 6c 61 62 6c 65 20 69 6e 20 74 68 69 73 20 63  ilable in this c
2990: 61 73 65 2c 20 61 74 74 65 6d 70 74 69 6e 67 20  ase, attempting 
29a0: 74 6f 20 65 78 65 63 75 74 65 20 65 69 74 68 65  to execute eithe
29b0: 72 20 77 69 6c 6c 20 72 65 73 75 6c 74 0a 69 6e  r will result.in
29c0: 20 61 20 70 61 72 73 65 20 65 72 72 6f 72 2e 0a   a parse error..
29d0: 3c 2f 70 3e 0a 3c 70 3e 0a 57 41 52 4e 49 4e 47  </p>.<p>.WARNING
29e0: 3a 20 49 66 20 74 68 69 73 20 6d 61 63 72 6f 20  : If this macro 
29f0: 69 73 20 64 65 66 69 6e 65 64 2c 20 69 74 20 77  is defined, it w
2a00: 69 6c 6c 20 6e 6f 74 20 62 65 20 70 6f 73 73 69  ill not be possi
2a10: 62 6c 65 20 74 6f 20 6f 70 65 6e 20 61 20 64 61  ble to open a da
2a20: 74 61 62 61 73 65 0a 66 6f 72 20 77 68 69 63 68  tabase.for which
2a30: 20 74 68 65 20 73 63 68 65 6d 61 20 63 6f 6e 74   the schema cont
2a40: 61 69 6e 73 20 56 49 45 57 20 6f 62 6a 65 63 74  ains VIEW object
2a50: 73 2e 20 0a 3c 2f 70 3e 0a                       s. .</p>.