System.Data.SQLite
Hex Artifact Content
Not logged in

Artifact 126154cd7728175b97a5b805cacb46240de5b067:


0000: 3c 21 44 4f 43 54 59 50 45 20 48 54 4d 4c 20 50  <!DOCTYPE HTML P
0010: 55 42 4c 49 43 20 22 2d 2f 2f 57 33 43 2f 2f 44  UBLIC "-//W3C//D
0020: 54 44 20 48 54 4d 4c 20 34 2e 30 31 2f 2f 45 4e  TD HTML 4.01//EN
0030: 22 20 22 68 74 74 70 3a 2f 2f 77 77 77 2e 77 33  " "http://www.w3
0040: 2e 6f 72 67 2f 54 52 2f 68 74 6d 6c 34 2f 73 74  .org/TR/html4/st
0050: 72 69 63 74 2e 64 74 64 22 3e 0a 3c 68 74 6d 6c  rict.dtd">.<html
0060: 3e 3c 68 65 61 64 3e 0a 3c 6d 65 74 61 20 6e 61  ><head>.<meta na
0070: 6d 65 3d 22 76 69 65 77 70 6f 72 74 22 20 63 6f  me="viewport" co
0080: 6e 74 65 6e 74 3d 22 77 69 64 74 68 3d 64 65 76  ntent="width=dev
0090: 69 63 65 2d 77 69 64 74 68 2c 20 69 6e 69 74 69  ice-width, initi
00a0: 61 6c 2d 73 63 61 6c 65 3d 31 2e 30 22 3e 0a 3c  al-scale=1.0">.<
00b0: 6d 65 74 61 20 68 74 74 70 2d 65 71 75 69 76 3d  meta http-equiv=
00c0: 22 63 6f 6e 74 65 6e 74 2d 74 79 70 65 22 20 63  "content-type" c
00d0: 6f 6e 74 65 6e 74 3d 22 74 65 78 74 2f 68 74 6d  ontent="text/htm
00e0: 6c 3b 20 63 68 61 72 73 65 74 3d 55 54 46 2d 38  l; charset=UTF-8
00f0: 22 3e 0a 3c 6c 69 6e 6b 20 68 72 65 66 3d 22 73  ">.<link href="s
0100: 71 6c 69 74 65 2e 63 73 73 22 20 72 65 6c 3d 22  qlite.css" rel="
0110: 73 74 79 6c 65 73 68 65 65 74 22 3e 0a 3c 74 69  stylesheet">.<ti
0120: 74 6c 65 3e 53 51 4c 69 74 65 20 51 75 65 72 79  tle>SQLite Query
0130: 20 4c 61 6e 67 75 61 67 65 3a 20 56 41 43 55 55   Language: VACUU
0140: 4d 3c 2f 74 69 74 6c 65 3e 0a 3c 21 2d 2d 20 70  M</title>.<!-- p
0150: 61 74 68 3d 20 2d 2d 3e 0a 3c 2f 68 65 61 64 3e  ath= -->.</head>
0160: 0a 3c 62 6f 64 79 3e 0a 3c 64 69 76 20 63 6c 61  .<body>.<div cla
0170: 73 73 3d 6e 6f 73 65 61 72 63 68 3e 0a 3c 61 20  ss=nosearch>.<a 
0180: 68 72 65 66 3d 22 69 6e 64 65 78 2e 68 74 6d 6c  href="index.html
0190: 22 3e 0a 3c 69 6d 67 20 63 6c 61 73 73 3d 22 6c  ">.<img class="l
01a0: 6f 67 6f 22 20 73 72 63 3d 22 69 6d 61 67 65 73  ogo" src="images
01b0: 2f 73 71 6c 69 74 65 33 37 30 5f 62 61 6e 6e 65  /sqlite370_banne
01c0: 72 2e 67 69 66 22 20 61 6c 74 3d 22 53 51 4c 69  r.gif" alt="SQLi
01d0: 74 65 22 20 62 6f 72 64 65 72 3d 22 30 22 3e 0a  te" border="0">.
01e0: 3c 2f 61 3e 0a 3c 64 69 76 3e 3c 21 2d 2d 20 49  </a>.<div><!-- I
01f0: 45 20 68 61 63 6b 20 74 6f 20 70 72 65 76 65 6e  E hack to preven
0200: 74 20 64 69 73 61 70 70 65 61 72 69 6e 67 20 6c  t disappearing l
0210: 6f 67 6f 20 2d 2d 3e 3c 2f 64 69 76 3e 0a 3c 64  ogo --></div>.<d
0220: 69 76 20 63 6c 61 73 73 3d 22 74 61 67 6c 69 6e  iv class="taglin
0230: 65 20 64 65 73 6b 74 6f 70 6f 6e 6c 79 22 3e 0a  e desktoponly">.
0240: 53 6d 61 6c 6c 2e 20 46 61 73 74 2e 20 52 65 6c  Small. Fast. Rel
0250: 69 61 62 6c 65 2e 3c 62 72 3e 43 68 6f 6f 73 65  iable.<br>Choose
0260: 20 61 6e 79 20 74 68 72 65 65 2e 0a 3c 2f 64 69   any three..</di
0270: 76 3e 0a 3c 64 69 76 20 63 6c 61 73 73 3d 22 6d  v>.<div class="m
0280: 65 6e 75 20 6d 61 69 6e 6d 65 6e 75 22 3e 0a 3c  enu mainmenu">.<
0290: 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d  ul>.<li><a href=
02a0: 22 69 6e 64 65 78 2e 68 74 6d 6c 22 3e 48 6f 6d  "index.html">Hom
02b0: 65 3c 2f 61 3e 0a 3c 6c 69 20 63 6c 61 73 73 3d  e</a>.<li class=
02c0: 27 6d 6f 62 69 6c 65 6f 6e 6c 79 27 3e 3c 61 20  'mobileonly'><a 
02d0: 68 72 65 66 3d 22 6a 61 76 61 73 63 72 69 70 74  href="javascript
02e0: 3a 76 6f 69 64 28 30 29 22 20 6f 6e 63 6c 69 63  :void(0)" onclic
02f0: 6b 3d 27 74 6f 67 67 6c 65 5f 64 69 76 28 22 73  k='toggle_div("s
0300: 75 62 6d 65 6e 75 22 29 27 3e 4d 65 6e 75 3c 2f  ubmenu")'>Menu</
0310: 61 3e 0a 3c 6c 69 20 63 6c 61 73 73 3d 27 77 69  a>.<li class='wi
0320: 64 65 6f 6e 6c 79 27 3e 3c 61 20 68 72 65 66 3d  deonly'><a href=
0330: 27 61 62 6f 75 74 2e 68 74 6d 6c 27 3e 41 62 6f  'about.html'>Abo
0340: 75 74 3c 2f 61 3e 0a 3c 6c 69 20 63 6c 61 73 73  ut</a>.<li class
0350: 3d 27 64 65 73 6b 74 6f 70 6f 6e 6c 79 27 3e 3c  ='desktoponly'><
0360: 61 20 68 72 65 66 3d 22 64 6f 63 73 2e 68 74 6d  a href="docs.htm
0370: 6c 22 3e 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e  l">Documentation
0380: 3c 2f 61 3e 0a 3c 6c 69 20 63 6c 61 73 73 3d 27  </a>.<li class='
0390: 64 65 73 6b 74 6f 70 6f 6e 6c 79 27 3e 3c 61 20  desktoponly'><a 
03a0: 68 72 65 66 3d 22 64 6f 77 6e 6c 6f 61 64 2e 68  href="download.h
03b0: 74 6d 6c 22 3e 44 6f 77 6e 6c 6f 61 64 3c 2f 61  tml">Download</a
03c0: 3e 0a 3c 6c 69 20 63 6c 61 73 73 3d 27 77 69 64  >.<li class='wid
03d0: 65 6f 6e 6c 79 27 3e 3c 61 20 68 72 65 66 3d 27  eonly'><a href='
03e0: 63 6f 70 79 72 69 67 68 74 2e 68 74 6d 6c 27 3e  copyright.html'>
03f0: 4c 69 63 65 6e 73 65 3c 2f 61 3e 0a 3c 6c 69 20  License</a>.<li 
0400: 63 6c 61 73 73 3d 27 64 65 73 6b 74 6f 70 6f 6e  class='desktopon
0410: 6c 79 27 3e 3c 61 20 68 72 65 66 3d 22 73 75 70  ly'><a href="sup
0420: 70 6f 72 74 2e 68 74 6d 6c 22 3e 53 75 70 70 6f  port.html">Suppo
0430: 72 74 3c 2f 61 3e 0a 3c 6c 69 20 63 6c 61 73 73  rt</a>.<li class
0440: 3d 27 64 65 73 6b 74 6f 70 6f 6e 6c 79 27 3e 3c  ='desktoponly'><
0450: 61 20 68 72 65 66 3d 22 70 72 6f 73 75 70 70 6f  a href="prosuppo
0460: 72 74 2e 68 74 6d 6c 22 3e 50 75 72 63 68 61 73  rt.html">Purchas
0470: 65 3c 2f 61 3e 0a 3c 6c 69 20 63 6c 61 73 73 3d  e</a>.<li class=
0480: 27 73 65 61 72 63 68 27 20 69 64 3d 27 73 65 61  'search' id='sea
0490: 72 63 68 5f 6d 65 6e 75 62 75 74 74 6f 6e 27 3e  rch_menubutton'>
04a0: 0a 3c 61 20 68 72 65 66 3d 22 6a 61 76 61 73 63  .<a href="javasc
04b0: 72 69 70 74 3a 76 6f 69 64 28 30 29 22 20 6f 6e  ript:void(0)" on
04c0: 63 6c 69 63 6b 3d 27 74 6f 67 67 6c 65 5f 73 65  click='toggle_se
04d0: 61 72 63 68 28 29 27 3e 53 65 61 72 63 68 3c 2f  arch()'>Search</
04e0: 61 3e 0a 3c 2f 75 6c 3e 0a 3c 2f 64 69 76 3e 0a  a>.</ul>.</div>.
04f0: 3c 64 69 76 20 63 6c 61 73 73 3d 22 6d 65 6e 75  <div class="menu
0500: 20 73 75 62 6d 65 6e 75 22 20 69 64 3d 22 73 75   submenu" id="su
0510: 62 6d 65 6e 75 22 3e 0a 3c 75 6c 3e 0a 3c 6c 69  bmenu">.<ul>.<li
0520: 3e 3c 61 20 68 72 65 66 3d 27 61 62 6f 75 74 2e  ><a href='about.
0530: 68 74 6d 6c 27 3e 41 62 6f 75 74 3c 2f 61 3e 0a  html'>About</a>.
0540: 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 27 64 6f 63  <li><a href='doc
0550: 73 2e 68 74 6d 6c 27 3e 44 6f 63 75 6d 65 6e 74  s.html'>Document
0560: 61 74 69 6f 6e 3c 2f 61 3e 0a 3c 6c 69 3e 3c 61  ation</a>.<li><a
0570: 20 68 72 65 66 3d 27 64 6f 77 6e 6c 6f 61 64 2e   href='download.
0580: 68 74 6d 6c 27 3e 44 6f 77 6e 6c 6f 61 64 3c 2f  html'>Download</
0590: 61 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 27  a>.<li><a href='
05a0: 73 75 70 70 6f 72 74 2e 68 74 6d 6c 27 3e 53 75  support.html'>Su
05b0: 70 70 6f 72 74 3c 2f 61 3e 0a 3c 6c 69 3e 3c 61  pport</a>.<li><a
05c0: 20 68 72 65 66 3d 27 70 72 6f 73 75 70 70 6f 72   href='prosuppor
05d0: 74 2e 68 74 6d 6c 27 3e 50 75 72 63 68 61 73 65  t.html'>Purchase
05e0: 3c 2f 61 3e 0a 3c 2f 75 6c 3e 0a 3c 2f 64 69 76  </a>.</ul>.</div
05f0: 3e 0a 3c 64 69 76 20 63 6c 61 73 73 3d 22 73 65  >.<div class="se
0600: 61 72 63 68 6d 65 6e 75 22 20 69 64 3d 22 73 65  archmenu" id="se
0610: 61 72 63 68 6d 65 6e 75 22 3e 0a 3c 66 6f 72 6d  archmenu">.<form
0620: 20 6d 65 74 68 6f 64 3d 22 47 45 54 22 20 61 63   method="GET" ac
0630: 74 69 6f 6e 3d 22 73 65 61 72 63 68 22 3e 0a 3c  tion="search">.<
0640: 73 65 6c 65 63 74 20 6e 61 6d 65 3d 22 73 22 20  select name="s" 
0650: 69 64 3d 22 73 65 61 72 63 68 74 79 70 65 22 3e  id="searchtype">
0660: 0a 3c 6f 70 74 69 6f 6e 20 76 61 6c 75 65 3d 22  .<option value="
0670: 64 22 3e 53 65 61 72 63 68 20 44 6f 63 75 6d 65  d">Search Docume
0680: 6e 74 61 74 69 6f 6e 3c 2f 6f 70 74 69 6f 6e 3e  ntation</option>
0690: 0a 3c 6f 70 74 69 6f 6e 20 76 61 6c 75 65 3d 22  .<option value="
06a0: 63 22 3e 53 65 61 72 63 68 20 43 68 61 6e 67 65  c">Search Change
06b0: 6c 6f 67 3c 2f 6f 70 74 69 6f 6e 3e 0a 3c 2f 73  log</option>.</s
06c0: 65 6c 65 63 74 3e 0a 3c 69 6e 70 75 74 20 74 79  elect>.<input ty
06d0: 70 65 3d 22 74 65 78 74 22 20 6e 61 6d 65 3d 22  pe="text" name="
06e0: 71 22 20 69 64 3d 22 73 65 61 72 63 68 62 6f 78  q" id="searchbox
06f0: 22 20 76 61 6c 75 65 3d 22 22 3e 0a 3c 69 6e 70  " value="">.<inp
0700: 75 74 20 74 79 70 65 3d 22 73 75 62 6d 69 74 22  ut type="submit"
0710: 20 76 61 6c 75 65 3d 22 47 6f 22 3e 0a 3c 2f 66   value="Go">.</f
0720: 6f 72 6d 3e 0a 3c 2f 64 69 76 3e 0a 3c 2f 64 69  orm>.</div>.</di
0730: 76 3e 0a 3c 73 63 72 69 70 74 3e 0a 66 75 6e 63  v>.<script>.func
0740: 74 69 6f 6e 20 74 6f 67 67 6c 65 5f 64 69 76 28  tion toggle_div(
0750: 6e 6d 29 20 7b 0a 76 61 72 20 77 20 3d 20 64 6f  nm) {.var w = do
0760: 63 75 6d 65 6e 74 2e 67 65 74 45 6c 65 6d 65 6e  cument.getElemen
0770: 74 42 79 49 64 28 6e 6d 29 3b 0a 69 66 28 20 77  tById(nm);.if( w
0780: 2e 73 74 79 6c 65 2e 64 69 73 70 6c 61 79 3d 3d  .style.display==
0790: 22 62 6c 6f 63 6b 22 20 29 7b 0a 77 2e 73 74 79  "block" ){.w.sty
07a0: 6c 65 2e 64 69 73 70 6c 61 79 20 3d 20 22 6e 6f  le.display = "no
07b0: 6e 65 22 3b 0a 7d 65 6c 73 65 7b 0a 77 2e 73 74  ne";.}else{.w.st
07c0: 79 6c 65 2e 64 69 73 70 6c 61 79 20 3d 20 22 62  yle.display = "b
07d0: 6c 6f 63 6b 22 3b 0a 7d 0a 7d 0a 66 75 6e 63 74  lock";.}.}.funct
07e0: 69 6f 6e 20 74 6f 67 67 6c 65 5f 73 65 61 72 63  ion toggle_searc
07f0: 68 28 29 20 7b 0a 76 61 72 20 77 20 3d 20 64 6f  h() {.var w = do
0800: 63 75 6d 65 6e 74 2e 67 65 74 45 6c 65 6d 65 6e  cument.getElemen
0810: 74 42 79 49 64 28 22 73 65 61 72 63 68 6d 65 6e  tById("searchmen
0820: 75 22 29 3b 0a 69 66 28 20 77 2e 73 74 79 6c 65  u");.if( w.style
0830: 2e 64 69 73 70 6c 61 79 3d 3d 22 62 6c 6f 63 6b  .display=="block
0840: 22 20 29 7b 0a 77 2e 73 74 79 6c 65 2e 64 69 73  " ){.w.style.dis
0850: 70 6c 61 79 20 3d 20 22 6e 6f 6e 65 22 3b 0a 7d  play = "none";.}
0860: 20 65 6c 73 65 20 7b 0a 77 2e 73 74 79 6c 65 2e   else {.w.style.
0870: 64 69 73 70 6c 61 79 20 3d 20 22 62 6c 6f 63 6b  display = "block
0880: 22 3b 0a 73 65 74 54 69 6d 65 6f 75 74 28 66 75  ";.setTimeout(fu
0890: 6e 63 74 69 6f 6e 28 29 7b 0a 64 6f 63 75 6d 65  nction(){.docume
08a0: 6e 74 2e 67 65 74 45 6c 65 6d 65 6e 74 42 79 49  nt.getElementByI
08b0: 64 28 22 73 65 61 72 63 68 62 6f 78 22 29 2e 66  d("searchbox").f
08c0: 6f 63 75 73 28 29 0a 7d 2c 20 33 30 29 3b 0a 7d  ocus().}, 30);.}
08d0: 0a 7d 0a 66 75 6e 63 74 69 6f 6e 20 64 69 76 5f  .}.function div_
08e0: 6f 66 66 28 6e 6d 29 7b 64 6f 63 75 6d 65 6e 74  off(nm){document
08f0: 2e 67 65 74 45 6c 65 6d 65 6e 74 42 79 49 64 28  .getElementById(
0900: 6e 6d 29 2e 73 74 79 6c 65 2e 64 69 73 70 6c 61  nm).style.displa
0910: 79 3d 22 6e 6f 6e 65 22 3b 7d 0a 77 69 6e 64 6f  y="none";}.windo
0920: 77 2e 6f 6e 62 65 66 6f 72 65 75 6e 6c 6f 61 64  w.onbeforeunload
0930: 20 3d 20 66 75 6e 63 74 69 6f 6e 28 65 29 7b 64   = function(e){d
0940: 69 76 5f 6f 66 66 28 22 73 75 62 6d 65 6e 75 22  iv_off("submenu"
0950: 29 3b 7d 0a 2f 2a 20 44 69 73 61 62 6c 65 20 74  );}./* Disable t
0960: 68 65 20 53 65 61 72 63 68 20 66 65 61 74 75 72  he Search featur
0970: 65 20 69 66 20 77 65 20 61 72 65 20 6e 6f 74 20  e if we are not 
0980: 6f 70 65 72 61 74 69 6e 67 20 66 72 6f 6d 20 43  operating from C
0990: 47 49 2c 20 73 69 6e 63 65 20 2a 2f 0a 2f 2a 20  GI, since */./* 
09a0: 53 65 61 72 63 68 20 69 73 20 61 63 63 6f 6d 70  Search is accomp
09b0: 6c 69 73 68 65 64 20 75 73 69 6e 67 20 43 47 49  lished using CGI
09c0: 20 61 6e 64 20 77 69 6c 6c 20 6e 6f 74 20 77 6f   and will not wo
09d0: 72 6b 20 77 69 74 68 6f 75 74 20 69 74 2e 20 2a  rk without it. *
09e0: 2f 0a 69 66 28 20 21 6c 6f 63 61 74 69 6f 6e 2e  /.if( !location.
09f0: 6f 72 69 67 69 6e 2e 6d 61 74 63 68 20 7c 7c 20  origin.match || 
0a00: 21 6c 6f 63 61 74 69 6f 6e 2e 6f 72 69 67 69 6e  !location.origin
0a10: 2e 6d 61 74 63 68 28 2f 68 74 74 70 2f 29 20 29  .match(/http/) )
0a20: 7b 0a 64 6f 63 75 6d 65 6e 74 2e 67 65 74 45 6c  {.document.getEl
0a30: 65 6d 65 6e 74 42 79 49 64 28 22 73 65 61 72 63  ementById("searc
0a40: 68 5f 6d 65 6e 75 62 75 74 74 6f 6e 22 29 2e 73  h_menubutton").s
0a50: 74 79 6c 65 2e 64 69 73 70 6c 61 79 20 3d 20 22  tyle.display = "
0a60: 6e 6f 6e 65 22 3b 0a 7d 0a 2f 2a 20 55 73 65 64  none";.}./* Used
0a70: 20 62 79 20 74 68 65 20 48 69 64 65 2f 53 68 6f   by the Hide/Sho
0a80: 77 20 62 75 74 74 6f 6e 20 62 65 73 69 64 65 20  w button beside 
0a90: 73 79 6e 74 61 78 20 64 69 61 67 72 61 6d 73 2c  syntax diagrams,
0aa0: 20 74 6f 20 74 6f 67 67 6c 65 20 74 68 65 20 2a   to toggle the *
0ab0: 2f 0a 66 75 6e 63 74 69 6f 6e 20 68 69 64 65 6f  /.function hideo
0ac0: 72 73 68 6f 77 28 62 74 6e 2c 6f 62 6a 29 7b 0a  rshow(btn,obj){.
0ad0: 76 61 72 20 78 20 3d 20 64 6f 63 75 6d 65 6e 74  var x = document
0ae0: 2e 67 65 74 45 6c 65 6d 65 6e 74 42 79 49 64 28  .getElementById(
0af0: 6f 62 6a 29 3b 0a 76 61 72 20 62 20 3d 20 64 6f  obj);.var b = do
0b00: 63 75 6d 65 6e 74 2e 67 65 74 45 6c 65 6d 65 6e  cument.getElemen
0b10: 74 42 79 49 64 28 62 74 6e 29 3b 0a 69 66 28 20  tById(btn);.if( 
0b20: 78 2e 73 74 79 6c 65 2e 64 69 73 70 6c 61 79 21  x.style.display!
0b30: 3d 27 6e 6f 6e 65 27 20 29 7b 0a 78 2e 73 74 79  ='none' ){.x.sty
0b40: 6c 65 2e 64 69 73 70 6c 61 79 20 3d 20 27 6e 6f  le.display = 'no
0b50: 6e 65 27 3b 0a 62 2e 69 6e 6e 65 72 48 54 4d 4c  ne';.b.innerHTML
0b60: 3d 27 73 68 6f 77 27 3b 0a 7d 65 6c 73 65 7b 0a  ='show';.}else{.
0b70: 78 2e 73 74 79 6c 65 2e 64 69 73 70 6c 61 79 20  x.style.display 
0b80: 3d 20 27 27 3b 0a 62 2e 69 6e 6e 65 72 48 54 4d  = '';.b.innerHTM
0b90: 4c 3d 27 68 69 64 65 27 3b 0a 7d 0a 72 65 74 75  L='hide';.}.retu
0ba0: 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 3c 2f 73 63  rn false;.}.</sc
0bb0: 72 69 70 74 3e 0a 3c 2f 64 69 76 3e 0a 3c 64 69  ript>.</div>.<di
0bc0: 76 20 63 6c 61 73 73 3d 6e 6f 73 65 61 72 63 68  v class=nosearch
0bd0: 3e 3c 68 31 20 61 6c 69 67 6e 3d 22 63 65 6e 74  ><h1 align="cent
0be0: 65 72 22 3e 53 51 4c 20 41 73 20 55 6e 64 65 72  er">SQL As Under
0bf0: 73 74 6f 6f 64 20 42 79 20 53 51 4c 69 74 65 3c  stood By SQLite<
0c00: 2f 68 31 3e 3c 70 3e 3c 61 20 68 72 65 66 3d 22  /h1><p><a href="
0c10: 6c 61 6e 67 2e 68 74 6d 6c 22 3e 5b 54 6f 70 5d  lang.html">[Top]
0c20: 3c 2f 61 3e 3c 2f 70 3e 3c 68 32 3e 56 41 43 55  </a></p><h2>VACU
0c30: 55 4d 3c 2f 68 32 3e 3c 2f 64 69 76 3e 3c 70 3e  UM</h2></div><p>
0c40: 3c 62 3e 3c 61 20 68 72 65 66 3d 22 73 79 6e 74  <b><a href="synt
0c50: 61 78 2f 76 61 63 75 75 6d 2d 73 74 6d 74 2e 68  ax/vacuum-stmt.h
0c60: 74 6d 6c 22 3e 76 61 63 75 75 6d 2d 73 74 6d 74  tml">vacuum-stmt
0c70: 3a 3c 2f 61 3e 3c 2f 62 3e 0a 3c 62 75 74 74 6f  :</a></b>.<butto
0c80: 6e 20 69 64 3d 27 78 31 39 39 31 27 20 6f 6e 63  n id='x1991' onc
0c90: 6c 69 63 6b 3d 27 68 69 64 65 6f 72 73 68 6f 77  lick='hideorshow
0ca0: 28 22 78 31 39 39 31 22 2c 22 78 31 39 39 32 22  ("x1991","x1992"
0cb0: 29 27 3e 68 69 64 65 3c 2f 62 75 74 74 6f 6e 3e  )'>hide</button>
0cc0: 3c 2f 70 3e 0a 20 3c 64 69 76 20 69 64 3d 27 78  </p>. <div id='x
0cd0: 31 39 39 32 27 20 63 6c 61 73 73 3d 27 69 6d 67  1992' class='img
0ce0: 63 6f 6e 74 61 69 6e 65 72 27 3e 0a 20 3c 69 6d  container'>. <im
0cf0: 67 20 61 6c 74 3d 22 73 79 6e 74 61 78 20 64 69  g alt="syntax di
0d00: 61 67 72 61 6d 20 76 61 63 75 75 6d 2d 73 74 6d  agram vacuum-stm
0d10: 74 22 20 73 72 63 3d 22 69 6d 61 67 65 73 2f 73  t" src="images/s
0d20: 79 6e 74 61 78 2f 76 61 63 75 75 6d 2d 73 74 6d  yntax/vacuum-stm
0d30: 74 2e 67 69 66 22 20 2f 3e 0a 3c 2f 64 69 76 3e  t.gif" />.</div>
0d40: 0a 0a 0a 3c 70 3e 0a 20 20 54 68 65 20 56 41 43  ...<p>.  The VAC
0d50: 55 55 4d 20 63 6f 6d 6d 61 6e 64 20 72 65 62 75  UUM command rebu
0d60: 69 6c 64 73 20 74 68 65 20 64 61 74 61 62 61 73  ilds the databas
0d70: 65 20 66 69 6c 65 2c 20 72 65 70 61 63 6b 69 6e  e file, repackin
0d80: 67 20 69 74 20 69 6e 74 6f 20 61 20 6d 69 6e 69  g it into a mini
0d90: 6d 61 6c 0a 20 20 61 6d 6f 75 6e 74 20 6f 66 20  mal.  amount of 
0da0: 64 69 73 6b 20 73 70 61 63 65 2e 20 54 68 65 72  disk space. Ther
0db0: 65 20 61 72 65 20 73 65 76 65 72 61 6c 20 0a 20  e are several . 
0dc0: 20 72 65 61 73 6f 6e 73 20 61 6e 20 61 70 70 6c   reasons an appl
0dd0: 69 63 61 74 69 6f 6e 20 6d 69 67 68 74 20 64 6f  ication might do
0de0: 20 74 68 69 73 3a 0a 0a 3c 75 6c 3e 0a 20 20 3c   this:..<ul>.  <
0df0: 6c 69 3e 20 3c 70 3e 20 55 6e 6c 65 73 73 20 53  li> <p> Unless S
0e00: 51 4c 69 74 65 20 69 73 20 72 75 6e 6e 69 6e 67  QLite is running
0e10: 20 69 6e 20 22 61 75 74 6f 5f 76 61 63 75 75 6d   in "auto_vacuum
0e20: 3d 46 55 4c 4c 22 20 6d 6f 64 65 2c 20 77 68 65  =FULL" mode, whe
0e30: 6e 20 61 20 6c 61 72 67 65 0a 20 20 20 20 20 61  n a large.     a
0e40: 6d 6f 75 6e 74 20 6f 66 20 64 61 74 61 20 69 73  mount of data is
0e50: 20 64 65 6c 65 74 65 64 20 66 72 6f 6d 20 74 68   deleted from th
0e60: 65 20 64 61 74 61 62 61 73 65 20 66 69 6c 65 20  e database file 
0e70: 69 74 20 6c 65 61 76 65 73 20 62 65 68 69 6e 64  it leaves behind
0e80: 20 65 6d 70 74 79 0a 20 20 20 20 20 73 70 61 63   empty.     spac
0e90: 65 2c 20 6f 72 20 22 66 72 65 65 22 20 64 61 74  e, or "free" dat
0ea0: 61 62 61 73 65 20 70 61 67 65 73 2e 20 54 68 69  abase pages. Thi
0eb0: 73 20 6d 65 61 6e 73 20 74 68 65 20 64 61 74 61  s means the data
0ec0: 62 61 73 65 20 66 69 6c 65 20 6d 69 67 68 74 0a  base file might.
0ed0: 20 20 20 20 20 62 65 20 6c 61 72 67 65 72 20 74       be larger t
0ee0: 68 61 6e 20 73 74 72 69 63 74 6c 79 20 6e 65 63  han strictly nec
0ef0: 65 73 73 61 72 79 2e 20 52 75 6e 6e 69 6e 67 20  essary. Running 
0f00: 56 41 43 55 55 4d 20 74 6f 20 72 65 62 75 69 6c  VACUUM to rebuil
0f10: 64 20 74 68 65 20 0a 20 20 20 20 20 64 61 74 61  d the .     data
0f20: 62 61 73 65 20 72 65 63 6c 61 69 6d 73 20 74 68  base reclaims th
0f30: 69 73 20 73 70 61 63 65 20 61 6e 64 20 72 65 64  is space and red
0f40: 75 63 65 73 20 74 68 65 20 73 69 7a 65 20 6f 66  uces the size of
0f50: 20 74 68 65 20 64 61 74 61 62 61 73 65 20 66 69   the database fi
0f60: 6c 65 2e 0a 0a 20 20 3c 6c 69 3e 20 3c 70 3e 20  le...  <li> <p> 
0f70: 46 72 65 71 75 65 6e 74 20 69 6e 73 65 72 74 73  Frequent inserts
0f80: 2c 20 75 70 64 61 74 65 73 2c 20 61 6e 64 20 64  , updates, and d
0f90: 65 6c 65 74 65 73 20 63 61 6e 20 63 61 75 73 65  eletes can cause
0fa0: 20 74 68 65 20 64 61 74 61 62 61 73 65 20 66 69   the database fi
0fb0: 6c 65 0a 20 20 20 20 20 74 6f 20 62 65 63 6f 6d  le.     to becom
0fc0: 65 20 66 72 61 67 6d 65 6e 74 65 64 20 2d 20 77  e fragmented - w
0fd0: 68 65 72 65 20 64 61 74 61 20 66 6f 72 20 61 20  here data for a 
0fe0: 73 69 6e 67 6c 65 20 74 61 62 6c 65 20 6f 72 20  single table or 
0ff0: 69 6e 64 65 78 20 69 73 20 73 63 61 74 74 65 72  index is scatter
1000: 65 64 20 0a 20 20 20 20 20 61 72 6f 75 6e 64 20  ed .     around 
1010: 74 68 65 20 64 61 74 61 62 61 73 65 20 66 69 6c  the database fil
1020: 65 2e 20 52 75 6e 6e 69 6e 67 20 56 41 43 55 55  e. Running VACUU
1030: 4d 20 65 6e 73 75 72 65 73 20 74 68 61 74 20 65  M ensures that e
1040: 61 63 68 20 74 61 62 6c 65 20 61 6e 64 0a 20 20  ach table and.  
1050: 20 20 20 69 6e 64 65 78 20 69 73 20 6c 61 72 67     index is larg
1060: 65 6c 79 20 73 74 6f 72 65 64 20 63 6f 6e 74 69  ely stored conti
1070: 67 75 6f 75 73 6c 79 20 77 69 74 68 69 6e 20 74  guously within t
1080: 68 65 20 64 61 74 61 62 61 73 65 20 66 69 6c 65  he database file
1090: 2e 20 49 6e 20 73 6f 6d 65 0a 20 20 20 20 20 63  . In some.     c
10a0: 61 73 65 73 2c 20 56 41 43 55 55 4d 20 6d 61 79  ases, VACUUM may
10b0: 20 61 6c 73 6f 20 72 65 64 75 63 65 20 74 68 65   also reduce the
10c0: 20 6e 75 6d 62 65 72 20 6f 66 20 70 61 72 74 69   number of parti
10d0: 61 6c 6c 79 20 66 69 6c 6c 65 64 20 70 61 67 65  ally filled page
10e0: 73 20 69 6e 0a 20 20 20 20 20 74 68 65 20 64 61  s in.     the da
10f0: 74 61 62 61 73 65 2c 20 72 65 64 75 63 69 6e 67  tabase, reducing
1100: 20 74 68 65 20 73 69 7a 65 20 6f 66 20 74 68 65   the size of the
1110: 20 64 61 74 61 62 61 73 65 20 66 69 6c 65 20 66   database file f
1120: 75 72 74 68 65 72 2e 0a 0a 20 20 3c 6c 69 3e 20  urther...  <li> 
1130: 3c 70 3e 20 57 68 65 6e 20 63 6f 6e 74 65 6e 74  <p> When content
1140: 20 69 73 20 64 65 6c 65 74 65 64 20 66 72 6f 6d   is deleted from
1150: 20 61 6e 20 53 51 4c 69 74 65 20 64 61 74 61 62   an SQLite datab
1160: 61 73 65 2c 20 74 68 65 20 63 6f 6e 74 65 6e 74  ase, the content
1170: 20 69 73 20 6e 6f 74 0a 20 20 20 20 20 75 73 75   is not.     usu
1180: 61 6c 6c 79 20 65 72 61 73 65 64 20 62 75 74 20  ally erased but 
1190: 72 61 74 68 65 72 20 74 68 65 20 73 70 61 63 65  rather the space
11a0: 20 75 73 65 64 20 74 6f 20 68 6f 6c 64 20 74 68   used to hold th
11b0: 65 20 63 6f 6e 74 65 6e 74 20 69 73 20 6d 61 72  e content is mar
11c0: 6b 65 64 20 61 73 0a 20 20 20 20 20 62 65 69 6e  ked as.     bein
11d0: 67 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20  g available for 
11e0: 72 65 75 73 65 2e 20 20 54 68 69 73 20 63 61 6e  reuse.  This can
11f0: 20 61 6c 6c 6f 77 20 64 65 6c 65 74 65 64 20 63   allow deleted c
1200: 6f 6e 74 65 6e 74 20 74 6f 20 62 65 20 72 65 63  ontent to be rec
1210: 6f 76 65 72 65 64 0a 20 20 20 20 20 62 79 20 61  overed.     by a
1220: 20 68 61 63 6b 65 72 20 6f 72 20 62 79 20 66 6f   hacker or by fo
1230: 72 65 6e 73 69 63 20 61 6e 61 6c 79 73 69 73 2e  rensic analysis.
1240: 20 20 52 75 6e 6e 69 6e 67 20 56 41 43 55 55 4d    Running VACUUM
1250: 20 77 69 6c 6c 20 63 6c 65 61 6e 20 74 68 65 20   will clean the 
1260: 64 61 74 61 62 61 73 65 0a 20 20 20 20 20 6f 66  database.     of
1270: 20 61 6c 6c 20 74 72 61 63 65 73 20 6f 66 20 64   all traces of d
1280: 65 6c 65 74 65 64 20 63 6f 6e 74 65 6e 74 2c 20  eleted content, 
1290: 74 68 75 73 20 70 72 65 76 65 6e 74 69 6e 67 20  thus preventing 
12a0: 61 6e 20 61 64 76 65 72 73 61 72 79 20 66 72 6f  an adversary fro
12b0: 6d 20 72 65 63 6f 76 65 72 69 6e 67 0a 20 20 20  m recovering.   
12c0: 20 20 64 65 6c 65 74 65 64 20 63 6f 6e 74 65 6e    deleted conten
12d0: 74 2e 20 20 55 73 69 6e 67 20 56 41 43 55 55 4d  t.  Using VACUUM
12e0: 20 69 6e 20 74 68 69 73 20 77 61 79 20 69 73 20   in this way is 
12f0: 61 6e 20 61 6c 74 65 72 6e 61 74 69 76 65 20 74  an alternative t
1300: 6f 20 73 65 74 74 69 6e 67 0a 20 20 20 20 20 3c  o setting.     <
1310: 61 20 68 72 65 66 3d 22 70 72 61 67 6d 61 2e 68  a href="pragma.h
1320: 74 6d 6c 23 70 72 61 67 6d 61 5f 73 65 63 75 72  tml#pragma_secur
1330: 65 5f 64 65 6c 65 74 65 22 3e 50 52 41 47 4d 41  e_delete">PRAGMA
1340: 20 73 65 63 75 72 65 5f 64 65 6c 65 74 65 3d 4f   secure_delete=O
1350: 4e 3c 2f 61 3e 2e 20 0a 0a 20 20 3c 6c 69 3e 20  N</a>. ..  <li> 
1360: 3c 70 3e 20 4e 6f 72 6d 61 6c 6c 79 2c 20 74 68  <p> Normally, th
1370: 65 20 64 61 74 61 62 61 73 65 20 3c 61 20 68 72  e database <a hr
1380: 65 66 3d 22 70 72 61 67 6d 61 2e 68 74 6d 6c 23  ef="pragma.html#
1390: 70 72 61 67 6d 61 5f 70 61 67 65 5f 73 69 7a 65  pragma_page_size
13a0: 22 3e 70 61 67 65 5f 73 69 7a 65 3c 2f 61 3e 20  ">page_size</a> 
13b0: 61 6e 64 20 77 68 65 74 68 65 72 20 6f 72 20 6e  and whether or n
13c0: 6f 74 20 74 68 65 20 64 61 74 61 62 61 73 65 0a  ot the database.
13d0: 20 20 20 20 20 73 75 70 70 6f 72 74 73 20 3c 61       supports <a
13e0: 20 68 72 65 66 3d 22 70 72 61 67 6d 61 2e 68 74   href="pragma.ht
13f0: 6d 6c 23 70 72 61 67 6d 61 5f 61 75 74 6f 5f 76  ml#pragma_auto_v
1400: 61 63 75 75 6d 22 3e 61 75 74 6f 5f 76 61 63 75  acuum">auto_vacu
1410: 75 6d 3c 2f 61 3e 20 6d 75 73 74 20 62 65 20 63  um</a> must be c
1420: 6f 6e 66 69 67 75 72 65 64 20 62 65 66 6f 72 65  onfigured before
1430: 20 74 68 65 20 64 61 74 61 62 61 73 65 20 66 69   the database fi
1440: 6c 65 20 69 73 0a 20 20 20 20 20 61 63 74 75 61  le is.     actua
1450: 6c 6c 79 20 63 72 65 61 74 65 64 2e 20 48 6f 77  lly created. How
1460: 65 76 65 72 2c 20 77 68 65 6e 20 6e 6f 74 20 69  ever, when not i
1470: 6e 20 3c 61 20 68 72 65 66 3d 22 77 61 6c 2e 68  n <a href="wal.h
1480: 74 6d 6c 22 3e 77 72 69 74 65 2d 61 68 65 61 64  tml">write-ahead
1490: 20 6c 6f 67 3c 2f 61 3e 20 6d 6f 64 65 2c 20 74   log</a> mode, t
14a0: 68 65 20 0a 20 20 20 20 20 3c 61 20 68 72 65 66  he .     <a href
14b0: 3d 22 70 72 61 67 6d 61 2e 68 74 6d 6c 23 70 72  ="pragma.html#pr
14c0: 61 67 6d 61 5f 70 61 67 65 5f 73 69 7a 65 22 3e  agma_page_size">
14d0: 70 61 67 65 5f 73 69 7a 65 3c 2f 61 3e 20 61 6e  page_size</a> an
14e0: 64 2f 6f 72 20 3c 61 20 68 72 65 66 3d 22 70 72  d/or <a href="pr
14f0: 61 67 6d 61 2e 68 74 6d 6c 23 70 72 61 67 6d 61  agma.html#pragma
1500: 5f 61 75 74 6f 5f 76 61 63 75 75 6d 22 3e 61 75  _auto_vacuum">au
1510: 74 6f 5f 76 61 63 75 75 6d 3c 2f 61 3e 20 70 72  to_vacuum</a> pr
1520: 6f 70 65 72 74 69 65 73 20 6f 66 20 61 6e 20 65  operties of an e
1530: 78 69 73 74 69 6e 67 20 64 61 74 61 62 61 73 65  xisting database
1540: 20 6d 61 79 20 62 65 0a 20 20 20 20 20 63 68 61   may be.     cha
1550: 6e 67 65 64 20 62 79 20 75 73 69 6e 67 20 74 68  nged by using th
1560: 65 20 3c 61 20 68 72 65 66 3d 22 70 72 61 67 6d  e <a href="pragm
1570: 61 2e 68 74 6d 6c 23 70 72 61 67 6d 61 5f 70 61  a.html#pragma_pa
1580: 67 65 5f 73 69 7a 65 22 3e 70 61 67 65 5f 73 69  ge_size">page_si
1590: 7a 65 3c 2f 61 3e 20 20 61 6e 64 2f 6f 72 20 0a  ze</a>  and/or .
15a0: 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 70 72       <a href="pr
15b0: 61 67 6d 61 2e 68 74 6d 6c 23 70 72 61 67 6d 61  agma.html#pragma
15c0: 5f 61 75 74 6f 5f 76 61 63 75 75 6d 22 3e 70 72  _auto_vacuum">pr
15d0: 61 67 6d 61 20 61 75 74 6f 5f 76 61 63 75 75 6d  agma auto_vacuum
15e0: 3c 2f 61 3e 20 70 72 61 67 6d 61 73 20 61 6e 64  </a> pragmas and
15f0: 20 74 68 65 6e 20 69 6d 6d 65 64 69 61 74 65 6c   then immediatel
1600: 79 20 56 41 43 55 55 4d 69 6e 67 0a 20 20 20 20  y VACUUMing.    
1610: 20 74 68 65 20 64 61 74 61 62 61 73 65 2e 20 57   the database. W
1620: 68 65 6e 20 69 6e 20 3c 61 20 68 72 65 66 3d 22  hen in <a href="
1630: 77 61 6c 2e 68 74 6d 6c 22 3e 77 72 69 74 65 2d  wal.html">write-
1640: 61 68 65 61 64 20 6c 6f 67 3c 2f 61 3e 20 6d 6f  ahead log</a> mo
1650: 64 65 2c 20 6f 6e 6c 79 20 74 68 65 20 3c 61 20  de, only the <a 
1660: 68 72 65 66 3d 22 70 72 61 67 6d 61 2e 68 74 6d  href="pragma.htm
1670: 6c 23 70 72 61 67 6d 61 5f 61 75 74 6f 5f 76 61  l#pragma_auto_va
1680: 63 75 75 6d 22 3e 61 75 74 6f 5f 76 61 63 75 75  cuum">auto_vacuu
1690: 6d 3c 2f 61 3e 0a 20 20 20 20 20 73 75 70 70 6f  m</a>.     suppo
16a0: 72 74 20 70 72 6f 70 65 72 74 79 20 63 61 6e 20  rt property can 
16b0: 62 65 20 63 68 61 6e 67 65 64 20 75 73 69 6e 67  be changed using
16c0: 20 56 41 43 55 55 4d 2e 0a 3c 2f 75 6c 3e 0a 0a   VACUUM..</ul>..
16d0: 3c 70 3e 42 79 20 64 65 66 61 75 6c 74 2c 20 56  <p>By default, V
16e0: 41 43 55 55 4d 20 6f 6e 6c 79 20 77 6f 72 6b 73  ACUUM only works
16f0: 20 6f 6e 6c 79 20 6f 6e 20 74 68 65 20 6d 61 69   only on the mai
1700: 6e 20 64 61 74 61 62 61 73 65 2e 0a 3c 61 20 68  n database..<a h
1710: 72 65 66 3d 22 6c 61 6e 67 5f 61 74 74 61 63 68  ref="lang_attach
1720: 2e 68 74 6d 6c 22 3e 41 74 74 61 63 68 65 64 20  .html">Attached 
1730: 64 61 74 61 62 61 73 65 73 3c 2f 61 3e 20 63 61  databases</a> ca
1740: 6e 20 62 65 20 76 61 63 75 75 6d 65 64 20 62 79  n be vacuumed by
1750: 20 61 70 70 65 6e 64 69 6e 67 20 74 68 65 20 61   appending the a
1760: 70 70 72 6f 70 72 69 61 74 65 0a 3c 73 70 61 6e  ppropriate.<span
1770: 20 63 6c 61 73 73 3d 27 79 79 74 65 72 6d 27 3e   class='yyterm'>
1780: 73 63 68 65 6d 61 2d 6e 61 6d 65 3c 2f 73 70 61  schema-name</spa
1790: 6e 3e 20 74 6f 20 74 68 65 20 56 41 43 55 55 4d  n> to the VACUUM
17a0: 20 73 74 61 74 65 6d 65 6e 74 2e 0a 0a 3c 70 3e   statement...<p>
17b0: 3c 62 3e 43 6f 6d 70 61 74 69 62 69 6c 69 74 79  <b>Compatibility
17c0: 20 57 61 72 6e 69 6e 67 3a 3c 2f 62 3e 20 54 68   Warning:</b> Th
17d0: 65 20 61 62 69 6c 69 74 79 20 74 6f 20 76 61 63  e ability to vac
17e0: 75 75 6d 20 61 74 74 61 63 68 65 64 20 64 61 74  uum attached dat
17f0: 61 62 61 73 65 73 20 77 61 73 0a 61 64 64 65 64  abases was.added
1800: 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 72 65 6c   in <a href="rel
1810: 65 61 73 65 6c 6f 67 2f 33 5f 31 35 5f 30 2e 68  easelog/3_15_0.h
1820: 74 6d 6c 22 3e 76 65 72 73 69 6f 6e 20 33 2e 31  tml">version 3.1
1830: 35 2e 30 3c 2f 61 3e 20 28 32 30 31 36 2d 31 30  5.0</a> (2016-10
1840: 2d 31 34 29 2e 20 20 50 72 69 6f 72 20 74 6f 20  -14).  Prior to 
1850: 74 68 61 74 2c 20 61 20 0a 3c 73 70 61 6e 20 63  that, a .<span c
1860: 6c 61 73 73 3d 27 79 79 74 65 72 6d 27 3e 73 63  lass='yyterm'>sc
1870: 68 65 6d 61 2d 6e 61 6d 65 3c 2f 73 70 61 6e 3e  hema-name</span>
1880: 20 61 64 64 65 64 20 74 6f 20 74 68 65 0a 56 41   added to the.VA
1890: 43 55 55 4d 20 73 74 61 74 65 6d 65 6e 74 20 77  CUUM statement w
18a0: 6f 75 6c 64 20 62 65 20 73 69 6c 65 6e 74 6c 79  ould be silently
18b0: 20 69 67 6e 6f 72 65 64 20 61 6e 64 20 74 68 65   ignored and the
18c0: 20 22 6d 61 69 6e 22 20 73 63 68 65 6d 61 20 77   "main" schema w
18d0: 6f 75 6c 64 20 62 65 0a 76 61 63 75 75 6d 65 64  ould be.vacuumed
18e0: 2e 3c 2f 70 3e 0a 0a 3c 61 20 6e 61 6d 65 3d 22  .</p>..<a name="
18f0: 76 61 63 75 75 6d 69 6e 74 6f 22 3e 3c 2f 61 3e  vacuuminto"></a>
1900: 0a 0a 3c 68 33 3e 56 41 43 55 55 4d 20 77 69 74  ..<h3>VACUUM wit
1910: 68 20 61 6e 20 49 4e 54 4f 20 63 6c 61 75 73 65  h an INTO clause
1920: 3c 2f 68 33 3e 0a 0a 3c 70 3e 49 66 20 74 68 65  </h3>..<p>If the
1930: 20 49 4e 54 4f 20 63 6c 61 75 73 65 20 69 73 20   INTO clause is 
1940: 69 6e 63 6c 75 64 65 64 2c 20 74 68 65 6e 20 74  included, then t
1950: 68 65 20 6f 72 69 67 69 6e 61 6c 20 64 61 74 61  he original data
1960: 62 61 73 65 20 66 69 6c 65 20 69 73 0a 75 6e 63  base file is.unc
1970: 68 61 6e 67 65 64 20 61 6e 64 20 61 20 6e 65 77  hanged and a new
1980: 20 64 61 74 61 62 61 73 65 20 69 73 20 63 72 65   database is cre
1990: 61 74 65 64 20 69 6e 20 74 68 65 20 66 69 6c 65  ated in the file
19a0: 6e 61 6d 65 20 67 69 76 65 6e 20 62 79 20 74 68  name given by th
19b0: 65 0a 61 72 67 75 6d 65 6e 74 20 74 6f 20 74 68  e.argument to th
19c0: 65 20 49 4e 54 4f 20 63 6c 61 75 73 65 2e 20 20  e INTO clause.  
19d0: 54 68 65 20 6e 65 77 20 64 61 74 61 62 61 73 65  The new database
19e0: 20 77 69 6c 6c 20 63 6f 6e 74 61 69 6e 20 74 68   will contain th
19f0: 65 20 73 61 6d 65 0a 6c 6f 67 69 63 61 6c 20 63  e same.logical c
1a00: 6f 6e 74 65 6e 74 20 61 73 20 74 68 65 20 6f 72  ontent as the or
1a10: 69 67 69 6e 61 6c 20 64 61 74 61 62 61 73 65 2c  iginal database,
1a20: 20 66 75 6c 6c 79 20 76 61 63 75 75 6d 65 64 2e   fully vacuumed.
1a30: 0a 0a 3c 70 3e 0a 54 68 65 20 56 41 43 55 55 4d  ..<p>.The VACUUM
1a40: 20 63 6f 6d 6d 61 6e 64 20 77 69 74 68 20 61 6e   command with an
1a50: 20 49 4e 54 4f 20 63 6c 61 75 73 65 20 69 73 20   INTO clause is 
1a60: 61 6e 20 61 6c 74 65 72 6e 61 74 69 76 65 20 74  an alternative t
1a70: 6f 20 74 68 65 0a 3c 61 20 68 72 65 66 3d 22 62  o the.<a href="b
1a80: 61 63 6b 75 70 2e 68 74 6d 6c 22 3e 62 61 63 6b  ackup.html">back
1a90: 75 70 20 41 50 49 3c 2f 61 3e 20 66 6f 72 20 67  up API</a> for g
1aa0: 65 6e 65 72 61 74 69 6e 67 20 62 61 63 6b 75 70  enerating backup
1ab0: 20 63 6f 70 69 65 73 20 6f 66 20 61 20 6c 69 76   copies of a liv
1ac0: 65 20 64 61 74 61 62 61 73 65 2e 0a 54 68 65 20  e database..The 
1ad0: 61 64 76 61 6e 74 61 67 65 20 6f 66 20 75 73 69  advantage of usi
1ae0: 6e 67 20 56 41 43 55 55 4d 20 49 4e 54 4f 20 69  ng VACUUM INTO i
1af0: 73 20 74 68 61 74 20 74 68 65 20 72 65 73 75 6c  s that the resul
1b00: 74 69 6e 67 20 62 61 63 6b 75 70 0a 64 61 74 61  ting backup.data
1b10: 62 61 73 65 20 69 73 20 6d 69 6e 69 6d 61 6c 20  base is minimal 
1b20: 69 6e 20 73 69 7a 65 20 61 6e 64 20 68 65 6e 63  in size and henc
1b30: 65 20 74 68 65 20 61 6d 6f 75 6e 74 20 6f 66 20  e the amount of 
1b40: 66 69 6c 65 73 79 73 74 65 6d 0a 49 2f 4f 20 6d  filesystem.I/O m
1b50: 61 79 20 62 65 20 72 65 64 75 63 65 64 2e 20 20  ay be reduced.  
1b60: 41 6c 73 6f 2c 20 61 6c 6c 20 64 65 6c 65 74 65  Also, all delete
1b70: 64 20 63 6f 6e 74 65 6e 74 20 69 73 20 70 75 72  d content is pur
1b80: 67 65 64 20 66 72 6f 6d 20 74 68 65 0a 62 61 63  ged from the.bac
1b90: 6b 75 70 2c 20 6c 65 61 76 69 6e 67 20 62 65 68  kup, leaving beh
1ba0: 69 6e 64 20 6e 6f 20 66 6f 72 65 6e 73 69 63 20  ind no forensic 
1bb0: 74 72 61 63 65 73 2e 20 20 4f 6e 20 74 68 65 20  traces.  On the 
1bc0: 6f 74 68 65 72 20 68 61 6e 64 2c 0a 74 68 65 20  other hand,.the 
1bd0: 3c 61 20 68 72 65 66 3d 22 62 61 63 6b 75 70 2e  <a href="backup.
1be0: 68 74 6d 6c 22 3e 62 61 63 6b 75 70 20 41 50 49  html">backup API
1bf0: 3c 2f 61 3e 20 75 73 65 73 20 66 65 77 65 72 20  </a> uses fewer 
1c00: 43 50 55 20 63 79 63 6c 65 73 20 61 6e 64 20 63  CPU cycles and c
1c10: 61 6e 20 62 65 20 65 78 65 63 75 74 65 64 0a 69  an be executed.i
1c20: 6e 63 72 65 6d 65 6e 74 61 6c 6c 79 2e 0a 0a 3c  ncrementally...<
1c30: 70 3e 0a 54 68 65 20 66 69 6c 65 6e 61 6d 65 20  p>.The filename 
1c40: 69 6e 20 74 68 65 20 49 4e 54 4f 20 63 6c 61 75  in the INTO clau
1c50: 73 65 20 63 61 6e 20 62 65 20 61 6e 20 61 72 62  se can be an arb
1c60: 69 74 72 61 72 79 20 53 51 4c 20 65 78 70 72 65  itrary SQL expre
1c70: 73 73 69 6f 6e 0a 74 68 61 74 20 65 76 61 6c 75  ssion.that evalu
1c80: 61 74 65 73 20 74 6f 20 61 20 73 74 72 69 6e 67  ates to a string
1c90: 2e 0a 54 68 65 20 66 69 6c 65 20 6e 61 6d 65 64  ..The file named
1ca0: 20 62 79 20 74 68 65 20 49 4e 54 4f 20 63 6c 61   by the INTO cla
1cb0: 75 73 65 20 6d 75 73 74 20 6e 6f 74 20 70 72 65  use must not pre
1cc0: 76 69 6f 75 73 6c 79 20 65 78 69 73 74 2c 20 6f  viously exist, o
1cd0: 72 0a 65 6c 73 65 20 69 74 20 6d 75 73 74 20 62  r.else it must b
1ce0: 65 20 61 6e 20 65 6d 70 74 79 20 66 69 6c 65 2c  e an empty file,
1cf0: 20 6f 72 20 74 68 65 20 56 41 43 55 55 4d 20 49   or the VACUUM I
1d00: 4e 54 4f 20 63 6f 6d 6d 61 6e 64 20 77 69 6c 6c  NTO command will
1d10: 0a 66 61 69 6c 20 77 69 74 68 20 61 6e 20 65 72  .fail with an er
1d20: 72 6f 72 2e 0a 0a 3c 70 3e 0a 54 68 65 20 61 72  ror...<p>.The ar
1d30: 67 75 6d 65 6e 74 20 74 6f 20 49 4e 54 4f 20 63  gument to INTO c
1d40: 61 6e 20 61 20 3c 61 20 68 72 65 66 3d 22 75 72  an a <a href="ur
1d50: 69 2e 68 74 6d 6c 22 3e 55 52 49 20 66 69 6c 65  i.html">URI file
1d60: 6e 61 6d 65 3c 2f 61 3e 20 69 66 20 55 52 49 20  name</a> if URI 
1d70: 66 69 6c 65 6e 61 6d 65 73 0a 61 72 65 20 65 6e  filenames.are en
1d80: 61 62 6c 65 64 2e 0a 55 52 4c 20 66 69 6c 65 6e  abled..URL filen
1d90: 61 6d 65 73 20 61 72 65 20 65 6e 61 62 6c 65 64  ames are enabled
1da0: 20 69 66 20 61 6e 79 20 6f 66 20 74 68 65 20 66   if any of the f
1db0: 6f 6c 6c 6f 77 69 6e 67 20 61 72 65 20 74 72 75  ollowing are tru
1dc0: 65 3a 0a 3c 75 6c 3e 0a 3c 6c 69 3e 20 54 68 65  e:.<ul>.<li> The
1dd0: 20 53 51 4c 69 74 65 20 6c 69 62 72 61 72 79 20   SQLite library 
1de0: 77 61 73 20 63 6f 6d 70 69 6c 65 64 20 77 69 74  was compiled wit
1df0: 68 20 3c 61 20 68 72 65 66 3d 22 63 6f 6d 70 69  h <a href="compi
1e00: 6c 65 2e 68 74 6d 6c 23 75 73 65 5f 75 72 69 22  le.html#use_uri"
1e10: 3e 2d 44 53 51 4c 49 54 45 5f 55 53 45 5f 55 52  >-DSQLITE_USE_UR
1e20: 49 3d 31 3c 2f 61 3e 2e 0a 3c 6c 69 3e 20 54 68  I=1</a>..<li> Th
1e30: 65 20 3c 61 20 68 72 65 66 3d 22 63 33 72 65 66  e <a href="c3ref
1e40: 2f 63 6f 6e 66 69 67 2e 68 74 6d 6c 22 3e 73 71  /config.html">sq
1e50: 6c 69 74 65 33 5f 63 6f 6e 66 69 67 3c 2f 61 3e  lite3_config</a>
1e60: 28 3c 61 20 68 72 65 66 3d 22 63 33 72 65 66 2f  (<a href="c3ref/
1e70: 63 5f 63 6f 6e 66 69 67 5f 63 6f 76 65 72 69 6e  c_config_coverin
1e80: 67 5f 69 6e 64 65 78 5f 73 63 61 6e 2e 68 74 6d  g_index_scan.htm
1e90: 6c 23 73 71 6c 69 74 65 63 6f 6e 66 69 67 75 72  l#sqliteconfigur
1ea0: 69 22 3e 53 51 4c 49 54 45 5f 43 4f 4e 46 49 47  i">SQLITE_CONFIG
1eb0: 5f 55 52 49 3c 2f 61 3e 2c 31 29 20 69 6e 74 65  _URI</a>,1) inte
1ec0: 72 66 61 63 65 73 20 77 61 73 0a 20 20 20 20 20  rfaces was.     
1ed0: 69 6e 76 6f 6b 65 64 20 61 74 20 73 74 61 72 74  invoked at start
1ee0: 2d 74 69 6d 65 2e 0a 3c 6c 69 3e 20 54 68 65 20  -time..<li> The 
1ef0: 3c 61 20 68 72 65 66 3d 22 63 33 72 65 66 2f 73  <a href="c3ref/s
1f00: 71 6c 69 74 65 33 2e 68 74 6d 6c 22 3e 64 61 74  qlite3.html">dat
1f10: 61 62 61 73 65 20 63 6f 6e 6e 65 63 74 69 6f 6e  abase connection
1f20: 3c 2f 61 3e 20 74 68 61 74 20 69 73 20 72 75 6e  </a> that is run
1f30: 6e 69 6e 67 20 74 68 65 20 56 41 43 55 55 4d 20  ning the VACUUM 
1f40: 49 4e 54 4f 0a 20 20 20 20 20 73 74 61 74 65 6d  INTO.     statem
1f50: 65 6e 74 20 77 61 73 20 6f 72 69 67 69 6e 61 6c  ent was original
1f60: 6c 79 20 6f 70 65 6e 65 64 20 75 73 69 6e 67 20  ly opened using 
1f70: 74 68 65 0a 20 20 20 20 20 3c 61 20 68 72 65 66  the.     <a href
1f80: 3d 22 63 33 72 65 66 2f 63 5f 6f 70 65 6e 5f 61  ="c3ref/c_open_a
1f90: 75 74 6f 70 72 6f 78 79 2e 68 74 6d 6c 22 3e 53  utoproxy.html">S
1fa0: 51 4c 49 54 45 5f 4f 50 45 4e 5f 55 52 49 3c 2f  QLITE_OPEN_URI</
1fb0: 61 3e 20 66 6c 61 67 2e 0a 3c 2f 75 6c 3e 0a 0a  a> flag..</ul>..
1fc0: 3c 70 3e 0a 54 68 65 20 56 41 43 55 55 4d 20 49  <p>.The VACUUM I
1fd0: 4e 54 4f 20 63 6f 6d 6d 61 6e 64 20 69 73 20 74  NTO command is t
1fe0: 72 61 6e 73 61 63 74 69 6f 6e 61 6c 20 69 6e 20  ransactional in 
1ff0: 74 68 65 20 73 65 6e 73 65 20 74 68 61 74 0a 74  the sense that.t
2000: 68 65 20 67 65 6e 65 72 61 74 65 64 20 6f 75 74  he generated out
2010: 70 75 74 20 64 61 74 61 62 61 73 65 20 69 73 20  put database is 
2020: 61 20 63 6f 6e 73 69 73 74 65 6e 74 20 73 6e 61  a consistent sna
2030: 70 73 68 6f 74 20 6f 66 20 74 68 65 0a 6f 72 69  pshot of the.ori
2040: 67 69 6e 61 6c 20 64 61 74 61 62 61 73 65 2e 20  ginal database. 
2050: 20 48 6f 77 65 76 65 72 2c 20 69 66 20 74 68 65   However, if the
2060: 20 56 41 43 55 55 4d 20 49 4e 54 4f 20 63 6f 6d   VACUUM INTO com
2070: 6d 61 6e 64 20 69 73 0a 69 6e 74 65 72 72 75 70  mand is.interrup
2080: 74 65 64 20 62 79 20 61 20 75 6e 70 6c 61 6e 6e  ted by a unplann
2090: 65 64 20 73 68 75 74 64 6f 77 6e 20 6f 72 20 70  ed shutdown or p
20a0: 6f 77 65 72 20 6c 6f 73 65 2c 20 74 68 65 6e 0a  ower lose, then.
20b0: 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 6f 75  the generated ou
20c0: 74 70 75 74 20 64 61 74 61 62 61 73 65 20 6d 69  tput database mi
20d0: 67 68 74 20 62 65 20 69 6e 63 6f 6d 70 6c 65 74  ght be incomplet
20e0: 65 20 61 6e 64 20 63 6f 72 72 75 70 74 2e 0a 41  e and corrupt..A
20f0: 6c 73 6f 2c 20 53 51 4c 69 74 65 20 64 6f 65 73  lso, SQLite does
2100: 20 6e 6f 74 20 69 6e 76 6f 6b 65 20 66 73 79 6e   not invoke fsyn
2110: 63 28 29 20 6f 72 20 46 6c 75 73 68 46 69 6c 65  c() or FlushFile
2120: 42 75 66 66 65 72 73 28 29 0a 6f 6e 20 74 68 65  Buffers().on the
2130: 20 67 65 6e 65 72 61 74 65 64 20 64 61 74 61 62   generated datab
2140: 61 73 65 20 74 6f 20 65 6e 73 75 72 65 20 74 68  ase to ensure th
2150: 61 74 20 69 74 20 68 61 73 20 72 65 61 63 68 65  at it has reache
2160: 64 0a 6e 6f 6e 2d 76 6f 6c 61 74 69 6c 65 20 73  d.non-volatile s
2170: 74 6f 72 61 67 65 20 62 65 66 6f 72 65 20 63 6f  torage before co
2180: 6d 70 6c 65 74 69 6e 67 2e 0a 0a 0a 3c 61 20 6e  mpleting....<a n
2190: 61 6d 65 3d 22 68 6f 77 76 61 63 75 75 6d 77 6f  ame="howvacuumwo
21a0: 72 6b 73 22 3e 3c 2f 61 3e 0a 0a 3c 68 33 3e 48  rks"></a>..<h3>H
21b0: 6f 77 20 56 41 43 55 55 4d 20 77 6f 72 6b 73 3c  ow VACUUM works<
21c0: 2f 68 33 3e 0a 0a 3c 70 3e 54 68 65 20 56 41 43  /h3>..<p>The VAC
21d0: 55 55 4d 20 63 6f 6d 6d 61 6e 64 20 77 6f 72 6b  UUM command work
21e0: 73 20 62 79 20 63 6f 70 79 69 6e 67 20 74 68 65  s by copying the
21f0: 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74 68 65   contents of the
2200: 20 64 61 74 61 62 61 73 65 20 69 6e 74 6f 0a 61   database into.a
2210: 20 74 65 6d 70 6f 72 61 72 79 20 64 61 74 61 62   temporary datab
2220: 61 73 65 20 66 69 6c 65 20 61 6e 64 20 74 68 65  ase file and the
2230: 6e 20 6f 76 65 72 77 72 69 74 69 6e 67 20 74 68  n overwriting th
2240: 65 20 6f 72 69 67 69 6e 61 6c 20 77 69 74 68 20  e original with 
2250: 74 68 65 20 0a 63 6f 6e 74 65 6e 74 73 20 6f 66  the .contents of
2260: 20 74 68 65 20 74 65 6d 70 6f 72 61 72 79 20 66   the temporary f
2270: 69 6c 65 2e 20 57 68 65 6e 20 6f 76 65 72 77 72  ile. When overwr
2280: 69 74 69 6e 67 20 74 68 65 20 6f 72 69 67 69 6e  iting the origin
2290: 61 6c 2c 20 61 20 72 6f 6c 6c 62 61 63 6b 0a 6a  al, a rollback.j
22a0: 6f 75 72 6e 61 6c 20 6f 72 20 3c 61 20 68 72 65  ournal or <a hre
22b0: 66 3d 22 77 61 6c 2e 68 74 6d 6c 22 3e 77 72 69  f="wal.html">wri
22c0: 74 65 2d 61 68 65 61 64 20 6c 6f 67 3c 2f 61 3e  te-ahead log</a>
22d0: 20 57 41 4c 20 66 69 6c 65 20 69 73 20 75 73 65   WAL file is use
22e0: 64 20 6a 75 73 74 20 61 73 20 69 74 20 77 6f 75  d just as it wou
22f0: 6c 64 20 62 65 20 66 6f 72 20 61 6e 79 0a 6f 74  ld be for any.ot
2300: 68 65 72 20 64 61 74 61 62 61 73 65 20 74 72 61  her database tra
2310: 6e 73 61 63 74 69 6f 6e 2e 20 54 68 69 73 20 6d  nsaction. This m
2320: 65 61 6e 73 20 74 68 61 74 20 77 68 65 6e 20 56  eans that when V
2330: 41 43 55 55 4d 69 6e 67 20 61 20 64 61 74 61 62  ACUUMing a datab
2340: 61 73 65 2c 20 0a 61 73 20 6d 75 63 68 20 61 73  ase, .as much as
2350: 20 74 77 69 63 65 20 74 68 65 20 73 69 7a 65 20   twice the size 
2360: 6f 66 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20  of the original 
2370: 64 61 74 61 62 61 73 65 20 66 69 6c 65 20 69 73  database file is
2380: 20 72 65 71 75 69 72 65 64 20 69 6e 20 66 72 65   required in fre
2390: 65 0a 64 69 73 6b 20 73 70 61 63 65 2e 0a 0a 3c  e.disk space...<
23a0: 70 3e 54 68 65 20 56 41 43 55 55 4d 20 49 4e 54  p>The VACUUM INT
23b0: 4f 20 63 6f 6d 6d 61 6e 64 20 77 6f 72 6b 73 20  O command works 
23c0: 74 68 65 20 73 61 6d 65 20 77 61 79 20 65 78 63  the same way exc
23d0: 65 70 74 20 74 68 61 74 20 69 74 20 75 73 65 73  ept that it uses
23e0: 20 74 68 65 20 66 69 6c 65 0a 6e 61 6d 65 64 20   the file.named 
23f0: 6f 6e 20 74 68 65 20 49 4e 54 4f 20 63 6c 61 75  on the INTO clau
2400: 73 65 20 69 6e 20 70 6c 61 63 65 20 6f 66 20 74  se in place of t
2410: 68 65 20 74 65 6d 70 6f 72 61 72 79 20 64 61 74  he temporary dat
2420: 61 62 61 73 65 20 61 6e 64 20 6f 6d 69 74 73 20  abase and omits 
2430: 74 68 65 0a 73 74 65 70 20 6f 66 20 63 6f 70 79  the.step of copy
2440: 69 6e 67 20 74 68 65 20 76 61 63 75 75 6d 65 64  ing the vacuumed
2450: 20 64 61 74 61 62 61 73 65 20 62 61 63 6b 20 6f   database back o
2460: 76 65 72 20 74 6f 70 20 6f 66 20 74 68 65 20 6f  ver top of the o
2470: 72 69 67 69 6e 61 6c 20 64 61 74 61 62 61 73 65  riginal database
2480: 2e 0a 0a 3c 70 3e 54 68 65 20 56 41 43 55 55 4d  ...<p>The VACUUM
2490: 20 63 6f 6d 6d 61 6e 64 20 6d 61 79 20 63 68 61   command may cha
24a0: 6e 67 65 20 74 68 65 20 3c 61 20 68 72 65 66 3d  nge the <a href=
24b0: 22 6c 61 6e 67 5f 63 72 65 61 74 65 74 61 62 6c  "lang_createtabl
24c0: 65 2e 68 74 6d 6c 23 72 6f 77 69 64 22 3e 52 4f  e.html#rowid">RO
24d0: 57 49 44 73 3c 2f 61 3e 20 6f 66 20 65 6e 74 72  WIDs</a> of entr
24e0: 69 65 73 20 69 6e 20 61 6e 79 0a 74 61 62 6c 65  ies in any.table
24f0: 73 20 74 68 61 74 20 64 6f 20 6e 6f 74 20 68 61  s that do not ha
2500: 76 65 20 61 6e 20 65 78 70 6c 69 63 69 74 20 3c  ve an explicit <
2510: 61 20 68 72 65 66 3d 22 6c 61 6e 67 5f 63 72 65  a href="lang_cre
2520: 61 74 65 74 61 62 6c 65 2e 68 74 6d 6c 23 72 6f  atetable.html#ro
2530: 77 69 64 22 3e 49 4e 54 45 47 45 52 20 50 52 49  wid">INTEGER PRI
2540: 4d 41 52 59 20 4b 45 59 3c 2f 61 3e 2e 0a 3c 2f  MARY KEY</a>..</
2550: 70 3e 0a 0a 3c 70 3e 41 20 56 41 43 55 55 4d 20  p>..<p>A VACUUM 
2560: 77 69 6c 6c 20 66 61 69 6c 20 69 66 20 74 68 65  will fail if the
2570: 72 65 20 69 73 20 61 6e 20 6f 70 65 6e 20 74 72  re is an open tr
2580: 61 6e 73 61 63 74 69 6f 6e 2c 20 6f 72 20 69 66  ansaction, or if
2590: 20 74 68 65 72 65 20 61 72 65 20 6f 6e 65 20 6f   there are one o
25a0: 72 0a 6d 6f 72 65 20 61 63 74 69 76 65 20 53 51  r.more active SQ
25b0: 4c 20 73 74 61 74 65 6d 65 6e 74 73 20 77 68 65  L statements whe
25c0: 6e 20 69 74 20 69 73 20 72 75 6e 2e 0a 0a 3c 70  n it is run...<p
25d0: 3e 41 6e 20 61 6c 74 65 72 6e 61 74 69 76 65 20  >An alternative 
25e0: 74 6f 20 75 73 69 6e 67 20 74 68 65 20 56 41 43  to using the VAC
25f0: 55 55 4d 20 63 6f 6d 6d 61 6e 64 20 74 6f 0a 72  UUM command to.r
2600: 65 63 6c 61 69 6d 20 73 70 61 63 65 20 61 66 74  eclaim space aft
2610: 65 72 20 64 61 74 61 20 68 61 73 20 62 65 65 6e  er data has been
2620: 20 64 65 6c 65 74 65 64 20 69 73 20 61 75 74 6f   deleted is auto
2630: 2d 76 61 63 75 75 6d 20 6d 6f 64 65 2c 20 65 6e  -vacuum mode, en
2640: 61 62 6c 65 64 20 75 73 69 6e 67 0a 74 68 65 20  abled using.the 
2650: 3c 61 20 68 72 65 66 3d 22 70 72 61 67 6d 61 2e  <a href="pragma.
2660: 68 74 6d 6c 23 70 72 61 67 6d 61 5f 61 75 74 6f  html#pragma_auto
2670: 5f 76 61 63 75 75 6d 22 3e 61 75 74 6f 5f 76 61  _vacuum">auto_va
2680: 63 75 75 6d 3c 2f 61 3e 20 70 72 61 67 6d 61 2e  cuum</a> pragma.
2690: 20 57 68 65 6e 20 3c 61 20 68 72 65 66 3d 22 70   When <a href="p
26a0: 72 61 67 6d 61 2e 68 74 6d 6c 23 70 72 61 67 6d  ragma.html#pragm
26b0: 61 5f 61 75 74 6f 5f 76 61 63 75 75 6d 22 3e 61  a_auto_vacuum">a
26c0: 75 74 6f 5f 76 61 63 75 75 6d 3c 2f 61 3e 20 69  uto_vacuum</a> i
26d0: 73 20 65 6e 61 62 6c 65 64 20 66 6f 72 20 61 20  s enabled for a 
26e0: 64 61 74 61 62 61 73 65 0a 66 72 65 65 20 70 61  database.free pa
26f0: 67 65 73 20 6d 61 79 20 62 65 20 72 65 63 6c 61  ges may be recla
2700: 69 6d 65 64 20 61 66 74 65 72 20 64 65 6c 65 74  imed after delet
2710: 69 6e 67 20 64 61 74 61 2c 20 63 61 75 73 69 6e  ing data, causin
2720: 67 20 74 68 65 20 66 69 6c 65 20 74 6f 20 73 68  g the file to sh
2730: 72 69 6e 6b 2c 0a 77 69 74 68 6f 75 74 20 72 65  rink,.without re
2740: 62 75 69 6c 64 69 6e 67 20 74 68 65 20 65 6e 74  building the ent
2750: 69 72 65 20 64 61 74 61 62 61 73 65 20 75 73 69  ire database usi
2760: 6e 67 20 56 41 43 55 55 4d 2e 20 20 48 6f 77 65  ng VACUUM.  Howe
2770: 76 65 72 2c 20 75 73 69 6e 67 0a 3c 61 20 68 72  ver, using.<a hr
2780: 65 66 3d 22 70 72 61 67 6d 61 2e 68 74 6d 6c 23  ef="pragma.html#
2790: 70 72 61 67 6d 61 5f 61 75 74 6f 5f 76 61 63 75  pragma_auto_vacu
27a0: 75 6d 22 3e 61 75 74 6f 5f 76 61 63 75 75 6d 3c  um">auto_vacuum<
27b0: 2f 61 3e 20 63 61 6e 20 6c 65 61 64 20 74 6f 20  /a> can lead to 
27c0: 65 78 74 72 61 20 64 61 74 61 62 61 73 65 20 66  extra database f
27d0: 69 6c 65 20 66 72 61 67 6d 65 6e 74 61 74 69 6f  ile fragmentatio
27e0: 6e 2e 20 20 41 6e 64 20 3c 61 20 68 72 65 66 3d  n.  And <a href=
27f0: 22 70 72 61 67 6d 61 2e 68 74 6d 6c 23 70 72 61  "pragma.html#pra
2800: 67 6d 61 5f 61 75 74 6f 5f 76 61 63 75 75 6d 22  gma_auto_vacuum"
2810: 3e 61 75 74 6f 5f 76 61 63 75 75 6d 3c 2f 61 3e  >auto_vacuum</a>
2820: 0a 64 6f 65 73 20 6e 6f 74 20 63 6f 6d 70 61 63  .does not compac
2830: 74 20 70 61 72 74 69 61 6c 6c 79 20 66 69 6c 6c  t partially fill
2840: 65 64 20 70 61 67 65 73 20 6f 66 20 74 68 65 20  ed pages of the 
2850: 64 61 74 61 62 61 73 65 20 61 73 20 56 41 43 55  database as VACU
2860: 55 4d 20 64 6f 65 73 2e 0a 0a 3c 2f 70 3e 0a 0a  UM does...</p>..
2870: 0a 0a                                            ..