Artifact
e8d8d5aff21f669d706cadee12ced1b6c7ce112a:
Wiki page
[about Pause()] by
sandro
2019-05-30 09:10:53.
0000: 44 20 32 30 31 39 2d 30 35 2d 33 30 54 30 39 3a D 2019-05-30T09:
0010: 31 30 3a 35 33 2e 31 32 33 0a 4c 20 61 62 6f 75 10:53.123.L abou
0020: 74 5c 73 50 61 75 73 65 28 29 0a 50 20 61 65 65 t\sPause().P aee
0030: 64 30 62 33 61 32 34 39 33 32 30 66 30 38 38 35 d0b3a249320f0885
0040: 63 65 63 38 36 63 30 63 66 62 39 37 66 65 62 38 cec86c0cfb97feb8
0050: 63 34 36 37 35 0a 55 20 73 61 6e 64 72 6f 0a 57 c4675.U sandro.W
0060: 20 31 30 32 34 32 0a 3c 61 20 68 72 65 66 3d 22 10242.<a href="
0070: 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 https://www.gaia
0080: 2d 67 69 73 2e 69 74 2f 66 6f 73 73 69 6c 2f 6c -gis.it/fossil/l
0090: 69 62 73 70 61 74 69 61 6c 69 74 65 2f 77 69 6b ibspatialite/wik
00a0: 69 3f 6e 61 6d 65 3d 34 2e 33 2e 30 2d 64 6f 63 i?name=4.3.0-doc
00b0: 22 3e 62 61 63 6b 3c 2f 61 3e 3c 68 72 3e 3c 62 ">back</a><hr><b
00c0: 72 3e 0d 0a 3c 68 31 3e 49 6e 74 72 6f 64 75 63 r>..<h1>Introduc
00d0: 74 69 6f 6e 3c 2f 68 31 3e 0d 0a 4d 61 6e 79 20 tion</h1>..Many
00e0: 70 6f 77 65 72 20 75 73 65 72 73 20 72 6f 75 74 power users rout
00f0: 69 6e 65 6c 79 20 75 73 65 20 53 70 61 74 69 61 inely use Spatia
0100: 4c 69 74 65 20 66 6f 72 20 65 78 65 63 75 74 69 Lite for executi
0110: 6e 67 20 3c 62 3e 76 65 72 79 20 63 6f 6d 70 6c ng <b>very compl
0120: 65 78 20 53 51 4c 20 53 63 72 69 70 74 73 3c 2f ex SQL Scripts</
0130: 62 3e 2c 20 6d 61 79 20 62 65 20 6c 61 72 67 65 b>, may be large
0140: 6c 79 20 62 61 73 65 64 20 6f 6e 20 3c 62 3e 53 ly based on <b>S
0150: 74 6f 72 65 64 20 50 72 6f 63 65 64 75 72 65 73 tored Procedures
0160: 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 53 6f 6d 65 74 </b>.<br>..Somet
0170: 69 6d 65 73 20 61 74 74 65 6d 70 74 69 6e 67 20 imes attempting
0180: 74 6f 20 64 65 62 75 67 20 61 20 63 6f 6d 70 6c to debug a compl
0190: 65 78 20 53 51 4c 20 73 63 72 69 70 74 20 6d 61 ex SQL script ma
01a0: 79 20 65 61 73 69 6c 79 20 62 65 63 6f 6d 65 20 y easily become
01b0: 61 20 64 69 66 66 69 63 75 6c 74 20 61 6e 64 20 a difficult and
01c0: 66 72 75 73 74 72 61 74 69 6e 67 20 61 63 74 69 frustrating acti
01d0: 76 69 74 79 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 49 vity.<br><br>..I
01e0: 6e 20 6f 72 64 65 72 20 74 6f 20 66 61 63 69 6c n order to facil
01f0: 69 74 61 74 65 20 74 68 65 20 64 65 62 75 67 67 itate the debugg
0200: 69 6e 67 20 6f 66 20 53 51 4c 20 53 63 72 69 70 ing of SQL Scrip
0210: 74 73 20 61 73 20 6d 75 63 68 20 61 73 20 70 6f ts as much as po
0220: 73 73 69 62 6c 65 2c 20 53 70 61 74 69 61 4c 69 ssible, SpatiaLi
0230: 74 65 20 28 73 74 61 72 74 69 6e 67 20 73 69 6e te (starting sin
0240: 63 65 20 3c 62 3e 76 65 72 73 69 6f 6e 20 35 2e ce <b>version 5.
0250: 30 2e 30 3c 2f 62 3e 29 20 73 75 70 70 6f 72 74 0.0</b>) support
0260: 73 20 61 20 73 70 65 63 69 66 69 63 20 3c 62 3e s a specific <b>
0270: 50 61 75 73 65 28 29 3c 2f 62 3e 20 53 51 4c 20 Pause()</b> SQL
0280: 66 75 6e 63 74 69 6f 6e 2e 3c 62 72 3e 0d 0a 54 function.<br>..T
0290: 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 his function is
02a0: 69 6e 74 65 6e 64 65 64 20 74 6f 20 62 65 20 74 intended to be t
02b0: 68 65 20 63 6f 6e 63 65 70 74 75 61 6c 20 65 71 he conceptual eq
02c0: 75 69 76 61 6c 65 6e 74 20 6f 66 20 77 68 61 74 uivalent of what
02d0: 20 61 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 a <a href="http
02e0: 73 3a 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 69 61 s://en.wikipedia
02f0: 2e 6f 72 67 2f 77 69 6b 69 2f 42 72 65 61 6b 70 .org/wiki/Breakp
0300: 6f 69 6e 74 22 3e 62 72 65 61 6b 70 6f 69 6e 74 oint">breakpoint
0310: 3c 2f 61 3e 20 69 73 20 69 6e 74 65 6e 64 65 64 </a> is intended
0320: 20 74 6f 20 62 65 20 66 6f 72 20 6f 72 64 69 6e to be for ordin
0330: 61 72 79 20 64 65 62 75 67 67 65 72 20 74 6f 6f ary debugger too
0340: 6c 73 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 46 65 77 ls.<br><br>..Few
0350: 20 62 61 73 69 63 20 63 6f 6e 63 65 70 74 73 3a basic concepts:
0360: 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 79 6f 75 2c ..<ul>..<li>you,
0370: 20 61 73 20 74 68 65 20 64 65 76 65 6c 6f 70 65 as the develope
0380: 72 20 6f 66 20 74 68 65 20 53 51 4c 20 53 63 72 r of the SQL Scr
0390: 69 70 74 2c 20 61 72 65 20 66 72 65 65 20 74 6f ipt, are free to
03a0: 20 63 61 6c 6c 20 3c 62 3e 50 61 75 73 65 28 29 call <b>Pause()
03b0: 3c 2f 62 3e 20 61 74 20 73 6f 6d 65 20 63 72 69 </b> at some cri
03c0: 74 69 63 61 6c 20 70 6f 69 6e 74 20 6f 66 20 74 tical point of t
03d0: 68 65 20 53 63 72 69 70 74 20 28 3c 69 3e 77 68 he Script (<i>wh
03e0: 65 72 65 20 79 6f 75 20 73 75 73 70 65 63 74 20 ere you suspect
03f0: 74 68 61 74 20 6e 61 73 74 79 20 74 68 69 6e 67 that nasty thing
0400: 73 20 68 61 76 65 20 6a 75 73 74 20 68 61 70 70 s have just happ
0410: 65 6e 65 64 3c 2f 69 3e 29 2e 3c 2f 6c 69 3e 0d ened</i>).</li>.
0420: 0a 3c 6c 69 3e 6f 6e 63 65 20 3c 62 3e 50 61 75 .<li>once <b>Pau
0430: 73 65 28 29 3c 2f 62 3e 20 69 73 20 65 78 65 63 se()</b> is exec
0440: 75 74 65 64 20 69 74 20 73 75 64 64 65 6e 6c 79 uted it suddenly
0450: 20 73 74 6f 70 73 20 61 6e 79 20 66 75 72 74 68 stops any furth
0460: 65 72 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 er execution of
0470: 74 68 65 20 63 61 6c 6c 69 6e 67 20 70 72 6f 63 the calling proc
0480: 65 73 73 2c 20 74 68 61 74 20 77 69 6c 6c 20 69 ess, that will i
0490: 6e 64 65 66 69 6e 69 74 65 6c 79 20 72 65 6d 61 ndefinitely rema
04a0: 69 6e 20 69 6e 20 61 20 66 72 6f 7a 65 6e 20 73 in in a frozen s
04b0: 74 61 74 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e tate.</li>..<li>
04c0: 74 68 69 73 20 67 69 76 65 73 20 79 6f 75 20 74 this gives you t
04d0: 68 65 20 6f 70 70 6f 72 74 75 6e 69 74 79 20 74 he opportunity t
04e0: 6f 20 73 74 61 72 74 20 61 20 73 65 63 6f 6e 64 o start a second
04f0: 20 69 6e 73 74 61 6e 63 65 20 6f 66 20 53 70 61 instance of Spa
0500: 74 69 61 4c 69 74 65 20 74 6f 20 62 65 20 75 73 tiaLite to be us
0510: 65 64 20 66 6f 72 20 69 6e 73 70 65 63 74 69 6e ed for inspectin
0520: 67 20 61 6e 79 20 70 6f 73 73 69 62 6c 65 20 64 g any possible d
0530: 65 74 61 69 6c 20 69 6e 20 74 68 65 20 77 6f 72 etail in the wor
0540: 6b 20 64 61 74 61 62 61 73 65 2c 3c 62 72 3e 0d k database,<br>.
0550: 0a 41 6e 64 20 79 6f 75 27 6c 6c 20 62 65 20 65 .And you'll be e
0560: 76 65 6e 74 75 61 6c 6c 79 20 66 72 65 65 20 74 ventually free t
0570: 6f 20 63 6f 72 72 65 63 74 20 6f 6e 20 74 68 65 o correct on the
0580: 20 66 6c 79 20 73 6f 6d 65 20 77 72 6f 6e 67 20 fly some wrong
0590: 76 61 6c 75 65 20 79 6f 75 27 6c 6c 20 6e 6f 74 value you'll not
05a0: 69 63 65 20 73 6f 6d 65 77 68 65 72 65 2e 3c 2f ice somewhere.</
05b0: 6c 69 3e 0d 0a 3c 6c 69 3e 77 68 65 6e 20 79 6f li>..<li>when yo
05c0: 75 27 76 65 20 63 6f 6d 70 6c 65 74 65 64 20 61 u've completed a
05d0: 6c 6c 20 79 6f 75 72 20 64 65 62 75 67 20 61 63 ll your debug ac
05e0: 74 69 76 69 74 69 65 73 2c 20 79 6f 75 20 73 69 tivities, you si
05f0: 6d 70 6c 79 20 68 61 76 65 20 74 6f 20 74 61 6b mply have to tak
0600: 65 20 74 68 65 20 61 70 70 72 6f 70 72 69 61 74 e the appropriat
0610: 65 20 3c 62 3e 63 6f 6e 74 69 6e 75 65 20 61 63 e <b>continue ac
0620: 74 69 6f 6e 3c 2f 62 3e 2c 3c 62 72 3e 0d 0a 54 tion</b>,<br>..T
0630: 68 65 20 53 51 4c 20 53 63 72 69 70 74 20 77 69 he SQL Script wi
0640: 6c 6c 20 74 68 65 6e 20 72 65 73 75 6d 65 20 69 ll then resume i
0650: 74 73 20 6e 6f 72 6d 61 6c 20 65 78 65 63 75 74 ts normal execut
0660: 69 6f 6e 20 65 78 61 63 74 6c 79 20 66 72 6f 6d ion exactly from
0670: 20 74 68 65 20 73 74 61 74 65 6d 65 6e 74 20 69 the statement i
0680: 6d 6d 65 64 69 61 74 65 6c 79 20 66 6f 6c 6c 6f mmediately follo
0690: 77 69 6e 67 20 3c 62 3e 50 61 75 73 65 28 29 3c wing <b>Pause()<
06a0: 2f 62 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 /b></li>..<li><b
06b0: 3e 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3c 2f 62 3e ><u>Note</u></b>
06c0: 3a 20 6e 6f 74 68 69 6e 67 20 66 6f 72 62 69 64 : nothing forbid
06d0: 73 20 74 6f 20 63 61 6c 6c 20 3c 62 3e 50 61 75 s to call <b>Pau
06e0: 73 65 28 29 3c 2f 62 3e 20 61 73 20 6d 61 6e 79 se()</b> as many
06f0: 20 74 69 6d 65 73 20 61 73 20 79 6f 75 20 63 61 times as you ca
0700: 6e 20 66 69 6e 64 20 75 73 65 66 75 6c 20 66 72 n find useful fr
0710: 6f 6d 20 77 69 74 68 69 6e 20 74 68 65 20 73 61 om within the sa
0720: 6d 65 20 53 51 4c 20 53 63 72 69 70 74 2e 3c 2f me SQL Script.</
0730: 6c 69 3e 20 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 62 72 li> ..</ul>..<br
0740: 3e 0d 0a 3c 74 61 62 6c 65 20 63 65 6c 6c 70 61 >..<table cellpa
0750: 64 64 69 6e 67 3d 22 36 22 20 63 65 6c 6c 73 70 dding="6" cellsp
0760: 61 63 69 6e 67 3d 22 36 22 20 62 67 63 6f 6c 6f acing="6" bgcolo
0770: 72 3d 22 23 66 66 66 66 64 30 22 3e 0d 0a 3c 74 r="#ffffd0">..<t
0780: 72 3e 3c 74 64 3e 0d 0a 3c 68 33 3e 49 6d 70 6f r><td>..<h3>Impo
0790: 72 74 61 6e 74 20 6e 6f 74 69 63 65 3a 20 50 61 rtant notice: Pa
07a0: 75 73 65 28 29 20 61 6e 64 20 53 51 4c 20 54 72 use() and SQL Tr
07b0: 61 6e 73 61 63 74 69 6f 6e 73 3c 2f 68 33 3e 0d ansactions</h3>.
07c0: 0a 3c 62 3e 3c 75 3e 52 65 63 61 6c 6c 3c 2f 75 .<b><u>Recall</u
07d0: 3e 3c 2f 62 3e 3a 20 61 6c 6c 20 63 68 61 6e 67 ></b>: all chang
07e0: 65 73 20 63 6f 6e 74 61 69 6e 65 64 20 77 69 74 es contained wit
07f0: 68 69 6e 20 61 20 3c 62 3e 70 65 6e 64 69 6e 67 hin a <b>pending
0800: 3c 2f 62 3e 20 28 3c 69 3e 61 6b 61 3c 2f 69 3e </b> (<i>aka</i>
0810: 20 3c 62 3e 75 6e 63 6f 6d 6d 69 74 74 65 64 3c <b>uncommitted<
0820: 2f 62 3e 29 20 53 51 4c 20 54 72 61 6e 73 61 63 /b>) SQL Transac
0830: 74 69 6f 6e 20 61 72 65 20 73 74 72 69 63 74 6c tion are strictl
0840: 79 20 70 72 69 76 61 74 65 2e 3c 62 72 3e 0d 0a y private.<br>..
0850: 54 68 69 73 20 70 72 61 63 74 69 63 61 6c 6c 79 This practically
0860: 20 6d 65 61 6e 73 20 74 68 61 74 20 61 6c 6c 20 means that all
0870: 74 68 65 6d 20 77 69 6c 6c 20 72 65 6d 61 69 6e them will remain
0880: 20 63 6f 6d 70 6c 65 74 65 6c 79 20 69 6e 76 69 completely invi
0890: 73 69 62 6c 65 20 74 6f 20 61 6e 79 20 6f 74 68 sible to any oth
08a0: 65 72 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 61 63 er connection ac
08b0: 63 65 73 73 69 6e 67 20 74 68 65 20 73 61 6d 65 cessing the same
08c0: 20 64 61 74 61 62 61 73 65 2e 3c 62 72 3e 0d 0a database.<br>..
08d0: 42 75 74 20 61 20 64 65 62 75 67 67 69 6e 67 20 But a debugging
08e0: 73 65 73 73 69 6f 6e 20 61 73 20 70 72 65 76 69 session as previ
08f0: 6f 75 73 6c 79 20 64 65 66 69 6e 65 64 20 6e 65 ously defined ne
0900: 63 65 73 73 61 72 69 6c 79 20 72 65 71 75 69 72 cessarily requir
0910: 65 73 20 75 73 69 6e 67 20 61 74 20 6c 65 61 73 es using at leas
0920: 74 20 74 77 6f 20 64 69 66 66 65 72 65 6e 74 20 t two different
0930: 63 6f 6e 6e 65 63 74 69 6f 6e 73 3c 62 72 3e 0d connections<br>.
0940: 0a 28 3c 69 3e 74 68 65 20 6f 6e 65 20 73 75 73 .(<i>the one sus
0950: 70 65 6e 64 65 64 20 62 79 20 3c 2f 69 3e 3c 62 pended by </i><b
0960: 3e 50 61 75 73 65 28 29 3c 2f 62 3e 3c 69 3e 20 >Pause()</b><i>
0970: 61 6e 64 20 74 68 65 20 6f 74 68 65 72 20 75 73 and the other us
0980: 65 64 20 66 6f 72 20 69 6e 73 70 65 63 74 69 6e ed for inspectin
0990: 67 20 74 68 65 20 64 61 74 61 62 61 73 65 3c 2f g the database</
09a0: 69 3e 29 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 62 i>).<br><br>..<b
09b0: 3e 3c 75 3e 53 68 6f 72 74 20 63 6f 6e 63 6c 75 ><u>Short conclu
09c0: 73 69 6f 6e 3c 2f 75 3e 3c 2f 62 3e 3a 20 74 68 sion</u></b>: th
09d0: 65 20 6f 6e 6c 79 20 73 61 66 65 20 77 61 79 20 e only safe way
09e0: 66 6f 72 20 63 61 6c 6c 69 6e 67 20 3c 62 3e 50 for calling <b>P
09f0: 61 75 73 65 28 29 3c 2f 62 3e 20 69 73 20 66 72 ause()</b> is fr
0a00: 6f 6d 20 61 20 70 6f 69 6e 74 20 69 6e 20 74 68 om a point in th
0a10: 65 20 53 51 4c 20 63 6f 64 65 20 73 75 72 65 6c e SQL code surel
0a20: 79 20 6f 75 74 73 69 64 65 20 61 6e 79 20 70 65 y outside any pe
0a30: 6e 64 69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f nding Transactio
0a40: 6e 2e 3c 62 72 3e 0d 0a 54 68 69 73 20 77 69 6c n.<br>..This wil
0a50: 6c 20 61 76 6f 69 64 20 61 6e 79 20 70 6f 73 73 l avoid any poss
0a60: 69 62 6c 65 20 76 69 73 69 62 69 6c 69 74 79 20 ible visibility
0a70: 69 73 73 75 65 20 61 6e 64 20 61 6e 79 20 6c 6f issue and any lo
0a80: 63 6b 69 6e 67 20 63 6f 6e 66 6c 69 63 74 20 62 cking conflict b
0a90: 65 74 77 65 65 6e 20 64 69 66 66 65 72 65 6e 74 etween different
0aa0: 20 63 6f 6e 6e 65 63 74 69 6f 6e 73 2e 3c 62 72 connections.<br
0ab0: 3e 0d 0a 41 6c 77 61 79 73 20 72 65 6d 65 6d 62 >..Always rememb
0ac0: 65 72 20 74 6f 20 63 61 72 65 66 75 6c 6c 79 20 er to carefully
0ad0: 63 68 65 63 6b 20 66 6f 72 20 74 68 69 73 20 62 check for this b
0ae0: 65 66 6f 72 65 20 64 65 66 69 6e 69 6e 67 20 61 efore defining a
0af0: 20 63 61 6c 6c 20 74 6f 20 3c 62 3e 50 61 75 73 call to <b>Paus
0b00: 65 28 29 3c 2f 62 3e 0d 0a 3c 2f 74 64 3e 3c 74 e()</b>..</td><t
0b10: 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 68 r>..</table>..<h
0b20: 33 3e 41 75 78 69 6c 69 61 72 79 20 53 51 4c 20 3>Auxiliary SQL
0b30: 66 75 6e 63 74 69 6f 6e 73 3c 2f 68 33 3e 0d 0a functions</h3>..
0b40: 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 4c 45 <verbatim>..SELE
0b50: 43 54 20 49 73 50 61 75 73 65 45 6e 61 62 6c 65 CT IsPauseEnable
0b60: 64 28 29 3b 0d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d d();..----------
0b70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a --------------..
0b80: 30 0d 0a 0d 0a 53 45 4c 45 43 54 20 45 6e 61 62 0....SELECT Enab
0b90: 6c 65 50 61 75 73 65 28 29 3b 0d 0a 53 45 4c 45 lePause();..SELE
0ba0: 43 54 20 49 73 50 61 75 73 65 45 6e 61 62 6c 65 CT IsPauseEnable
0bb0: 64 28 29 3b 0d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d d();..----------
0bc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a --------------..
0bd0: 31 0d 0a 0d 0a 53 45 4c 45 43 54 20 44 69 73 61 1....SELECT Disa
0be0: 62 6c 65 50 61 75 73 65 28 29 0d 0a 53 45 4c 45 blePause()..SELE
0bf0: 43 54 20 49 73 50 61 75 73 65 45 6e 61 62 6c 65 CT IsPauseEnable
0c00: 64 28 29 3b 0d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d d();..----------
0c10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a --------------..
0c20: 30 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 0..</verbatim>..
0c30: 3c 75 6c 3e 0d 0a 3c 6c 69 3e 61 6c 6c 20 63 6f <ul>..<li>all co
0c40: 6e 6e 65 63 74 69 6f 6e 73 20 77 69 6c 6c 20 69 nnections will i
0c50: 6e 69 74 69 61 6c 6c 79 20 73 74 61 72 74 20 62 nitially start b
0c60: 79 20 6b 65 65 70 69 6e 67 20 3c 62 3e 50 61 75 y keeping <b>Pau
0c70: 73 65 28 29 3c 2f 62 3e 20 64 69 73 61 62 6c 65 se()</b> disable
0c80: 64 20 62 79 20 64 65 66 61 75 6c 74 2e 3c 62 72 d by default.<br
0c90: 3e 0d 0a 41 6e 64 20 77 68 65 6e 20 50 61 75 73 >..And when Paus
0ca0: 65 28 29 20 69 73 20 64 69 73 61 62 6c 65 64 20 e() is disabled
0cb0: 69 74 20 77 69 6c 6c 20 62 65 20 6a 75 73 74 20 it will be just
0cc0: 63 6f 6e 73 69 64 65 72 65 64 20 61 73 20 61 6e considered as an
0cd0: 20 65 66 66 65 63 74 6c 65 73 73 20 3c 62 3e 6e effectless <b>n
0ce0: 6f 2d 6f 70 3c 2f 62 3e 3c 2f 6c 69 3e 0d 0a 3c o-op</b></li>..<
0cf0: 6c 69 3e 79 6f 75 20 6d 75 73 74 20 65 78 70 6c li>you must expl
0d00: 69 63 69 74 6c 79 20 63 61 6c 6c 20 3c 62 3e 45 icitly call <b>E
0d10: 6e 61 62 6c 65 50 61 75 73 65 28 29 3c 2f 62 3e nablePause()</b>
0d20: 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 65 6e 61 in order to ena
0d30: 62 6c 65 20 50 61 75 73 65 28 29 20 74 6f 20 65 ble Pause() to e
0d40: 66 66 65 63 74 69 76 65 6c 79 20 77 6f 72 6b 2e ffectively work.
0d50: 3c 62 72 3e 0d 0a 4f 6e 63 65 20 74 68 61 74 20 <br>..Once that
0d60: 50 61 75 73 65 28 29 20 69 73 20 65 6e 61 62 6c Pause() is enabl
0d70: 65 64 20 74 68 69 73 20 73 65 74 74 69 6e 67 20 ed this setting
0d80: 77 69 6c 6c 20 70 65 72 73 69 73 74 20 75 6e 74 will persist unt
0d90: 69 6c 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 il the end of th
0da0: 65 20 63 75 72 72 65 6e 74 20 63 6f 6e 6e 65 63 e current connec
0db0: 74 69 6f 6e 20 6c 69 66 65 20 63 79 63 6c 65 2e tion life cycle.
0dc0: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 79 6f 75 20 63 </li>..<li>you c
0dd0: 61 6e 20 65 76 65 6e 74 75 61 6c 6c 79 20 63 61 an eventually ca
0de0: 6c 6c 20 3c 62 3e 44 69 73 61 62 6c 65 50 61 75 ll <b>DisablePau
0df0: 73 65 28 29 3c 2f 62 3e 20 74 6f 20 72 65 76 65 se()</b> to reve
0e00: 72 74 20 62 61 63 6b 20 74 6f 20 74 68 65 20 64 rt back to the d
0e10: 65 66 61 75 6c 74 20 62 65 68 61 76 69 6f 75 72 efault behaviour
0e20: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 79 6f 75 20 .</li>..<li>you
0e30: 63 61 6e 20 63 61 6c 6c 20 3c 62 3e 49 73 50 61 can call <b>IsPa
0e40: 75 73 65 45 6e 61 62 6c 65 64 28 29 3c 2f 62 3e useEnabled()</b>
0e50: 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 63 68 65 in order to che
0e60: 63 6b 20 69 66 20 50 61 75 73 65 28 29 20 69 73 ck if Pause() is
0e70: 20 63 75 72 72 65 6e 74 6c 79 20 65 6e 61 62 6c currently enabl
0e80: 65 64 20 6f 72 20 6e 6f 74 2e 3c 2f 6c 69 3e 0d ed or not.</li>.
0e90: 0a 3c 2f 75 6c 3e 3c 62 72 3e 0d 0a 3c 74 61 62 .</ul><br>..<tab
0ea0: 6c 65 20 63 65 6c 6c 70 61 64 64 69 6e 67 3d 22 le cellpadding="
0eb0: 36 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d 22 6" cellspacing="
0ec0: 36 22 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 66 6" bgcolor="#d0f
0ed0: 66 64 30 22 3e 0d 0a 3c 74 72 3e 3c 74 64 3e 0d fd0">..<tr><td>.
0ee0: 0a 3c 62 3e 4e 6f 74 65 3c 2f 62 3e 3a 20 6b 65 .<b>Note</b>: ke
0ef0: 65 70 69 6e 67 20 3c 62 3e 50 61 75 73 65 28 29 eping <b>Pause()
0f00: 3c 2f 62 3e 20 64 69 73 61 62 6c 65 64 20 62 79 </b> disabled by
0f10: 20 64 65 66 61 75 6c 74 20 68 61 73 20 61 6e 20 default has an
0f20: 75 73 65 66 75 6c 20 70 75 72 70 6f 73 65 2e 3c useful purpose.<
0f30: 62 72 3e 0d 0a 49 74 27 73 20 69 6e 74 65 6e 64 br>..It's intend
0f40: 65 64 20 66 6f 72 20 61 6c 6c 6f 77 69 6e 67 20 ed for allowing
0f50: 53 51 4c 20 64 65 76 65 6c 6f 70 65 72 73 20 74 SQL developers t
0f60: 6f 20 72 65 67 75 6c 61 72 6c 79 20 69 6e 73 65 o regularly inse
0f70: 72 74 20 61 73 20 6d 61 6e 79 20 3c 62 3e 50 61 rt as many <b>Pa
0f80: 75 73 65 28 29 3c 2f 62 3e 20 62 72 65 61 6b 70 use()</b> breakp
0f90: 6f 69 6e 74 73 20 61 73 20 72 65 71 75 69 72 65 oints as require
0fa0: 64 2e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 49 6e d...<ul>..<li>In
0fb0: 20 61 6c 6c 20 72 65 67 75 6c 61 72 20 65 78 65 all regular exe
0fc0: 63 75 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 53 cutions of the S
0fd0: 51 4c 20 53 63 72 69 70 74 20 74 68 65 79 27 6c QL Script they'l
0fe0: 6c 20 62 65 20 73 69 6d 70 6c 79 20 69 67 6e 6f l be simply igno
0ff0: 72 65 64 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 4f red.</li>..<li>O
1000: 6e 6c 79 20 77 68 65 6e 20 61 20 64 65 62 75 67 nly when a debug
1010: 67 69 6e 67 20 73 65 73 73 69 6f 6e 20 69 73 20 ging session is
1020: 65 66 66 65 63 74 69 76 65 6c 79 20 72 65 71 75 effectively requ
1030: 69 72 65 64 20 74 68 65 79 27 6c 6c 20 62 65 63 ired they'll bec
1040: 6f 6d 65 20 65 66 66 65 63 74 69 76 65 2e 3c 2f ome effective.</
1050: 6c 69 3e 0d 0a 3c 6c 69 3e 53 6f 20 79 6f 75 27 li>..<li>So you'
1060: 6c 6c 20 61 6c 77 61 79 73 20 75 73 65 20 74 68 ll always use th
1070: 65 20 73 61 6d 65 20 53 51 4c 20 63 6f 64 65 2c e same SQL code,
1080: 20 77 69 74 68 6f 75 74 20 61 6e 79 20 6e 65 65 without any nee
1090: 64 20 74 6f 20 6d 61 6e 75 61 6c 6c 79 20 63 68 d to manually ch
10a0: 61 6e 67 65 20 69 74 2e 3c 2f 6c 69 3e 0d 0a 3c ange it.</li>..<
10b0: 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 /td></tr>..</tab
10c0: 6c 65 3e 3c 62 72 3e 0d 0a 3c 68 72 3e 0d 0a 3c le><br>..<hr>..<
10d0: 68 31 3e 41 20 70 72 61 63 74 69 63 61 6c 20 65 h1>A practical e
10e0: 78 61 6d 70 6c 65 20 6f 66 20 75 73 69 6e 67 20 xample of using
10f0: 50 61 75 73 65 28 29 3c 2f 68 31 3e 0d 0a 3c 76 Pause()</h1>..<v
1100: 65 72 62 61 74 69 6d 3e 2d 2d 20 64 72 6f 70 70 erbatim>-- dropp
1110: 69 6e 67 20 74 68 65 20 74 65 73 74 20 74 61 62 ing the test tab
1120: 6c 65 2c 20 6a 75 73 74 20 69 6e 20 63 61 73 65 le, just in case
1130: 20 69 74 20 61 6c 72 65 61 64 79 20 65 78 69 73 it already exis
1140: 74 73 0d 0a 44 52 4f 50 20 54 41 42 4c 45 20 74 ts..DROP TABLE t
1150: 65 73 74 3b 0d 0a 0d 0a 2d 2d 20 63 72 65 61 74 est;....-- creat
1160: 69 6e 67 20 74 68 65 20 74 65 73 74 20 74 61 62 ing the test tab
1170: 6c 65 0d 0a 43 52 45 41 54 45 20 54 41 42 4c 45 le..CREATE TABLE
1180: 20 74 65 73 74 20 28 0d 0a 20 20 20 20 69 64 20 test (.. id
1190: 49 4e 54 45 47 45 52 20 50 52 49 4d 41 52 59 20 INTEGER PRIMARY
11a0: 4b 45 59 2c 0d 0a 20 20 20 20 6e 61 6d 65 20 54 KEY,.. name T
11b0: 45 58 54 20 4e 4f 54 20 4e 55 4c 4c 29 3b 0d 0a EXT NOT NULL);..
11c0: 0d 0a 2d 2d 20 73 74 61 72 74 69 6e 67 20 61 20 ..-- starting a
11d0: 74 72 61 6e 73 61 63 74 69 6f 6e 0d 0a 42 45 47 transaction..BEG
11e0: 49 4e 3b 0d 0a 2d 2d 20 69 6e 73 65 72 74 69 6e IN;..-- insertin
11f0: 67 20 73 6f 6d 65 20 72 6f 77 73 20 69 6e 74 6f g some rows into
1200: 20 74 68 65 20 61 62 6f 76 65 20 74 61 62 6c 65 the above table
1210: 0d 0a 49 4e 53 45 52 54 20 49 4e 54 4f 20 74 65 ..INSERT INTO te
1220: 73 74 20 56 41 4c 55 45 53 28 4e 55 4c 4c 2c 20 st VALUES(NULL,
1230: 27 6f 6e 65 27 29 3b 0d 0a 49 4e 53 45 52 54 20 'one');..INSERT
1240: 49 4e 54 4f 20 74 65 73 74 20 56 41 4c 55 45 53 INTO test VALUES
1250: 28 4e 55 4c 4c 2c 20 27 74 77 6f 27 29 3b 0d 0a (NULL, 'two');..
1260: 49 4e 53 45 52 54 20 49 4e 54 4f 20 74 65 73 74 INSERT INTO test
1270: 20 56 41 4c 55 45 53 28 4e 55 4c 4c 2c 20 27 74 VALUES(NULL, 't
1280: 68 72 65 65 27 29 3b 0d 0a 49 4e 53 45 52 54 20 hree');..INSERT
1290: 49 4e 54 4f 20 74 65 73 74 20 56 41 4c 55 45 53 INTO test VALUES
12a0: 28 4e 55 4c 4c 2c 20 27 66 6f 75 72 27 29 3b 0d (NULL, 'four');.
12b0: 0a 49 4e 53 45 52 54 20 49 4e 54 4f 20 74 65 73 .INSERT INTO tes
12c0: 74 20 56 41 4c 55 45 53 28 4e 55 4c 4c 2c 20 27 t VALUES(NULL, '
12d0: 66 69 76 65 27 29 3b 0d 0a 2d 2d 20 63 6f 6d 6d five');..-- comm
12e0: 69 74 74 69 6e 67 20 74 68 65 20 70 65 6e 64 69 itting the pendi
12f0: 6e 67 20 74 72 61 6e 73 61 63 74 69 6f 6e 0d 0a ng transaction..
1300: 43 4f 4d 4d 49 54 3b 0d 0a 2d 2d 20 74 68 65 6e COMMIT;..-- then
1310: 20 70 61 75 73 69 6e 67 0d 0a 53 45 4c 45 43 54 pausing..SELECT
1320: 20 50 61 75 73 65 28 29 3b 0d 0a 0d 0a 2d 2d 20 Pause();....--
1330: 69 6e 73 65 72 74 69 6e 67 20 6d 6f 72 65 20 72 inserting more r
1340: 6f 77 73 2c 20 74 68 65 6e 20 70 61 75 73 69 6e ows, then pausin
1350: 67 20 61 67 61 69 6e 0d 0a 42 45 47 49 4e 3b 0d g again..BEGIN;.
1360: 0a 49 4e 53 45 52 54 20 49 4e 54 4f 20 74 65 73 .INSERT INTO tes
1370: 74 20 56 41 4c 55 45 53 28 4e 55 4c 4c 2c 20 27 t VALUES(NULL, '
1380: 73 69 78 27 29 3b 0d 0a 49 4e 53 45 52 54 20 49 six');..INSERT I
1390: 4e 54 4f 20 74 65 73 74 20 56 41 4c 55 45 53 28 NTO test VALUES(
13a0: 4e 55 4c 4c 2c 20 27 73 65 76 65 6e 27 29 3b 0d NULL, 'seven');.
13b0: 0a 49 4e 53 45 52 54 20 49 4e 54 4f 20 74 65 73 .INSERT INTO tes
13c0: 74 20 56 41 4c 55 45 53 28 4e 55 4c 4c 2c 20 27 t VALUES(NULL, '
13d0: 65 69 67 68 74 27 29 3b 0d 0a 49 4e 53 45 52 54 eight');..INSERT
13e0: 20 49 4e 54 4f 20 74 65 73 74 20 56 41 4c 55 45 INTO test VALUE
13f0: 53 28 4e 55 4c 4c 2c 20 27 6e 69 6e 65 27 29 3b S(NULL, 'nine');
1400: 0d 0a 49 4e 53 45 52 54 20 49 4e 54 4f 20 74 65 ..INSERT INTO te
1410: 73 74 20 56 41 4c 55 45 53 28 4e 55 4c 4c 2c 20 st VALUES(NULL,
1420: 27 74 65 6e 27 29 3b 0d 0a 43 4f 4d 4d 49 54 3b 'ten');..COMMIT;
1430: 0d 0a 53 45 4c 45 43 54 20 50 61 75 73 65 28 29 ..SELECT Pause()
1440: 3b 0d 0a 0d 0a 2d 2d 20 69 6e 73 65 72 74 69 6e ;....-- insertin
1450: 67 20 74 68 65 20 6c 61 73 74 20 62 6c 6f 63 6b g the last block
1460: 20 6f 66 20 72 6f 77 73 2c 20 74 68 65 6e 20 65 of rows, then e
1470: 78 69 74 69 6e 67 0d 0a 42 45 47 49 4e 3b 0d 0a xiting..BEGIN;..
1480: 49 4e 53 45 52 54 20 49 4e 54 4f 20 74 65 73 74 INSERT INTO test
1490: 20 56 41 4c 55 45 53 28 4e 55 4c 4c 2c 20 27 65 VALUES(NULL, 'e
14a0: 6c 65 76 65 6e 27 29 3b 0d 0a 49 4e 53 45 52 54 leven');..INSERT
14b0: 20 49 4e 54 4f 20 74 65 73 74 20 56 41 4c 55 45 INTO test VALUE
14c0: 53 28 4e 55 4c 4c 2c 20 27 74 77 65 6c 76 65 27 S(NULL, 'twelve'
14d0: 29 3b 0d 0a 49 4e 53 45 52 54 20 49 4e 54 4f 20 );..INSERT INTO
14e0: 74 65 73 74 20 56 41 4c 55 45 53 28 4e 55 4c 4c test VALUES(NULL
14f0: 2c 20 27 74 68 69 72 74 65 65 6e 27 29 3b 0d 0a , 'thirteen');..
1500: 49 4e 53 45 52 54 20 49 4e 54 4f 20 74 65 73 74 INSERT INTO test
1510: 20 56 41 4c 55 45 53 28 4e 55 4c 4c 2c 20 27 66 VALUES(NULL, 'f
1520: 6f 75 72 74 65 65 6e 27 29 3b 0d 0a 49 4e 53 45 ourteen');..INSE
1530: 52 54 20 49 4e 54 4f 20 74 65 73 74 20 56 41 4c RT INTO test VAL
1540: 55 45 53 28 4e 55 4c 4c 2c 20 27 66 69 66 74 65 UES(NULL, 'fifte
1550: 65 6e 27 29 3b 0d 0a 49 4e 53 45 52 54 20 49 4e en');..INSERT IN
1560: 54 4f 20 74 65 73 74 20 56 41 4c 55 45 53 28 4e TO test VALUES(N
1570: 55 4c 4c 2c 20 27 73 69 78 74 65 65 6e 27 29 3b ULL, 'sixteen');
1580: 0d 0a 49 4e 53 45 52 54 20 49 4e 54 4f 20 74 65 ..INSERT INTO te
1590: 73 74 20 56 41 4c 55 45 53 28 4e 55 4c 4c 2c 20 st VALUES(NULL,
15a0: 27 73 65 76 65 6e 74 65 65 6e 27 29 3b 0d 0a 49 'seventeen');..I
15b0: 4e 53 45 52 54 20 49 4e 54 4f 20 74 65 73 74 20 NSERT INTO test
15c0: 56 41 4c 55 45 53 28 4e 55 4c 4c 2c 20 27 65 69 VALUES(NULL, 'ei
15d0: 67 68 74 65 65 6e 27 29 3b 0d 0a 49 4e 53 45 52 ghteen');..INSER
15e0: 54 20 49 4e 54 4f 20 74 65 73 74 20 56 41 4c 55 T INTO test VALU
15f0: 45 53 28 4e 55 4c 4c 2c 20 27 6e 69 6e 65 74 65 ES(NULL, 'ninete
1600: 65 6e 27 29 3b 0d 0a 49 4e 53 45 52 54 20 49 4e en');..INSERT IN
1610: 54 4f 20 74 65 73 74 20 56 41 4c 55 45 53 28 4e TO test VALUES(N
1620: 55 4c 4c 2c 20 27 74 77 65 6e 74 79 27 29 3b 0d ULL, 'twenty');.
1630: 0a 43 4f 4d 4d 49 54 3b 0d 0a 0d 0a 2d 2d 20 65 .COMMIT;....-- e
1640: 6e 64 20 6a 6f 62 20 2d 20 61 6c 6c 20 64 6f 6e nd job - all don
1650: 65 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a e..</verbatim>..
1660: 3c 62 72 3e 0d 0a 54 68 69 73 20 69 73 20 61 20 <br>..This is a
1670: 76 65 72 79 20 73 69 6d 70 6c 65 20 28 61 6e 64 very simple (and
1680: 20 73 74 75 70 69 64 29 20 53 51 4c 20 53 63 72 stupid) SQL Scr
1690: 69 70 74 2c 20 62 75 74 20 69 74 27 73 20 65 6e ipt, but it's en
16a0: 6f 75 67 68 20 74 6f 20 70 72 61 63 74 69 63 61 ough to practica
16b0: 6c 6c 79 20 74 65 73 74 20 68 6f 77 20 3c 62 3e lly test how <b>
16c0: 50 61 75 73 65 28 29 3c 2f 62 3e 20 77 6f 72 6b Pause()</b> work
16d0: 73 2e 3c 62 72 3e 0d 0a 3c 62 3e 3c 75 3e 4e 6f s.<br>..<b><u>No
16e0: 74 65 3c 2f 75 3e 3c 2f 62 3e 3a 20 74 68 65 20 te</u></b>: the
16f0: 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f implementation o
1700: 66 20 3c 62 3e 50 61 75 73 65 28 29 3c 2f 62 3e f <b>Pause()</b>
1710: 20 61 6c 6d 6f 73 74 20 63 6f 6d 70 6c 65 74 65 almost complete
1720: 6c 79 20 64 69 66 66 65 72 73 20 6f 6e 20 4c 69 ly differs on Li
1730: 6e 75 78 20 61 6e 64 20 57 69 6e 64 6f 77 73 3b nux and Windows;
1740: 20 70 6c 65 61 73 65 20 72 65 61 64 20 74 68 65 please read the
1750: 20 61 70 70 72 6f 70 72 69 61 74 65 20 73 65 63 appropriate sec
1760: 74 69 6f 6e 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c tion.<br><br>..<
1770: 68 72 3e 0d 0a 3c 68 33 3e 55 73 69 6e 67 20 50 hr>..<h3>Using P
1780: 61 75 73 65 28 29 20 6f 6e 20 4c 69 6e 75 78 3c ause() on Linux<
1790: 2f 68 33 3e 0d 0a 54 68 65 20 4c 69 6e 75 78 20 /h3>..The Linux
17a0: 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 69 implementation i
17b0: 73 20 66 75 6c 6c 79 20 62 61 73 65 64 20 6f 6e s fully based on
17c0: 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a <a href="https:
17d0: 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 69 61 2e 6f //en.wikipedia.o
17e0: 72 67 2f 77 69 6b 69 2f 53 69 67 6e 61 6c 5f 28 rg/wiki/Signal_(
17f0: 49 50 43 29 23 50 4f 53 49 58 5f 73 69 67 6e 61 IPC)#POSIX_signa
1800: 6c 73 22 3e 73 79 73 74 65 6d 20 73 69 67 6e 61 ls">system signa
1810: 6c 73 3c 2f 61 3e 3b 20 74 68 65 20 73 61 6d 65 ls</a>; the same
1820: 20 61 70 70 72 6f 61 63 68 20 61 70 70 6c 69 65 approach applie
1830: 73 20 74 6f 20 61 6e 79 20 55 6e 69 78 20 61 6e s to any Unix an
1840: 64 20 55 6e 69 78 2d 6c 69 6b 65 20 73 79 73 74 d Unix-like syst
1850: 65 6d 2c 20 74 68 69 73 20 69 6e 63 6c 75 64 69 em, this includi
1860: 6e 67 20 4d 61 63 20 4f 53 20 58 2e 3c 62 72 3e ng Mac OS X.<br>
1870: 0d 0a 4d 6f 72 65 20 73 70 65 63 69 66 69 63 61 ..More specifica
1880: 6c 6c 79 20 69 74 27 73 20 62 61 73 65 64 20 6f lly it's based o
1890: 6e 20 3c 62 3e 53 49 47 53 54 4f 50 3c 2f 62 3e n <b>SIGSTOP</b>
18a0: 20 61 6e 64 20 3c 62 3e 53 49 47 43 4f 4e 54 3c and <b>SIGCONT<
18b0: 2f 62 3e 20 73 69 67 6e 61 6c 73 3a 0d 0a 3c 6c /b> signals:..<l
18c0: 69 3e 3c 62 3e 53 49 47 53 54 4f 50 3c 2f 62 3e i><b>SIGSTOP</b>
18d0: 20 69 6e 73 74 72 75 63 74 73 20 74 68 65 20 6f instructs the o
18e0: 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 20 perating system
18f0: 74 6f 20 73 74 6f 70 20 74 68 65 20 63 61 6c 6c to stop the call
1900: 69 6e 67 20 70 72 6f 63 65 73 73 20 66 6f 72 20 ing process for
1910: 6c 61 74 65 72 20 72 65 73 75 6d 70 74 69 6f 6e later resumption
1920: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 53 .</li>..<li><b>S
1930: 49 47 43 4f 4e 54 3c 2f 62 3e 20 69 6e 73 74 72 IGCONT</b> instr
1940: 75 63 74 73 20 74 68 65 20 6f 70 65 72 61 74 69 ucts the operati
1950: 6e 67 20 73 79 73 74 65 6d 20 74 6f 20 63 6f 6e ng system to con
1960: 74 69 6e 75 65 20 28 72 65 73 74 61 72 74 29 20 tinue (restart)
1970: 74 68 65 20 70 72 6f 63 65 73 73 20 70 72 65 76 the process prev
1980: 69 6f 75 73 6c 79 20 70 61 75 73 65 64 20 62 79 iously paused by
1990: 20 74 68 65 20 53 49 47 53 54 4f 50 2e 3c 2f 6c the SIGSTOP.</l
19a0: 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 68 33 3e 73 i>..</ul>..<h3>s
19b0: 74 65 70 20 23 31 3c 2f 68 33 3e 0d 0a 3c 76 65 tep #1</h3>..<ve
19c0: 72 62 61 74 69 6d 3e 0d 0a 24 20 73 70 61 74 69 rbatim>..$ spati
19d0: 61 6c 69 74 65 20 70 61 75 73 65 2e 73 71 6c 69 alite pause.sqli
19e0: 74 65 0d 0a 0d 0a 53 45 4c 45 43 54 20 45 6e 61 te....SELECT Ena
19f0: 62 6c 65 50 61 75 73 65 28 29 3b 0d 0a 2e 72 65 blePause();...re
1a00: 61 64 20 74 65 73 74 5f 70 61 75 73 65 2e 73 71 ad test_pause.sq
1a10: 6c 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a l..</verbatim>..
1a20: 57 65 27 6c 6c 20 73 74 61 72 74 20 66 69 72 73 We'll start firs
1a30: 74 20 62 79 20 69 6e 76 6f 6b 69 6e 67 20 74 68 t by invoking th
1a40: 65 20 3c 62 3e 73 70 61 74 69 61 6c 69 74 65 3c e <b>spatialite<
1a50: 2f 62 3e 20 43 4c 49 20 74 6f 6f 6c 2e 3c 62 72 /b> CLI tool.<br
1a60: 3e 0d 0a 54 68 65 6e 20 77 65 27 6c 6c 20 63 61 >..Then we'll ca
1a70: 6c 6c 20 3c 62 3e 45 6e 61 62 6c 65 50 61 75 73 ll <b>EnablePaus
1a80: 65 28 29 3c 2f 62 3e 2c 20 61 6e 64 20 66 69 6e e()</b>, and fin
1a90: 61 6c 6c 79 20 77 65 27 6c 6c 20 65 78 65 63 75 ally we'll execu
1aa0: 74 65 20 74 68 65 20 53 51 4c 20 53 63 72 69 70 te the SQL Scrip
1ab0: 74 2e 0d 0a 3c 68 33 3e 73 74 65 70 20 23 32 3c t...<h3>step #2<
1ac0: 2f 68 33 3e 0d 0a 3c 76 65 72 62 61 74 69 6d 3e /h3>..<verbatim>
1ad0: 0d 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ..**************
1ae0: 2a 20 20 50 41 55 53 45 20 20 2a 2a 2a 2a 2a 2a * PAUSE ******
1af0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d 0a 63 6f 6d 6d 61 *********..comma
1b00: 6e 64 20 66 6f 72 20 72 65 73 75 6d 69 6e 67 20 nd for resuming
1b10: 65 78 65 63 75 74 69 6f 6e 20 69 73 3a 0d 0a 6b execution is:..k
1b20: 69 6c 6c 20 2d 53 49 47 43 4f 4e 54 20 31 32 33 ill -SIGCONT 123
1b30: 34 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 4..</verbatim>..
1b40: 57 68 65 6e 20 74 68 65 20 53 51 4c 20 53 63 72 When the SQL Scr
1b50: 69 70 74 20 65 78 65 63 75 74 65 73 20 74 68 65 ipt executes the
1b60: 20 66 69 72 73 74 20 3c 62 3e 50 61 75 73 65 28 first <b>Pause(
1b70: 29 3c 2f 62 3e 20 69 74 20 77 69 6c 6c 20 62 65 )</b> it will be
1b80: 20 73 75 73 70 65 6e 64 65 64 2c 20 61 6e 64 20 suspended, and
1b90: 61 20 6d 65 73 73 61 67 65 20 6c 69 6e 65 20 77 a message line w
1ba0: 69 6c 6c 20 62 65 20 70 72 69 6e 74 65 64 20 6f ill be printed o
1bb0: 6e 20 74 68 65 20 73 68 65 6c 6c 2e 3c 62 72 3e n the shell.<br>
1bc0: 0d 0a 54 68 65 20 6d 65 73 73 61 67 65 20 77 69 ..The message wi
1bd0: 6c 6c 20 72 65 70 6f 72 74 20 74 68 65 20 3c 62 ll report the <b
1be0: 3e 6b 69 6c 6c 3c 2f 62 3e 20 63 6f 6d 6d 61 6e >kill</b> comman
1bf0: 64 20 72 65 71 75 69 72 65 64 20 74 6f 20 72 65 d required to re
1c00: 73 75 6d 65 20 65 78 65 63 75 74 69 6f 6e 2e 20 sume execution.
1c10: 3c 62 3e 4e 6f 74 65 3c 2f 62 3e 3a 20 31 32 33 <b>Note</b>: 123
1c20: 34 20 77 69 6c 6c 20 62 65 20 61 63 74 75 61 6c 4 will be actual
1c30: 6c 79 20 72 65 70 6c 61 63 65 64 20 62 79 20 74 ly replaced by t
1c40: 68 65 20 63 75 72 72 65 6e 74 20 3c 62 3e 50 49 he current <b>PI
1c50: 44 3c 2f 62 3e 2c 20 74 68 61 74 20 69 73 20 74 D</b>, that is t
1c60: 68 65 20 75 6e 69 71 75 65 20 69 64 65 6e 74 69 he unique identi
1c70: 66 69 65 72 20 6f 66 20 74 68 65 20 70 72 6f 63 fier of the proc
1c80: 65 73 73 20 72 75 6e 6e 69 6e 67 20 74 68 65 20 ess running the
1c90: 53 51 4c 20 53 63 72 69 70 74 2e 0d 0a 3c 62 72 SQL Script...<br
1ca0: 3e 3c 62 72 3e 0d 0a 4e 6f 77 20 79 6f 75 27 6c ><br>..Now you'l
1cb0: 6c 20 62 65 20 66 72 65 65 20 74 6f 20 62 65 67 l be free to beg
1cc0: 69 6e 20 79 6f 75 20 64 65 62 75 67 67 69 6e 67 in you debugging
1cd0: 20 61 63 74 69 76 69 74 69 65 73 20 62 79 20 73 activities by s
1ce0: 74 61 72 74 69 6e 67 20 61 20 73 65 63 6f 6e 64 tarting a second
1cf0: 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 74 6f 20 74 connection to t
1d00: 68 65 20 73 61 6d 65 20 77 6f 72 6b 20 64 61 74 he same work dat
1d10: 61 62 61 73 65 2e 3c 62 72 3e 0d 0a 0d 0a 3c 68 abase.<br>....<h
1d20: 33 3e 73 74 65 70 20 23 33 3c 2f 68 33 3e 0d 0a 3>step #3</h3>..
1d30: 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 24 20 6b 69 <verbatim>..$ ki
1d40: 6c 6c 20 2d 53 49 47 43 4f 4e 54 20 31 32 33 34 ll -SIGCONT 1234
1d50: 0d 0a 0d 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ....************
1d60: 2a 2a 2a 20 53 49 47 43 4f 4e 54 3a 20 72 65 73 *** SIGCONT: res
1d70: 75 6d 69 6e 67 20 65 78 65 63 75 74 69 6f 6e 20 uming execution
1d80: 61 66 74 65 72 20 50 41 55 53 45 0d 0a 3c 2f 76 after PAUSE..</v
1d90: 65 72 62 61 74 69 6d 3e 0d 0a 4f 6e 63 65 20 79 erbatim>..Once y
1da0: 6f 75 27 76 65 20 63 6f 6d 70 6c 65 74 65 64 20 ou've completed
1db0: 61 6e 79 20 72 65 71 75 69 72 65 64 20 64 65 62 any required deb
1dc0: 75 67 20 61 63 74 69 76 69 74 79 2c 20 79 6f 75 ug activity, you
1dd0: 20 61 72 65 20 73 69 6d 70 6c 79 20 72 65 71 75 are simply requ
1de0: 69 72 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 ired to execute
1df0: 74 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 20 the appropriate
1e00: 3c 62 3e 6b 69 6c 6c 3c 2f 62 3e 20 63 6f 6d 6d <b>kill</b> comm
1e10: 61 6e 64 20 66 6f 72 20 72 65 73 75 6d 69 6e 67 and for resuming
1e20: 20 74 68 65 20 6f 72 64 69 6e 61 72 79 20 65 78 the ordinary ex
1e30: 65 63 75 74 69 6f 6e 20 6f 66 20 74 68 65 20 53 ecution of the S
1e40: 51 4c 20 53 63 72 69 70 74 2e 3c 62 72 3e 0d 0a QL Script.<br>..
1e50: 49 6e 20 74 68 69 73 20 63 61 73 65 20 74 6f 6f In this case too
1e60: 20 61 20 63 6f 6e 66 69 72 6d 61 74 69 6f 6e 20 a confirmation
1e70: 6d 65 73 73 61 67 65 20 77 69 6c 6c 20 62 65 20 message will be
1e80: 70 72 69 6e 74 65 64 20 6f 6e 20 74 68 65 20 73 printed on the s
1e90: 68 65 6c 6c 2e 0d 0a 3c 68 33 3e 73 74 65 70 73 hell...<h3>steps
1ea0: 20 23 34 20 61 6e 64 20 23 35 3c 2f 68 33 3e 0d #4 and #5</h3>.
1eb0: 0a 54 68 65 20 73 61 6d 65 20 73 65 71 75 65 6e .The same sequen
1ec0: 63 65 20 6f 66 20 65 76 65 6e 74 73 20 77 69 6c ce of events wil
1ed0: 6c 20 72 65 70 65 61 74 20 61 67 61 69 6e 20 77 l repeat again w
1ee0: 68 65 6e 20 74 68 65 20 73 65 63 6f 6e 64 20 3c hen the second <
1ef0: 62 3e 50 61 75 73 65 28 29 3c 2f 62 3e 20 77 69 b>Pause()</b> wi
1f00: 6c 6c 20 62 65 20 70 72 6f 63 65 73 73 65 64 2e ll be processed.
1f10: 3c 62 72 3e 0d 0a 54 68 69 73 20 74 69 6d 65 2c <br>..This time,
1f20: 20 61 66 74 65 72 20 72 65 73 75 6d 69 6e 67 20 after resuming
1f30: 65 78 65 63 75 74 69 6f 6e 20 74 68 65 20 53 51 execution the SQ
1f40: 4c 20 53 63 72 69 70 74 20 77 69 6c 6c 20 66 69 L Script will fi
1f50: 6e 61 6c 6c 79 20 73 74 6f 70 2e 0d 0a 3c 62 72 nally stop...<br
1f60: 3e 3c 62 72 3e 0d 0a 3c 68 72 3e 0d 0a 3c 68 33 ><br>..<hr>..<h3
1f70: 3e 55 73 69 6e 67 20 50 61 75 73 65 28 29 20 6f >Using Pause() o
1f80: 6e 20 57 69 6e 64 6f 77 73 3c 2f 68 33 3e 0d 0a n Windows</h3>..
1f90: 54 68 65 20 57 69 6e 64 6f 77 73 20 69 6d 70 6c The Windows impl
1fa0: 65 6d 65 6e 74 61 74 69 6f 6e 20 69 73 20 62 61 ementation is ba
1fb0: 73 65 64 20 6f 6e 20 74 68 65 20 3c 61 20 68 72 sed on the <a hr
1fc0: 65 66 3d 22 68 74 74 70 73 3a 2f 2f 64 6f 63 73 ef="https://docs
1fd0: 2e 6d 69 63 72 6f 73 6f 66 74 2e 63 6f 6d 2f 65 .microsoft.com/e
1fe0: 6e 2d 75 73 2f 77 69 6e 64 6f 77 73 2f 63 6f 6e n-us/windows/con
1ff0: 73 6f 6c 65 2f 72 65 61 64 63 6f 6e 73 6f 6c 65 sole/readconsole
2000: 69 6e 70 75 74 22 3e 52 65 61 64 43 6f 6e 73 6f input">ReadConso
2010: 6c 65 49 6e 70 75 74 28 29 3c 2f 61 3e 20 73 79 leInput()</a> sy
2020: 73 74 65 6d 20 41 50 49 2e 3c 62 72 3e 3c 62 72 stem API.<br><br
2030: 3e 0d 0a 3c 62 3e 3c 75 3e 4e 6f 74 65 3c 2f 75 >..<b><u>Note</u
2040: 3e 3c 2f 62 3e 3a 20 74 68 65 72 65 20 69 73 20 ></b>: there is
2050: 61 20 73 74 72 69 6b 69 6e 67 20 64 69 66 66 65 a striking diffe
2060: 72 65 6e 63 65 20 66 72 6f 6d 20 74 68 65 20 55 rence from the U
2070: 6e 69 78 2f 4c 69 6e 75 78 20 61 70 70 72 6f 61 nix/Linux approa
2080: 63 68 2e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 6f ch...<ul>..<li>o
2090: 6e 20 4c 69 6e 75 78 20 65 76 65 72 79 20 70 72 n Linux every pr
20a0: 6f 63 65 73 73 20 77 69 6c 6c 20 61 6c 77 61 79 ocess will alway
20b0: 73 20 72 65 73 70 65 63 74 20 73 79 73 74 65 6d s respect system
20c0: 20 73 69 67 6e 61 6c 73 20 73 75 63 68 20 61 73 signals such as
20d0: 20 53 49 47 53 54 4f 50 20 61 6e 64 20 53 49 47 SIGSTOP and SIG
20e0: 43 4f 4e 54 2c 20 77 69 74 68 20 6e 6f 20 70 6f CONT, with no po
20f0: 73 73 69 62 6c 65 20 65 78 63 65 70 74 69 6f 6e ssible exception
2100: 2e 3c 62 72 3e 0d 0a 41 6e 64 20 74 68 69 73 20 .<br>..And this
2110: 69 6e 64 69 66 66 65 72 65 6e 74 6c 79 20 61 70 indifferently ap
2120: 70 6c 69 65 73 20 74 6f 20 62 6f 74 68 20 43 4c plies to both CL
2130: 49 20 61 6e 64 20 47 55 49 20 61 70 70 6c 69 63 I and GUI applic
2140: 61 74 69 6f 6e 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c ations.</li>..<l
2150: 69 3e 6f 6e 20 57 69 6e 64 6f 77 73 20 61 64 6f i>on Windows ado
2160: 70 74 69 6e 67 20 61 6e 20 61 70 70 72 6f 61 63 pting an approac
2170: 68 20 62 61 73 65 64 20 6f 6e 20 43 6f 6e 73 6f h based on Conso
2180: 6c 65 20 49 6e 70 75 74 20 69 6d 70 6c 69 65 73 le Input implies
2190: 20 74 77 6f 20 72 65 6c 65 76 61 6e 74 20 6c 69 two relevant li
21a0: 6d 69 74 61 74 69 6f 6e 73 3a 0d 0a 3c 75 6c 3e mitations:..<ul>
21b0: 0d 0a 3c 6c 69 3e 6f 6e 6c 79 20 61 20 70 72 6f ..<li>only a pro
21c0: 63 65 73 73 20 73 74 61 72 74 65 64 20 66 72 6f cess started fro
21d0: 6d 20 74 68 65 20 3c 62 3e 43 4d 44 2e 65 78 65 m the <b>CMD.exe
21e0: 3c 2f 62 3e 20 63 6f 6d 6d 61 6e 64 20 73 68 65 </b> command she
21f0: 6c 6c 20 63 61 6e 20 68 61 76 65 20 69 74 73 20 ll can have its
2200: 6f 77 6e 20 43 6f 6e 73 6f 6c 65 2e 3c 62 72 3e own Console.<br>
2210: 0d 0a 42 75 74 20 61 20 70 72 6f 63 65 73 73 20 ..But a process
2220: 73 74 61 72 74 65 64 20 62 79 20 64 69 72 65 63 started by direc
2230: 74 6c 79 20 63 6c 69 63 6b 69 6e 67 20 74 68 65 tly clicking the
2240: 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 69 corresponding i
2250: 63 6f 6e 20 77 69 6c 6c 20 6e 65 76 65 72 20 62 con will never b
2260: 65 20 63 6f 6e 6e 65 63 74 65 64 20 74 6f 20 61 e connected to a
2270: 20 43 6f 6e 73 6f 6c 65 2c 20 61 6e 64 20 63 6f Console, and co
2280: 6e 73 65 71 75 65 6e 74 6c 79 20 3c 62 3e 50 61 nsequently <b>Pa
2290: 75 73 65 28 29 3c 2f 62 3e 20 77 69 6c 6c 20 6e use()</b> will n
22a0: 65 76 65 72 20 77 6f 72 6b 2e 3c 2f 6c 69 3e 0d ever work.</li>.
22b0: 0a 3c 6c 69 3e 41 6e 64 20 65 76 65 6e 20 69 6e .<li>And even in
22c0: 20 74 68 65 20 63 61 73 65 20 6f 66 20 61 20 70 the case of a p
22d0: 72 6f 63 65 73 73 20 73 74 61 72 74 65 64 20 62 rocess started b
22e0: 79 20 3c 62 3e 43 4d 44 2e 65 78 65 3c 2f 62 3e y <b>CMD.exe</b>
22f0: 20 61 6e 20 65 76 65 6e 74 75 61 6c 20 72 65 64 an eventual red
2300: 69 72 65 63 74 69 6f 6e 20 6f 66 20 74 68 65 20 irection of the
2310: 3c 62 3e 53 74 61 6e 64 61 72 64 20 49 6e 70 75 <b>Standard Inpu
2320: 74 3c 2f 62 3e 20 77 69 6c 6c 20 66 6f 72 62 69 t</b> will forbi
2330: 64 20 61 20 77 6f 72 6b 69 6e 67 20 3c 62 3e 50 d a working <b>P
2340: 61 75 73 65 28 29 3c 2f 62 3e 2e 3c 2f 6c 69 3e ause()</b>.</li>
2350: 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 2f ..</ul></li>..</
2360: 75 6c 3e 0d 0a 3c 68 33 3e 73 74 65 70 20 23 31 ul>..<h3>step #1
2370: 3c 2f 68 33 3e 0d 0a 3c 76 65 72 62 61 74 69 6d </h3>..<verbatim
2380: 3e 0d 0a 3e 20 73 70 61 74 69 61 6c 69 74 65 20 >..> spatialite
2390: 70 61 75 73 65 2e 73 71 6c 69 74 65 0d 0a 0d 0a pause.sqlite....
23a0: 53 45 4c 45 43 54 20 45 6e 61 62 6c 65 50 61 75 SELECT EnablePau
23b0: 73 65 28 29 3b 0d 0a 2e 72 65 61 64 20 74 65 73 se();...read tes
23c0: 74 5f 70 61 75 73 65 2e 73 71 6c 0d 0a 3c 2f 76 t_pause.sql..</v
23d0: 65 72 62 61 74 69 6d 3e 0d 0a 57 65 27 6c 6c 20 erbatim>..We'll
23e0: 73 74 61 72 74 20 66 69 72 73 74 20 62 79 20 69 start first by i
23f0: 6e 76 6f 6b 69 6e 67 20 74 68 65 20 3c 62 3e 73 nvoking the <b>s
2400: 70 61 74 69 61 6c 69 74 65 3c 2f 62 3e 20 43 4c patialite</b> CL
2410: 49 20 74 6f 6f 6c 20 66 72 6f 6d 20 3c 62 3e 43 I tool from <b>C
2420: 4d 44 2e 65 78 65 3c 2f 62 3e 2e 3c 62 72 3e 0d MD.exe</b>.<br>.
2430: 0a 54 68 65 6e 20 77 65 27 6c 6c 20 63 61 6c 6c .Then we'll call
2440: 20 3c 62 3e 45 6e 61 62 6c 65 50 61 75 73 65 28 <b>EnablePause(
2450: 29 3c 2f 62 3e 2c 20 61 6e 64 20 66 69 6e 61 6c )</b>, and final
2460: 6c 79 20 77 65 27 6c 6c 20 65 78 65 63 75 74 65 ly we'll execute
2470: 20 74 68 65 20 53 51 4c 20 53 63 72 69 70 74 2e the SQL Script.
2480: 0d 0a 3c 68 33 3e 73 74 65 70 20 23 32 3c 2f 68 ..<h3>step #2</h
2490: 33 3e 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 3>..<verbatim>..
24a0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 20 ***************
24b0: 20 50 41 55 53 45 20 20 2a 2a 2a 2a 2a 2a 2a 2a PAUSE ********
24c0: 2a 2a 2a 2a 2a 2a 2a 20 20 48 69 74 20 61 6e 79 ******* Hit any
24d0: 20 6b 65 79 20 74 6f 20 63 6f 6e 74 69 6e 75 65 key to continue
24e0: 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 57 ..</verbatim>..W
24f0: 68 65 6e 20 74 68 65 20 53 51 4c 20 53 63 72 69 hen the SQL Scri
2500: 70 74 20 65 78 65 63 75 74 65 73 20 74 68 65 20 pt executes the
2510: 66 69 72 73 74 20 3c 62 3e 50 61 75 73 65 28 29 first <b>Pause()
2520: 3c 2f 62 3e 20 69 74 20 77 69 6c 6c 20 62 65 20 </b> it will be
2530: 73 75 73 70 65 6e 64 65 64 2c 20 61 6e 64 20 61 suspended, and a
2540: 20 6d 65 73 73 61 67 65 20 6c 69 6e 65 20 77 69 message line wi
2550: 6c 6c 20 62 65 20 70 72 69 6e 74 65 64 20 6f 6e ll be printed on
2560: 20 74 68 65 20 73 68 65 6c 6c 2e 0d 0a 3c 62 72 the shell...<br
2570: 3e 3c 62 72 3e 0d 0a 4e 6f 77 20 79 6f 75 27 6c ><br>..Now you'l
2580: 6c 20 62 65 20 66 72 65 65 20 74 6f 20 62 65 67 l be free to beg
2590: 69 6e 20 79 6f 75 20 64 65 62 75 67 67 69 6e 67 in you debugging
25a0: 20 61 63 74 69 76 69 74 69 65 73 20 62 79 20 73 activities by s
25b0: 74 61 72 74 69 6e 67 20 61 20 73 65 63 6f 6e 64 tarting a second
25c0: 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 74 6f 20 74 connection to t
25d0: 68 65 20 73 61 6d 65 20 77 6f 72 6b 20 64 61 74 he same work dat
25e0: 61 62 61 73 65 2e 3c 62 72 3e 0d 0a 0d 0a 3c 68 abase.<br>....<h
25f0: 33 3e 73 74 65 70 20 23 33 3c 2f 68 33 3e 0d 0a 3>step #3</h3>..
2600: 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 3c 3c 6b 65 <verbatim>..<<ke
2610: 79 3e 3e 0d 0a 0d 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a y>>....*********
2620: 2a 2a 2a 2a 2a 2a 20 72 65 73 75 6d 69 6e 67 20 ****** resuming
2630: 65 78 65 63 75 74 69 6f 6e 20 61 66 74 65 72 20 execution after
2640: 50 41 55 53 45 0d 0a 3c 2f 76 65 72 62 61 74 69 PAUSE..</verbati
2650: 6d 3e 0d 0a 4f 6e 63 65 20 79 6f 75 27 76 65 20 m>..Once you've
2660: 63 6f 6d 70 6c 65 74 65 64 20 61 6e 79 20 72 65 completed any re
2670: 71 75 69 72 65 64 20 64 65 62 75 67 20 61 63 74 quired debug act
2680: 69 76 69 74 79 2c 20 79 6f 75 20 61 72 65 20 73 ivity, you are s
2690: 69 6d 70 6c 79 20 72 65 71 75 69 72 65 64 20 74 imply required t
26a0: 6f 20 70 72 65 73 73 20 61 6e 79 20 6b 65 79 62 o press any keyb
26b0: 6f 61 72 64 20 6b 65 79 20 66 6f 72 20 72 65 73 oard key for res
26c0: 75 6d 69 6e 67 20 74 68 65 20 6f 72 64 69 6e 61 uming the ordina
26d0: 72 79 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 ry execution of
26e0: 74 68 65 20 53 51 4c 20 53 63 72 69 70 74 2e 3c the SQL Script.<
26f0: 62 72 3e 0d 0a 49 6e 20 74 68 69 73 20 63 61 73 br>..In this cas
2700: 65 20 74 6f 6f 20 61 20 63 6f 6e 66 69 72 6d 61 e too a confirma
2710: 74 69 6f 6e 20 6d 65 73 73 61 67 65 20 77 69 6c tion message wil
2720: 6c 20 62 65 20 70 72 69 6e 74 65 64 20 6f 6e 20 l be printed on
2730: 74 68 65 20 73 68 65 6c 6c 2e 0d 0a 3c 68 33 3e the shell...<h3>
2740: 73 74 65 70 73 20 23 34 20 61 6e 64 20 23 35 3c steps #4 and #5<
2750: 2f 68 33 3e 0d 0a 54 68 65 20 73 61 6d 65 20 73 /h3>..The same s
2760: 65 71 75 65 6e 63 65 20 6f 66 20 65 76 65 6e 74 equence of event
2770: 73 20 77 69 6c 6c 20 72 65 70 65 61 74 20 61 67 s will repeat ag
2780: 61 69 6e 20 77 68 65 6e 20 74 68 65 20 73 65 63 ain when the sec
2790: 6f 6e 64 20 3c 62 3e 50 61 75 73 65 28 29 3c 2f ond <b>Pause()</
27a0: 62 3e 20 77 69 6c 6c 20 62 65 20 70 72 6f 63 65 b> will be proce
27b0: 73 73 65 64 2e 3c 62 72 3e 0d 0a 54 68 69 73 20 ssed.<br>..This
27c0: 74 69 6d 65 2c 20 61 66 74 65 72 20 72 65 73 75 time, after resu
27d0: 6d 69 6e 67 20 65 78 65 63 75 74 69 6f 6e 20 74 ming execution t
27e0: 68 65 20 53 51 4c 20 53 63 72 69 70 74 20 77 69 he SQL Script wi
27f0: 6c 6c 20 66 69 6e 61 6c 6c 79 20 73 74 6f 70 2e ll finally stop.
2800: 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 68 72 3e ..<br><br>..<hr>
2810: 3c 62 72 3e 0d 0a 3c 61 20 68 72 65 66 3d 22 68 <br>..<a href="h
2820: 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d ttps://www.gaia-
2830: 67 69 73 2e 69 74 2f 66 6f 73 73 69 6c 2f 6c 69 gis.it/fossil/li
2840: 62 73 70 61 74 69 61 6c 69 74 65 2f 77 69 6b 69 bspatialite/wiki
2850: 3f 6e 61 6d 65 3d 34 2e 33 2e 30 2d 64 6f 63 22 ?name=4.3.0-doc"
2860: 3e 62 61 63 6b 3c 2f 61 3e 0a 5a 20 35 38 65 61 >back</a>.Z 58ea
2870: 38 32 38 36 63 32 36 33 65 33 63 37 65 37 62 65 8286c263e3c7e7be
2880: 64 30 38 37 37 34 31 63 35 36 37 61 0a d087741c567a.