Hex Artifact Content
Not logged in

Artifact c7435a7166d7ec09aba2dc9771222fb21422f90d:

Wiki page [PostgreSQL] by sandro 2018-08-06 06:39:10.
0000: 44 20 32 30 31 38 2d 30 38 2d 30 36 54 30 36 3a  D 2018-08-06T06:
0010: 33 39 3a 31 30 2e 31 33 31 0a 4c 20 50 6f 73 74  39:10.131.L Post
0020: 67 72 65 53 51 4c 0a 50 20 34 39 61 34 33 37 39  greSQL.P 49a4379
0030: 66 33 39 63 33 33 39 30 36 66 32 37 63 33 34 34  f39c33906f27c344
0040: 38 62 37 31 64 64 64 66 66 37 33 61 34 64 31 37  8b71dddff73a4d17
0050: 36 0a 55 20 73 61 6e 64 72 6f 0a 57 20 31 33 33  6.U sandro.W 133
0060: 35 37 0a 42 61 63 6b 20 74 6f 20 3c 61 20 68 72  57.Back to <a hr
0070: 65 66 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e  ef="https://www.
0080: 67 61 69 61 2d 67 69 73 2e 69 74 2f 66 6f 73 73  gaia-gis.it/foss
0090: 69 6c 2f 73 70 61 74 69 61 6c 69 74 65 5f 67 75  il/spatialite_gu
00a0: 69 2f 77 69 6b 69 3f 6e 61 6d 65 3d 73 70 61 74  i/wiki?name=spat
00b0: 69 61 6c 69 74 65 2d 67 75 69 22 3e 6d 61 69 6e  ialite-gui">main
00c0: 20 57 69 6b 69 20 70 61 67 65 3c 2f 61 3e 3c 68   Wiki page</a><h
00d0: 72 3e 3c 62 72 3e 0d 0a 3c 68 31 3e 54 68 65 20  r><br>..<h1>The 
00e0: 47 55 49 20 61 73 20 61 20 50 6f 73 74 67 72 65  GUI as a Postgre
00f0: 53 51 4c 20 63 6c 69 65 6e 74 3c 2f 68 31 3e 0d  SQL client</h1>.
0100: 0a 53 74 61 72 74 69 6e 67 20 66 72 6f 6d 20 76  .Starting from v
0110: 65 72 73 69 6f 6e 20 3c 62 3e 32 2e 31 2e 30 3c  ersion <b>2.1.0<
0120: 2f 62 3e 20 74 68 65 20 47 55 49 20 68 61 73 20  /b> the GUI has 
0130: 74 68 65 20 63 61 70 61 62 69 6c 69 74 79 20 74  the capability t
0140: 6f 20 73 75 70 70 6f 72 74 20 63 6f 6e 6e 65 63  o support connec
0150: 74 69 6f 6e 73 20 74 6f 20 65 78 74 65 72 6e 61  tions to externa
0160: 6c 20 3c 62 3e 50 6f 73 74 67 72 65 53 51 4c 20  l <b>PostgreSQL 
0170: 2f 20 50 6f 73 74 47 49 53 3c 2f 62 3e 20 64 61  / PostGIS</b> da
0180: 74 61 62 61 73 65 73 2e 3c 62 72 3e 0d 0a 54 68  tabases.<br>..Th
0190: 69 73 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79  is functionality
01a0: 20 69 73 20 6d 61 69 6e 6c 79 20 62 61 73 65 64   is mainly based
01b0: 20 6f 6e 20 3c 61 20 68 72 65 66 3d 22 68 74 74   on <a href="htt
01c0: 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69  ps://www.gaia-gi
01d0: 73 2e 69 74 2f 66 6f 73 73 69 6c 2f 76 69 72 74  s.it/fossil/virt
01e0: 75 61 6c 70 67 2f 77 69 6b 69 3f 6e 61 6d 65 3d  ualpg/wiki?name=
01f0: 74 75 74 6f 72 69 61 6c 22 3e 6c 69 62 76 69 72  tutorial">libvir
0200: 74 75 61 6c 70 67 3c 2f 61 3e 2c 20 74 68 61 74  tualpg</a>, that
0210: 20 69 73 20 6e 6f 77 20 61 20 72 65 71 75 69 72   is now a requir
0220: 65 64 20 64 65 70 65 6e 64 65 6e 63 79 20 66 6f  ed dependency fo
0230: 72 20 74 68 65 20 47 55 49 20 74 6f 6f 6c 2e 0d  r the GUI tool..
0240: 0a 54 68 65 20 70 72 65 73 65 6e 74 20 74 75 74  .The present tut
0250: 6f 72 69 61 6c 20 69 73 20 69 6e 74 65 6e 64 65  orial is intende
0260: 64 20 74 6f 20 71 75 69 63 6b 6c 79 20 65 78 70  d to quickly exp
0270: 6c 61 69 6e 20 68 6f 77 20 74 68 65 20 50 6f 73  lain how the Pos
0280: 74 67 72 65 53 51 4c 20 73 75 70 70 6f 72 74 20  tgreSQL support 
0290: 69 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 62  is implemented b
02a0: 79 20 3c 62 3e 73 70 61 74 69 61 6c 69 74 65 5f  y <b>spatialite_
02b0: 67 75 69 3c 2f 62 3e 2e 3c 62 72 3e 3c 62 72 3e  gui</b>.<br><br>
02c0: 0d 0a 3c 74 61 62 6c 65 20 63 65 6c 6c 73 70 61  ..<table cellspa
02d0: 63 69 6e 67 3d 22 36 22 20 63 65 6c 6c 70 61 64  cing="6" cellpad
02e0: 64 69 6e 67 3d 22 36 22 20 62 67 63 6f 6c 6f 72  ding="6" bgcolor
02f0: 3d 22 23 66 30 66 66 65 30 22 20 77 69 64 74 68  ="#f0ffe0" width
0300: 3d 22 31 30 30 25 22 20 62 6f 72 64 65 72 3d 22  ="100%" border="
0310: 31 22 3e 0d 0a 3c 74 72 3e 3c 74 64 20 63 6f 6c  1">..<tr><td col
0320: 73 70 61 6e 3d 22 32 22 20 61 6c 69 67 6e 3d 22  span="2" align="
0330: 63 65 6e 74 65 72 22 3e 3c 68 33 3e 31 20 2d 20  center"><h3>1 - 
0340: 45 73 74 61 62 6c 69 73 68 69 6e 67 20 61 20 43  Establishing a C
0350: 6f 6e 6e 65 63 74 69 6e 67 20 74 6f 20 61 20 50  onnecting to a P
0360: 6f 73 74 67 72 65 53 51 4c 20 44 42 4d 53 3c 2f  ostgreSQL DBMS</
0370: 68 33 3e 3c 68 72 3e 3c 2f 74 64 3e 3c 2f 74 72  h3><hr></td></tr
0380: 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 3c 62 3e  >..<tr>..<td><b>
0390: 31 2e 61 3c 2f 62 3e 20 66 69 72 73 74 20 70 72  1.a</b> first pr
03a0: 65 73 73 20 74 68 65 20 61 70 70 72 6f 70 72 69  ess the appropri
03b0: 61 74 65 20 62 75 74 74 6f 6e 20 66 72 6f 6d 20  ate button from 
03c0: 74 68 65 20 54 6f 6f 6c 62 61 72 3c 2f 74 64 3e  the Toolbar</td>
03d0: 0d 0a 3c 74 64 3e 3c 69 6d 67 20 73 72 63 3d 22  ..<td><img src="
03e0: 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61  https://www.gaia
03f0: 2d 67 69 73 2e 69 74 2f 67 61 69 61 2d 73 69 6e  -gis.it/gaia-sin
0400: 73 2f 67 75 69 2d 70 6f 73 74 67 72 65 73 2f 67  s/gui-postgres/g
0410: 75 69 31 2e 70 6e 67 22 20 61 6c 74 3d 22 63 6f  ui1.png" alt="co
0420: 6e 6e 65 63 74 69 6f 6e 20 31 22 3e 3c 2f 74 64  nnection 1"></td
0430: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a  >..</tr>..<tr>..
0440: 3c 74 64 3e 3c 62 3e 31 2e 62 3c 2f 62 3e 20 74  <td><b>1.b</b> t
0450: 68 65 6e 20 73 65 6c 65 63 74 20 74 68 65 20 61  hen select the a
0460: 70 70 72 6f 70 72 69 61 74 65 20 69 74 65 6d 20  ppropriate item 
0470: 66 72 6f 6d 20 74 68 65 20 6d 61 69 6e 20 4d 65  from the main Me
0480: 6e 75 3c 2f 74 64 3e 0d 0a 3c 74 64 3e 3c 69 6d  nu</td>..<td><im
0490: 67 20 73 72 63 3d 22 68 74 74 70 73 3a 2f 2f 77  g src="https://w
04a0: 77 77 2e 67 61 69 61 2d 67 69 73 2e 69 74 2f 67  ww.gaia-gis.it/g
04b0: 61 69 61 2d 73 69 6e 73 2f 67 75 69 2d 70 6f 73  aia-sins/gui-pos
04c0: 74 67 72 65 73 2f 67 75 69 32 2e 70 6e 67 22 20  tgres/gui2.png" 
04d0: 61 6c 74 3d 22 63 6f 6e 6e 65 63 74 69 6f 6e 20  alt="connection 
04e0: 32 22 3e 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d  2"></td>..</tr>.
04f0: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74  .</tr>..<tr>..<t
0500: 64 3e 3c 62 3e 31 2e 63 3c 2f 62 3e 20 61 6e 64  d><b>1.c</b> and
0510: 20 66 69 6e 61 6c 6c 79 20 73 65 6c 65 63 74 20   finally select 
0520: 74 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 20  the appropriate 
0530: 69 74 65 6d 20 66 72 6f 6d 20 74 68 65 20 63 6f  item from the co
0540: 6e 74 65 78 74 20 4d 65 6e 75 20 74 68 61 74 20  ntext Menu that 
0550: 77 69 6c 6c 20 61 70 70 65 61 72 20 62 79 20 63  will appear by c
0560: 6c 69 63 6b 69 6e 67 20 74 68 65 20 3c 62 3e 6c  licking the <b>l
0570: 65 66 74 3c 2f 62 3e 20 62 75 74 74 6f 6e 20 6f  eft</b> button o
0580: 66 20 74 68 65 20 6d 6f 75 73 65 20 6f 76 65 72  f the mouse over
0590: 20 74 68 65 20 3c 62 3e 50 6f 73 74 72 65 53 51   the <b>PostreSQ
05a0: 4c 3c 2f 62 3e 20 6d 61 69 6e 20 6e 6f 64 65 20  L</b> main node 
05b0: 66 72 6f 6d 20 74 68 65 20 54 61 62 6c 65 20 54  from the Table T
05c0: 72 65 65 2e 3c 2f 74 64 3e 0d 0a 3c 74 64 3e 3c  ree.</td>..<td><
05d0: 69 6d 67 20 73 72 63 3d 22 68 74 74 70 73 3a 2f  img src="https:/
05e0: 2f 77 77 77 2e 67 61 69 61 2d 67 69 73 2e 69 74  /www.gaia-gis.it
05f0: 2f 67 61 69 61 2d 73 69 6e 73 2f 67 75 69 2d 70  /gaia-sins/gui-p
0600: 6f 73 74 67 72 65 73 2f 67 75 69 33 2e 70 6e 67  ostgres/gui3.png
0610: 22 20 61 6c 74 3d 22 63 6f 6e 6e 65 63 74 69 6f  " alt="connectio
0620: 6e 20 33 22 3e 3c 2f 74 64 3e 0d 0a 3c 2f 74 72  n 3"></td>..</tr
0630: 3e 3c 74 72 3e 0d 0a 3c 74 64 3e 3c 62 3e 31 2e  ><tr>..<td><b>1.
0640: 64 3c 2f 62 3e 20 69 6e 20 61 6c 6c 20 74 68 72  d</b> in all thr
0650: 65 65 20 63 61 73 65 73 20 74 68 65 20 50 6f 73  ee cases the Pos
0660: 74 67 72 65 53 51 4c 20 63 6f 6e 6e 65 63 74 69  tgreSQL connecti
0670: 6f 6e 20 64 69 61 6c 6f 67 20 77 69 6c 6c 20 74  on dialog will t
0680: 68 65 6e 20 61 70 70 65 61 72 2e 3c 62 72 3e 0d  hen appear.<br>.
0690: 0a 4a 75 73 74 20 69 6e 73 65 72 74 20 74 68 65  .Just insert the
06a0: 20 72 65 71 75 69 72 65 64 20 63 6f 6e 6e 65 63   required connec
06b0: 74 69 6f 6e 20 61 72 67 75 6d 65 6e 74 73 20 61  tion arguments a
06c0: 6e 64 20 63 6f 6e 66 69 72 6d 2e 3c 62 72 3e 3c  nd confirm.<br><
06d0: 62 72 3e 0d 0a 57 68 65 6e 20 69 6e 76 61 6c 69  br>..When invali
06e0: 64 20 61 72 67 75 6d 65 6e 74 73 20 61 72 65 20  d arguments are 
06f0: 67 69 76 65 6e 2c 20 61 6e 20 65 72 72 6f 72 20  given, an error 
0700: 6d 65 73 73 61 67 65 20 20 77 69 6c 6c 20 62 65  message  will be
0710: 20 64 69 73 70 6c 61 79 65 64 2c 20 6f 74 68 65   displayed, othe
0720: 72 77 69 73 65 20 74 68 65 20 63 6f 6e 6e 65 63  rwise the connec
0730: 74 69 6f 6e 20 77 69 6c 6c 20 62 65 20 69 6d 6d  tion will be imm
0740: 65 64 69 61 74 65 6c 79 20 65 73 74 61 62 6c 69  ediately establi
0750: 73 68 65 64 2e 3c 62 72 3e 3c 62 72 3e 3c 62 72  shed.<br><br><br
0760: 3e 3c 68 72 3e 3c 62 72 3e 3c 62 72 3e 3c 62 72  ><hr><br><br><br
0770: 3e 0d 0a 49 66 20 79 6f 75 20 61 72 65 20 61 74  >..If you are at
0780: 74 65 6d 70 74 69 6e 67 20 74 6f 20 63 6f 6e 6e  tempting to conn
0790: 65 63 74 20 61 20 72 65 6d 6f 74 65 20 73 65 72  ect a remote ser
07a0: 76 65 72 2c 20 79 6f 75 20 6d 61 79 20 66 69 6e  ver, you may fin
07b0: 64 20 69 74 20 75 73 65 66 75 6c 20 74 6f 20 72  d it useful to r
07c0: 65 61 64 20 74 68 65 20 74 75 74 6f 72 69 61 6c  ead the tutorial
07d0: 20 61 62 6f 75 74 20 3c 61 20 68 72 65 66 3d 22   about <a href="
07e0: 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61  https://www.gaia
07f0: 2d 67 69 73 2e 69 74 2f 66 6f 73 73 69 6c 2f 76  -gis.it/fossil/v
0800: 69 72 74 75 61 6c 70 67 2f 77 69 6b 69 3f 6e 61  irtualpg/wiki?na
0810: 6d 65 3d 70 6f 72 74 2d 66 6f 72 77 61 72 64 69  me=port-forwardi
0820: 6e 67 22 3e 53 53 48 20 74 75 6e 6e 65 6c 69 6e  ng">SSH tunnelin
0830: 67 20 61 6e 64 20 50 6f 72 74 20 46 6f 72 77 61  g and Port Forwa
0840: 72 64 69 6e 67 3c 2f 61 3e 0d 0a 3c 62 72 3e 3c  rding</a>..<br><
0850: 62 72 3e 3c 62 72 3e 0d 0a 3c 68 72 3e 0d 0a 3c  br><br>..<hr>..<
0860: 74 61 62 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23  table bgcolor="#
0870: 66 66 63 63 38 30 22 20 63 65 6c 6c 73 70 61 63  ffcc80" cellspac
0880: 69 6e 67 3d 22 36 22 20 63 65 6c 6c 70 61 64 64  ing="6" cellpadd
0890: 69 6e 67 3d 22 36 22 20 62 6f 72 64 65 72 3d 22  ing="6" border="
08a0: 31 22 20 77 69 64 74 68 3d 22 31 30 30 25 22 3e  1" width="100%">
08b0: 0d 0a 3c 74 72 3e 3c 74 64 20 61 6c 69 67 6e 3d  ..<tr><td align=
08c0: 22 63 65 6e 74 65 72 22 3e 3c 68 33 3e 53 70 65  "center"><h3>Spe
08d0: 63 69 61 6c 20 6e 6f 74 65 20 66 6f 72 20 57 69  cial note for Wi
08e0: 6e 64 6f 77 73 20 75 73 65 72 73 3c 2f 68 33 3e  ndows users</h3>
08f0: 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 3c 74 72 3e  </td></tr>..<tr>
0900: 3c 74 64 3e 0d 0a 50 6c 65 61 73 65 20 72 65 61  <td>..Please rea
0910: 64 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23  d the <a href="#
0920: 61 64 64 65 6e 64 75 6d 22 3e 41 64 64 65 6e 64  addendum">Addend
0930: 75 6d 3c 2f 61 3e 20 61 62 6f 75 74 20 4c 69 62  um</a> about Lib
0940: 50 51 20 6c 61 74 65 20 62 69 6e 64 69 6e 67 2e  PQ late binding.
0950: 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 3c 2f  ..</td></tr>..</
0960: 74 61 62 6c 65 3e 3c 2f 74 64 3e 0d 0a 3c 74 64  table></td>..<td
0970: 3e 3c 69 6d 67 20 73 72 63 3d 22 68 74 74 70 73  ><img src="https
0980: 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 73 2e  ://www.gaia-gis.
0990: 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f 67 75 69  it/gaia-sins/gui
09a0: 2d 70 6f 73 74 67 72 65 73 2f 67 75 69 34 2e 70  -postgres/gui4.p
09b0: 6e 67 22 20 61 6c 74 3d 22 63 6f 6e 6e 65 63 74  ng" alt="connect
09c0: 69 6f 6e 20 34 22 3e 3c 2f 74 64 3e 0d 0a 3c 2f  ion 4"></td>..</
09d0: 74 72 3e 0d 0a 3c 74 72 3e 3c 74 64 20 63 6f 6c  tr>..<tr><td col
09e0: 73 70 61 6e 3d 22 32 22 20 61 6c 69 67 6e 3d 22  span="2" align="
09f0: 63 65 6e 74 65 72 22 3e 3c 68 33 3e 32 20 2d 20  center"><h3>2 - 
0a00: 45 78 70 61 6e 64 69 6e 67 20 74 68 65 20 50 6f  Expanding the Po
0a10: 73 74 67 72 65 53 51 4c 20 74 72 65 65 3c 2f 68  stgreSQL tree</h
0a20: 33 3e 3c 68 72 3e 3c 2f 74 64 3e 3c 2f 74 72 3e  3><hr></td></tr>
0a30: 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 3c 62 3e 32  ..<tr>..<td><b>2
0a40: 2e 61 3c 2f 62 3e 20 6f 6e 63 65 20 61 20 6e 65  .a</b> once a ne
0a50: 77 20 50 6f 73 74 67 72 65 73 20 63 6f 6e 6e 65  w Postgres conne
0a60: 63 74 69 6f 6e 20 68 61 73 20 62 65 65 6e 20 73  ction has been s
0a70: 75 63 63 65 73 73 66 75 6c 6c 79 20 65 73 74 61  uccessfully esta
0a80: 62 6c 69 73 68 65 64 2c 20 74 68 65 20 50 6f 73  blished, the Pos
0a90: 74 67 72 65 73 20 6e 6f 64 65 20 6f 6e 20 74 68  tgres node on th
0aa0: 65 20 6d 61 69 6e 20 54 61 62 6c 65 20 54 72 65  e main Table Tre
0ab0: 65 20 77 69 6c 6c 20 63 6f 6e 74 61 69 6e 20 61  e will contain a
0ac0: 6c 6c 20 54 61 62 6c 65 73 20 61 6e 64 20 56 69  ll Tables and Vi
0ad0: 65 77 73 20 64 65 66 69 6e 65 64 20 69 6e 20 74  ews defined in t
0ae0: 68 65 20 50 6f 73 74 67 72 65 73 20 44 61 74 61  he Postgres Data
0af0: 62 61 73 65 2c 20 69 6e 20 74 68 65 20 73 61 6d  base, in the sam
0b00: 65 20 61 72 72 61 6e 67 65 6d 65 6e 74 20 61 64  e arrangement ad
0b10: 6f 70 74 65 64 20 62 79 20 50 6f 73 74 67 72 65  opted by Postgre
0b20: 53 51 4c 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e  SQL:..<ul>..<li>
0b30: 43 6f 6e 6e 65 63 74 69 6f 6e 20 3c 69 3e 61 6b  Connection <i>ak
0b40: 61 3c 2f 69 3e 20 3c 62 3e 44 61 74 61 62 61 73  a</i> <b>Databas
0b50: 65 3c 2f 62 3e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69  e</b>..<ul>..<li
0b60: 3e 3c 62 3e 53 63 68 65 6d 61 3c 2f 62 3e 0d 0a  ><b>Schema</b>..
0b70: 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e 54 61 62  <ul>..<li><b>Tab
0b80: 6c 65 3c 2f 62 3e 20 6f 72 20 3c 62 3e 56 69 65  le</b> or <b>Vie
0b90: 77 3c 2f 62 3e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c  w</b></li>..</ul
0ba0: 3e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c  ></li>..</ul></l
0bb0: 69 3e 0d 0a 3c 2f 75 6c 3e 3c 62 72 3e 3c 62 72  i>..</ul><br><br
0bc0: 3e 0d 0a 54 68 65 20 64 69 66 66 65 72 65 6e 74  >..The different
0bd0: 20 64 61 74 61 62 61 73 65 20 74 79 70 65 73 20   database types 
0be0: 77 69 6c 6c 20 62 65 20 69 64 65 6e 74 69 66 69  will be identifi
0bf0: 65 64 20 62 79 20 61 6e 20 61 70 70 72 6f 70 72  ed by an appropr
0c00: 69 61 74 65 20 69 63 6f 6e 3b 20 56 69 65 77 73  iate icon; Views
0c10: 20 77 69 6c 6c 20 62 65 20 64 69 73 74 69 6e 67   will be disting
0c20: 75 69 73 68 65 64 20 66 72 6f 6d 20 54 61 62 6c  uished from Tabl
0c30: 65 73 2c 20 61 6e 64 20 3c 62 3e 50 6f 73 74 47  es, and <b>PostG
0c40: 49 53 3c 2f 62 3e 20 54 61 62 6c 65 73 20 28 63  IS</b> Tables (c
0c50: 6f 6e 74 61 69 6e 69 6e 67 20 3c 62 3e 47 65 6f  ontaining <b>Geo
0c60: 6d 65 74 72 79 3c 2f 62 3e 20 63 6f 6c 75 6d 6e  metry</b> column
0c70: 73 29 20 77 69 6c 6c 20 62 65 20 63 6c 65 61 72  s) will be clear
0c80: 6c 79 20 64 69 73 74 69 6e 67 75 69 73 68 65 64  ly distinguished
0c90: 20 66 72 6f 6d 20 6f 72 64 69 6e 61 72 79 20 54   from ordinary T
0ca0: 61 62 6c 65 73 2e 3c 62 72 3e 3c 62 72 3e 0d 0a  ables.<br><br>..
0cb0: 3c 62 3e 4e 6f 74 65 3c 2f 62 3e 3a 20 61 6c 6c  <b>Note</b>: all
0cc0: 20 50 6f 73 74 67 72 65 73 20 54 61 62 6c 65 73   Postgres Tables
0cd0: 20 61 6e 64 20 56 69 65 77 73 20 28 6e 61 6d 65   and Views (name
0ce0: 6c 79 3a 20 3c 62 3e 56 69 72 74 75 61 6c 50 6f  ly: <b>VirtualPo
0cf0: 73 74 67 72 65 73 3c 2f 62 3e 20 54 61 62 6c 65  stgres</b> Table
0d00: 73 29 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 68  s) will always h
0d10: 61 76 65 20 61 20 63 6f 6e 76 65 6e 74 69 6f 6e  ave a convention
0d20: 61 6c 20 6e 61 6d 65 20 73 74 61 72 74 69 6e 67  al name starting
0d30: 20 77 69 74 68 20 74 68 65 20 3c 62 3e 76 70 67   with the <b>vpg
0d40: 5f 3c 2f 62 3e 20 70 72 65 66 69 78 2e 3c 62 72  _</b> prefix.<br
0d50: 3e 0d 0a 57 68 65 6e 65 76 65 72 20 70 6f 73 73  >..Whenever poss
0d60: 69 62 6c 65 20 74 68 65 20 6f 72 69 67 69 6e 61  ible the origina
0d70: 6c 20 50 6f 73 74 67 72 65 73 20 4e 61 6d 65 20  l Postgres Name 
0d80: 77 69 6c 6c 20 62 65 20 70 72 65 73 65 72 76 65  will be preserve
0d90: 64 2c 20 6f 74 68 65 72 77 69 73 65 20 61 20 6e  d, otherwise a n
0da0: 75 6d 65 72 69 63 20 73 75 66 66 69 78 20 69 74  umeric suffix it
0db0: 20 77 69 6c 6c 20 62 65 20 61 64 64 65 64 2c 20   will be added, 
0dc0: 65 6e 73 75 72 69 6e 67 20 61 20 75 6e 69 71 75  ensuring a uniqu
0dd0: 65 20 6e 61 6d 65 20 2e 3c 62 72 3e 3c 62 72 3e  e name .<br><br>
0de0: 3c 62 72 3e 0d 0a 3c 68 72 3e 0d 0a 3c 62 72 3e  <br>..<hr>..<br>
0df0: 3c 62 72 3e 0d 0a 3c 62 3e 4e 6f 74 65 3c 2f 62  <br>..<b>Note</b
0e00: 3e 3a 20 61 6c 6c 20 64 61 74 61 62 61 73 65 20  >: all database 
0e10: 6f 62 6a 65 63 74 73 20 69 6e 20 74 68 65 20 50  objects in the P
0e20: 6f 73 74 67 72 65 73 20 54 72 65 65 20 61 72 65  ostgres Tree are
0e30: 20 64 79 6e 61 6d 69 63 2c 20 61 6e 64 20 77 69   dynamic, and wi
0e40: 6c 6c 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79  ll automatically
0e50: 20 64 69 73 61 70 70 65 61 72 20 77 68 65 6e 20   disappear when 
0e60: 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e  the correspondin
0e70: 67 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 77 69 6c  g connection wil
0e80: 6c 20 62 65 20 63 6c 6f 73 65 64 2c 20 6f 72 20  l be closed, or 
0e90: 77 68 65 6e 20 74 68 65 20 63 75 72 72 65 6e 74  when the current
0ea0: 20 73 65 73 73 69 6f 6e 20 65 6e 64 73 2e 3c 2f   session ends.</
0eb0: 74 64 3e 0d 0a 3c 74 64 3e 3c 69 6d 67 20 73 72  td>..<td><img sr
0ec0: 63 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67  c="https://www.g
0ed0: 61 69 61 2d 67 69 73 2e 69 74 2f 67 61 69 61 2d  aia-gis.it/gaia-
0ee0: 73 69 6e 73 2f 67 75 69 2d 70 6f 73 74 67 72 65  sins/gui-postgre
0ef0: 73 2f 67 75 69 35 2e 70 6e 67 22 20 61 6c 74 3d  s/gui5.png" alt=
0f00: 22 74 61 62 6c 65 20 74 72 65 65 22 3e 3c 2f 74  "table tree"></t
0f10: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d  d>..</tr>..<tr>.
0f20: 0a 3c 74 64 3e 3c 62 3e 32 2e 62 3c 2f 62 3e 20  .<td><b>2.b</b> 
0f30: 69 66 2c 20 66 6f 72 20 61 6e 79 20 70 6f 73 73  if, for any poss
0f40: 69 62 6c 65 20 72 65 61 73 6f 6e 20 28 73 75 63  ible reason (suc
0f50: 68 20 61 73 20 6f 6e 3a 20 61 20 73 79 73 74 65  h as on: a syste
0f60: 6d 20 63 72 61 73 68 2c 20 70 6f 77 65 72 20 66  m crash, power f
0f70: 61 69 6c 75 72 65 2c 20 65 74 63 2e 29 2c 20 74  ailure, etc.), t
0f80: 68 65 20 63 75 72 72 65 6e 74 20 73 65 73 73 69  he current sessi
0f90: 6f 6e 20 77 69 6c 6c 20 66 61 69 6c 20 74 6f 20  on will fail to 
0fa0: 63 6f 72 72 65 63 74 6c 79 20 70 65 72 66 6f 72  correctly perfor
0fb0: 6d 20 74 68 65 20 65 78 70 65 63 74 65 64 20 66  m the expected f
0fc0: 69 6e 61 6c 20 63 6c 65 61 6e 75 70 2c 20 79 6f  inal cleanup, yo
0fd0: 75 72 20 53 51 4c 69 74 65 20 64 61 74 61 62 61  ur SQLite databa
0fe0: 73 65 20 77 69 6c 6c 20 72 65 6d 61 69 6e 20 69  se will remain i
0ff0: 6e 20 61 20 64 69 72 74 79 20 61 6e 64 20 69 6e  n a dirty and in
1000: 63 6f 6e 73 69 73 74 65 6e 74 20 73 74 61 74 65  consistent state
1010: 2e 3c 62 72 3e 0d 0a 41 73 20 74 68 65 20 73 69  .<br>..As the si
1020: 64 65 20 66 69 67 75 72 65 20 73 68 6f 77 73 2c  de figure shows,
1030: 20 77 68 65 6e 20 72 65 73 74 61 72 74 69 6e 67   when restarting
1040: 20 61 20 6e 65 77 20 73 65 73 73 69 6f 6e 20 61   a new session a
1050: 6c 6c 20 3c 62 3e 6f 72 70 68 61 6e 65 64 20 56  ll <b>orphaned V
1060: 69 72 74 75 61 6c 50 6f 73 74 67 72 65 73 20 74  irtualPostgres t
1070: 61 62 6c 65 73 3c 2f 62 3e 2c 20 66 72 6f 6d 20  ables</b>, from 
1080: 61 6e 79 20 61 62 6f 72 74 65 64 20 73 65 73 73  any aborted sess
1090: 69 6f 6e 28 73 29 2c 20 63 61 6e 20 73 74 69 6c  ion(s), can stil
10a0: 6c 20 62 65 20 73 65 65 6e 2e 3c 62 72 3e 3c 62  l be seen.<br><b
10b0: 72 3e 0d 0a 49 66 20 74 68 69 73 20 68 61 70 70  r>..If this happ
10c0: 65 6e 73 2c 20 64 6f 6e 27 74 20 64 65 73 70 61  ens, don't despa
10d0: 69 72 3a 20 61 6c 6c 20 79 6f 75 20 6e 65 65 64  ir: all you need
10e0: 20 74 6f 20 64 6f 20 69 73 20 74 6f 20 73 65 6c   to do is to sel
10f0: 65 63 74 20 74 68 65 20 61 70 70 72 6f 70 72 69  ect the appropri
1100: 61 74 65 20 69 74 65 6d 20 66 72 6f 6d 20 74 68  ate item from th
1110: 65 20 50 6f 73 74 67 72 65 73 20 63 6f 6e 74 65  e Postgres conte
1120: 78 74 20 6d 65 6e 75 20 61 6e 64 20 74 68 65 20  xt menu and the 
1130: 44 42 20 77 69 6c 6c 20 62 65 20 69 6d 6d 65 64  DB will be immed
1140: 69 61 74 65 6c 79 20 62 65 20 63 6f 6e 76 65 72  iately be conver
1150: 74 65 64 20 69 6e 74 6f 20 61 20 73 61 66 65 2c  ted into a safe,
1160: 20 63 6f 6e 73 69 73 74 65 6e 74 20 61 6e 64 20   consistent and 
1170: 63 6c 65 61 6e 20 73 74 61 74 65 2e 3c 2f 74 64  clean state.</td
1180: 3e 0d 0a 3c 74 64 3e 3c 69 6d 67 20 73 72 63 3d  >..<td><img src=
1190: 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69  "https://www.gai
11a0: 61 2d 67 69 73 2e 69 74 2f 67 61 69 61 2d 73 69  a-gis.it/gaia-si
11b0: 6e 73 2f 67 75 69 2d 70 6f 73 74 67 72 65 73 2f  ns/gui-postgres/
11c0: 6f 72 70 68 61 6e 73 2e 70 6e 67 22 20 61 6c 74  orphans.png" alt
11d0: 3d 22 6f 72 70 68 61 6e 20 74 61 62 6c 65 73 22  ="orphan tables"
11e0: 3e 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c  ></td>..</tr>..<
11f0: 74 72 3e 3c 74 64 20 63 6f 6c 73 70 61 6e 3d 22  tr><td colspan="
1200: 32 22 20 61 6c 69 67 6e 3d 22 63 65 6e 74 65 72  2" align="center
1210: 22 3e 3c 68 33 3e 33 20 2d 20 4d 65 74 61 64 61  "><h3>3 - Metada
1220: 74 61 20 6f 66 20 50 6f 73 74 67 72 65 53 51 4c  ta of PostgreSQL
1230: 20 6f 62 6a 65 63 74 73 3c 2f 68 33 3e 3c 68 72   objects</h3><hr
1240: 3e 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 3c 74 72  ></td></tr>..<tr
1250: 3e 0d 0a 3c 74 64 3e 3c 62 3e 33 2e 61 3c 2f 62  >..<td><b>3.a</b
1260: 3e 20 79 6f 75 20 63 61 6e 20 65 61 73 69 6c 79  > you can easily
1270: 20 71 75 65 72 79 20 74 68 65 20 6d 65 74 61 64   query the metad
1280: 61 74 61 20 66 6f 72 20 65 61 63 68 20 50 6f 73  ata for each Pos
1290: 74 67 72 65 73 20 6f 62 6a 65 63 74 3b 20 6a 75  tgres object; ju
12a0: 73 74 20 73 65 6c 65 63 74 20 74 68 65 20 61 70  st select the ap
12b0: 70 72 6f 70 72 69 61 74 65 20 69 74 65 6d 20 66  propriate item f
12c0: 72 6f 6d 20 74 68 65 20 63 6f 6e 74 65 78 74 20  rom the context 
12d0: 6d 65 6e 75 2e 3c 2f 74 64 3e 0d 0a 3c 74 64 3e  menu.</td>..<td>
12e0: 3c 69 6d 67 20 73 72 63 3d 22 68 74 74 70 73 3a  <img src="https:
12f0: 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 73 2e 69  //www.gaia-gis.i
1300: 74 2f 67 61 69 61 2d 73 69 6e 73 2f 67 75 69 2d  t/gaia-sins/gui-
1310: 70 6f 73 74 67 72 65 73 2f 67 75 69 36 2e 70 6e  postgres/gui6.pn
1320: 67 22 20 61 6c 74 3d 22 6d 65 74 61 64 61 74 61  g" alt="metadata
1330: 20 69 6e 66 6f 22 3e 3c 2f 74 64 3e 0d 0a 3c 2f   info"></td>..</
1340: 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 3c  tr>..<tr>..<td><
1350: 62 3e 33 2e 62 3c 2f 62 3e 20 4d 65 74 61 64 61  b>3.b</b> Metada
1360: 74 61 20 66 6f 72 20 61 20 3c 62 3e 43 6f 6e 6e  ta for a <b>Conn
1370: 65 63 74 69 6f 6e 3c 2f 62 3e 20 3c 69 3e 61 6b  ection</b> <i>ak
1380: 61 3c 2f 69 3e 20 3c 62 3e 44 61 74 61 62 61 73  a</i> <b>Databas
1390: 65 3c 2f 62 3e 20 6f 62 6a 65 63 74 20 77 69 6c  e</b> object wil
13a0: 6c 20 72 65 70 6f 72 74 20 74 68 65 20 69 6e 69  l report the ini
13b0: 74 69 61 6c 20 63 6f 6e 6e 65 63 74 69 6f 6e 20  tial connection 
13c0: 61 72 67 75 6d 65 6e 74 73 2e 3c 62 72 3e 3c 62  arguments.<br><b
13d0: 72 3e 3c 62 72 3e 0d 0a 3c 68 72 3e 0d 0a 3c 62  r><br>..<hr>..<b
13e0: 72 3e 3c 62 72 3e 0d 0a 3c 62 3e 4e 6f 74 65 3c  r><br>..<b>Note<
13f0: 2f 62 3e 3a 20 79 6f 75 20 63 61 6e 20 61 6c 77  /b>: you can alw
1400: 61 79 73 20 63 6f 6e 6e 65 63 74 20 6d 6f 72 65  ays connect more
1410: 20 74 68 61 6e 20 6f 6e 65 20 50 6f 73 74 67 72   than one Postgr
1420: 65 73 20 44 61 74 61 62 61 73 65 20 69 6e 20 74  es Database in t
1430: 68 65 20 73 61 6d 65 20 73 65 73 73 69 6f 6e 3b  he same session;
1440: 20 68 6f 77 65 76 65 72 20 63 6f 6e 6e 65 63 74   however connect
1450: 69 6e 67 20 74 68 65 20 73 61 6d 65 20 44 61 74  ing the same Dat
1460: 61 62 61 73 65 20 6d 6f 72 65 20 74 68 61 6e 20  abase more than 
1470: 6f 6e 63 65 20 69 73 20 6e 6f 74 20 70 65 72 6d  once is not perm
1480: 69 74 74 65 64 2e 3c 2f 74 64 3e 0d 0a 3c 74 64  itted.</td>..<td
1490: 3e 3c 69 6d 67 20 73 72 63 3d 22 68 74 74 70 73  ><img src="https
14a0: 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 73 2e  ://www.gaia-gis.
14b0: 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f 67 75 69  it/gaia-sins/gui
14c0: 2d 70 6f 73 74 67 72 65 73 2f 67 75 69 37 2e 70  -postgres/gui7.p
14d0: 6e 67 22 20 61 6c 74 3d 22 63 6f 6e 6e 65 63 74  ng" alt="connect
14e0: 69 6f 6e 20 6d 65 74 61 64 61 74 61 22 3e 3c 2f  ion metadata"></
14f0: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e  td>..</tr>..<tr>
1500: 0d 0a 3c 74 64 3e 3c 62 3e 33 2e 63 3c 2f 62 3e  ..<td><b>3.c</b>
1510: 20 4d 65 74 61 64 61 74 61 20 66 6f 72 20 61 20   Metadata for a 
1520: 3c 62 3e 53 63 68 65 6d 61 3c 2f 62 3e 20 6f 62  <b>Schema</b> ob
1530: 6a 65 63 74 20 61 72 65 6e 27 74 20 72 65 61 6c  ject aren't real
1540: 6c 79 20 76 65 72 79 20 69 6e 74 65 72 65 73 74  ly very interest
1550: 69 6e 67 2c 20 73 69 6e 63 65 20 6f 6e 6c 79 20  ing, since only 
1560: 74 68 65 20 6e 61 6d 65 20 77 69 6c 6c 20 62 65  the name will be
1570: 20 73 68 6f 77 6e 2e 3c 2f 74 64 3e 0d 0a 3c 74   shown.</td>..<t
1580: 64 3e 3c 69 6d 67 20 73 72 63 3d 22 68 74 74 70  d><img src="http
1590: 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 73  s://www.gaia-gis
15a0: 2e 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f 67 75  .it/gaia-sins/gu
15b0: 69 2d 70 6f 73 74 67 72 65 73 2f 67 75 69 38 2e  i-postgres/gui8.
15c0: 70 6e 67 22 20 61 6c 74 3d 22 73 63 68 65 6d 61  png" alt="schema
15d0: 20 6d 65 74 61 64 61 74 61 22 3e 3c 2f 74 64 3e   metadata"></td>
15e0: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c  ..</tr>..<tr>..<
15f0: 74 64 3e 3c 62 3e 33 2e 64 3c 2f 62 3e 20 4d 65  td><b>3.d</b> Me
1600: 74 61 64 61 74 61 20 66 6f 72 20 3c 62 3e 54 61  tadata for <b>Ta
1610: 62 6c 65 3c 2f 62 3e 20 6f 72 20 3c 62 3e 56 69  ble</b> or <b>Vi
1620: 65 77 3c 2f 62 3e 20 6f 62 6a 65 63 74 20 77 69  ew</b> object wi
1630: 6c 6c 20 72 65 70 6f 72 74 20 61 6c 6c 20 3c 62  ll report all <b
1640: 3e 47 52 41 4e 54 20 70 65 72 6d 69 73 73 69 6f  >GRANT permissio
1650: 6e 73 3c 2f 62 3e 20 66 6f 72 20 74 68 65 20 63  ns</b> for the c
1660: 75 72 72 65 6e 74 20 55 73 65 72 2e 3c 62 72 3e  urrent User.<br>
1670: 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 68 72 3e 0d 0a  <br><br>..<hr>..
1680: 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 62 3e 4e 6f 74  <br><br>..<b>Not
1690: 65 3c 2f 62 3e 3a 20 61 6c 73 6f 20 69 6e 20 74  e</b>: also in t
16a0: 68 65 20 63 61 73 65 20 6f 66 20 61 20 3c 62 3e  he case of a <b>
16b0: 52 45 41 44 2d 57 52 49 54 45 3c 2f 62 3e 20 65  READ-WRITE</b> e
16c0: 6e 61 62 6c 65 64 20 63 6f 6e 6e 65 63 74 69 6f  nabled connectio
16d0: 6e 2c 20 61 6c 6c 20 50 6f 73 74 67 72 65 73 20  n, all Postgres 
16e0: 54 61 62 6c 65 73 20 6c 61 63 6b 69 6e 67 20 74  Tables lacking t
16f0: 68 65 20 70 65 72 6d 69 73 73 69 6f 6e 20 74 6f  he permission to
1700: 20 65 78 65 63 75 74 65 20 3c 62 3e 49 4e 53 45   execute <b>INSE
1710: 52 54 3c 2f 62 3e 2c 20 3c 62 3e 55 50 44 41 54  RT</b>, <b>UPDAT
1720: 45 3c 2f 62 3e 20 6f 72 20 3c 62 3e 44 45 4c 45  E</b> or <b>DELE
1730: 54 45 3c 2f 62 3e 20 73 74 61 74 65 6d 65 6e 74  TE</b> statement
1740: 73 20 77 69 6c 6c 20 62 65 20 74 72 65 61 74 65  s will be treate
1750: 64 20 61 73 20 3c 62 3e 52 45 41 44 2d 4f 4e 4c  d as <b>READ-ONL
1760: 59 3c 2f 62 3e 20 54 61 62 6c 65 73 2e 3c 62 72  Y</b> Tables.<br
1770: 3e 0d 0a 54 68 65 20 73 61 6d 65 20 69 73 20 74  >..The same is t
1780: 72 75 65 20 66 6f 72 20 54 61 62 6c 65 73 20 77  rue for Tables w
1790: 68 65 72 65 20 6e 6f 20 3c 62 3e 50 52 49 4d 41  here no <b>PRIMA
17a0: 52 59 20 4b 45 59 3c 2f 62 3e 20 68 61 73 20 62  RY KEY</b> has b
17b0: 65 65 6e 20 64 65 66 69 6e 65 64 2e 3c 2f 74 64  een defined.</td
17c0: 3e 0d 0a 3c 74 64 3e 3c 69 6d 67 20 73 72 63 3d  >..<td><img src=
17d0: 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69  "https://www.gai
17e0: 61 2d 67 69 73 2e 69 74 2f 67 61 69 61 2d 73 69  a-gis.it/gaia-si
17f0: 6e 73 2f 67 75 69 2d 70 6f 73 74 67 72 65 73 2f  ns/gui-postgres/
1800: 67 75 69 39 2e 70 6e 67 22 20 61 6c 74 3d 22 74  gui9.png" alt="t
1810: 61 62 6c 65 20 6d 65 74 61 64 61 74 61 22 3e 3c  able metadata"><
1820: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72  /td>..</tr>..<tr
1830: 3e 0d 0a 3c 74 64 3e 3c 62 3e 33 2e 65 3c 2f 62  >..<td><b>3.e</b
1840: 3e 20 4d 65 74 61 64 61 74 61 20 66 6f 72 20 61  > Metadata for a
1850: 20 3c 62 3e 50 6f 73 74 47 49 53 20 54 61 62 6c   <b>PostGIS Tabl
1860: 65 3c 2f 62 3e 20 6f 62 6a 65 63 74 73 20 73 68  e</b> objects sh
1870: 6f 77 20 61 6c 6c 20 73 65 74 74 69 6e 67 73 20  ow all settings 
1880: 6f 66 20 74 68 65 20 3c 62 3e 47 45 4f 4d 45 54  of the <b>GEOMET
1890: 52 59 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 28 73 29  RY</b> column(s)
18a0: 2c 20 69 6e 63 6c 75 64 69 6e 67 20 74 68 65 20  , including the 
18b0: 47 65 6f 6d 65 74 72 79 54 79 70 65 2c 20 74 68  GeometryType, th
18c0: 65 20 53 72 69 64 20 61 6e 64 20 74 68 65 20 43  e Srid and the C
18d0: 6f 6f 72 64 69 6e 61 74 65 44 69 6d 65 6e 73 69  oordinateDimensi
18e0: 6f 6e 2e 3c 2f 74 64 3e 0d 0a 3c 74 64 3e 3c 69  on.</td>..<td><i
18f0: 6d 67 20 73 72 63 3d 22 68 74 74 70 73 3a 2f 2f  mg src="https://
1900: 77 77 77 2e 67 61 69 61 2d 67 69 73 2e 69 74 2f  www.gaia-gis.it/
1910: 67 61 69 61 2d 73 69 6e 73 2f 67 75 69 2d 70 6f  gaia-sins/gui-po
1920: 73 74 67 72 65 73 2f 67 75 69 31 30 2e 70 6e 67  stgres/gui10.png
1930: 22 20 61 6c 74 3d 22 70 6f 73 74 67 69 73 20 6d  " alt="postgis m
1940: 65 74 61 64 61 74 61 22 3e 3c 2f 74 64 3e 0d 0a  etadata"></td>..
1950: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64  </tr>..<tr>..<td
1960: 3e 3c 62 3e 33 2e 66 3c 2f 62 3e 20 61 6c 6c 20  ><b>3.f</b> all 
1970: 3c 62 3e 50 6f 73 74 47 49 53 20 54 61 62 6c 65  <b>PostGIS Table
1980: 73 3c 2f 62 3e 20 77 69 6c 6c 20 61 6c 77 61 79  s</b> will alway
1990: 73 20 68 61 76 65 20 61 20 3c 62 3e 63 6f 6d 70  s have a <b>comp
19a0: 61 6e 69 6f 6e 20 54 61 62 6c 65 3c 2f 62 3e 20  anion Table</b> 
19b0: 73 68 61 72 69 6e 67 20 74 68 65 20 73 61 6d 65  sharing the same
19c0: 20 69 64 65 6e 74 69 63 61 6c 20 6e 61 6d 65 20   identical name 
19d0: 65 78 63 65 70 74 20 66 6f 72 20 74 68 65 20 3c  except for the <
19e0: 62 3e 5f 70 6f 73 74 67 69 73 3c 2f 62 3e 20 73  b>_postgis</b> s
19f0: 75 66 66 69 78 2e 3c 62 72 3e 3c 62 72 3e 3c 62  uffix.<br><br><b
1a00: 72 3e 0d 0a 3c 62 3e 4e 6f 74 65 3c 2f 62 3e 3a  r>..<b>Note</b>:
1a10: 20 74 68 65 73 65 20 61 72 65 20 6e 6f 74 20 74   these are not t
1a20: 68 65 20 6f 72 69 67 69 6e 61 6c 20 3c 62 3e 56  he original <b>V
1a30: 69 72 74 75 61 6c 50 6f 73 74 67 72 65 73 20 54  irtualPostgres T
1a40: 61 62 6c 65 73 3c 2f 62 3e 20 77 68 69 63 68 20  ables</b> which 
1a50: 73 74 6f 72 65 20 74 68 65 20 47 65 6f 6d 65 74  store the Geomet
1a60: 72 69 65 73 20 69 6e 20 74 68 65 20 6f 72 69 67  ries in the orig
1a70: 69 6e 61 6c 20 50 6f 73 74 67 72 65 73 20 62 69  inal Postgres bi
1a80: 6e 61 72 79 20 66 6f 72 6d 61 74 2c 20 62 75 74  nary format, but
1a90: 20 61 72 65 20 69 6e 73 74 65 61 64 20 53 70 61   are instead Spa
1aa0: 74 69 61 6c 69 74 65 27 73 20 6f 77 6e 20 3c 62  tialite's own <b
1ab0: 3e 53 70 61 74 69 61 6c 20 56 69 65 77 73 3c 2f  >Spatial Views</
1ac0: 62 3e 20 63 6f 6e 74 61 69 6e 69 6e 67 20 47 65  b> containing Ge
1ad0: 6f 6d 65 74 72 69 65 73 20 63 6f 6e 76 65 72 74  ometries convert
1ae0: 65 64 20 74 6f 20 74 68 65 20 53 70 61 74 69 61  ed to the Spatia
1af0: 6c 69 74 65 20 62 69 6e 61 72 79 20 66 6f 72 6d  lite binary form
1b00: 61 74 2e 20 54 68 65 20 63 6f 6e 76 65 72 73 69  at. The conversi
1b10: 6f 6e 20 62 65 74 77 65 65 6e 20 74 68 65 20 74  on between the t
1b20: 77 6f 20 66 6f 72 6d 61 74 73 20 61 72 65 20 64  wo formats are d
1b30: 6f 6e 65 20 69 6e 20 74 68 65 20 62 61 63 6b 67  one in the backg
1b40: 72 6f 75 6e 64 20 61 6e 64 20 74 68 75 73 2c 20  round and thus, 
1b50: 66 6f 72 20 74 68 65 20 75 73 65 72 2c 20 69 6e  for the user, in
1b60: 20 61 20 63 6f 6d 70 6c 65 61 74 6c 79 20 74 72   a compleatly tr
1b70: 61 6e 73 70 61 72 65 6e 74 20 77 61 79 2e 3c 2f  ansparent way.</
1b80: 74 64 3e 0d 0a 3c 74 64 3e 3c 69 6d 67 20 73 72  td>..<td><img sr
1b90: 63 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67  c="https://www.g
1ba0: 61 69 61 2d 67 69 73 2e 69 74 2f 67 61 69 61 2d  aia-gis.it/gaia-
1bb0: 73 69 6e 73 2f 67 75 69 2d 70 6f 73 74 67 72 65  sins/gui-postgre
1bc0: 73 2f 67 75 69 31 31 2e 70 6e 67 22 20 61 6c 74  s/gui11.png" alt
1bd0: 3d 22 70 6f 73 74 67 69 73 20 77 72 61 70 70 65  ="postgis wrappe
1be0: 72 20 6d 65 74 61 64 61 74 61 22 3e 3c 2f 74 64  r metadata"></td
1bf0: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 3c 74  >..</tr>..<tr><t
1c00: 64 20 63 6f 6c 73 70 61 6e 3d 22 32 22 20 61 6c  d colspan="2" al
1c10: 69 67 6e 3d 22 63 65 6e 74 65 72 22 3e 3c 68 33  ign="center"><h3
1c20: 3e 34 20 2d 20 48 61 6e 64 6c 69 6e 67 20 50 6f  >4 - Handling Po
1c30: 73 74 67 72 65 53 51 4c 20 54 61 62 6c 65 73 20  stgreSQL Tables 
1c40: 61 6e 64 20 56 69 65 77 73 3c 2f 68 33 3e 3c 68  and Views</h3><h
1c50: 72 3e 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 3c 74  r></td></tr>..<t
1c60: 72 3e 0d 0a 3c 74 64 3e 3c 62 3e 34 2e 61 3c 2f  r>..<td><b>4.a</
1c70: 62 3e 20 50 6f 73 74 67 72 65 53 51 4c 20 54 61  b> PostgreSQL Ta
1c80: 62 6c 65 73 20 61 6e 64 20 56 69 65 77 73 20 61  bles and Views a
1c90: 72 65 20 63 6f 6e 73 69 64 65 72 65 64 2c 20 61  re considered, a
1ca0: 73 20 66 61 72 20 61 73 20 70 6f 73 73 69 62 6c  s far as possibl
1cb0: 65 2c 20 61 73 20 69 66 20 74 68 65 79 20 77 65  e, as if they we
1cc0: 72 65 20 6e 61 74 69 76 65 20 53 51 4c 69 74 65  re native SQLite
1cd0: 20 6f 62 6a 65 63 74 73 2e 3c 62 72 3e 0d 0a 53   objects.<br>..S
1ce0: 6f 20 74 68 65 20 75 73 75 61 6c 20 6f 70 65 72  o the usual oper
1cf0: 61 74 69 6f 6e 73 20 73 75 70 70 6f 72 74 65 64  ations supported
1d00: 20 6f 6e 20 53 51 4c 69 74 65 27 73 20 6f 77 6e   on SQLite's own
1d10: 20 6f 62 6a 65 63 74 73 20 77 69 6c 6c 20 62 65   objects will be
1d20: 20 73 75 70 70 6f 72 74 65 64 20 61 6c 73 6f 20   supported also 
1d30: 69 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 50  in the case of P
1d40: 6f 73 74 67 72 65 53 51 4c 20 6f 62 6a 65 63 74  ostgreSQL object
1d50: 73 2e 3c 2f 74 64 3e 0d 0a 3c 74 64 3e 3c 69 6d  s.</td>..<td><im
1d60: 67 20 73 72 63 3d 22 68 74 74 70 73 3a 2f 2f 77  g src="https://w
1d70: 77 77 2e 67 61 69 61 2d 67 69 73 2e 69 74 2f 67  ww.gaia-gis.it/g
1d80: 61 69 61 2d 73 69 6e 73 2f 67 75 69 2d 70 6f 73  aia-sins/gui-pos
1d90: 74 67 72 65 73 2f 67 75 69 31 32 2e 70 6e 67 22  tgres/gui12.png"
1da0: 20 61 6c 74 3d 22 74 61 62 6c 65 20 6f 70 65 72   alt="table oper
1db0: 61 74 69 6f 6e 73 22 3e 3c 2f 74 64 3e 0d 0a 3c  ations"></td>..<
1dc0: 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e  /tr>..<tr>..<td>
1dd0: 3c 62 3e 34 2e 62 3c 2f 62 3e 20 74 68 65 20 61  <b>4.b</b> the a
1de0: 62 6f 76 65 20 63 72 69 74 65 72 69 61 20 77 69  bove criteria wi
1df0: 6c 6c 20 61 70 70 6c 79 20 61 6c 73 6f 20 74 6f  ll apply also to
1e00: 20 50 6f 73 74 47 49 53 20 47 65 6f 6d 65 74 72   PostGIS Geometr
1e10: 69 65 73 2e 3c 62 72 3e 3c 62 72 3e 3c 62 72 3e  ies.<br><br><br>
1e20: 0d 0a 3c 62 3e 48 69 6e 74 3c 2f 62 3e 3a 20 65  ..<b>Hint</b>: e
1e30: 78 70 6f 72 74 69 6e 67 20 61 20 66 75 6c 6c 20  xporting a full 
1e40: 53 68 61 70 65 66 69 6c 65 20 66 72 6f 6d 20 61  Shapefile from a
1e50: 20 50 6f 73 74 47 49 53 20 54 61 62 6c 65 20 77   PostGIS Table w
1e60: 61 73 20 6e 65 76 65 72 20 6d 6f 72 65 20 64 69  as never more di
1e70: 72 65 63 74 20 61 6e 64 20 73 69 6d 70 6c 65 20  rect and simple 
1e80: 74 68 61 6e 20 74 68 69 73 2e 3c 2f 74 64 3e 0d  than this.</td>.
1e90: 0a 3c 74 64 3e 3c 69 6d 67 20 73 72 63 3d 22 68  .<td><img src="h
1ea0: 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d  ttps://www.gaia-
1eb0: 67 69 73 2e 69 74 2f 67 61 69 61 2d 73 69 6e 73  gis.it/gaia-sins
1ec0: 2f 67 75 69 2d 70 6f 73 74 67 72 65 73 2f 67 75  /gui-postgres/gu
1ed0: 69 31 33 2e 70 6e 67 22 20 61 6c 74 3d 22 67 65  i13.png" alt="ge
1ee0: 6f 6d 65 74 72 79 20 6f 70 65 72 61 74 69 6f 6e  ometry operation
1ef0: 73 22 3e 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d  s"></td>..</tr>.
1f00: 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 3c 62 3e 34 2e  .<tr>..<td><b>4.
1f10: 63 3c 2f 62 3e 20 62 65 20 77 61 72 6e 65 64 3b  c</b> be warned;
1f20: 20 64 69 72 65 63 74 6c 79 20 71 75 65 72 79 69   directly queryi
1f30: 6e 67 20 61 20 3c 62 3e 50 6f 73 74 47 49 53 20  ng a <b>PostGIS 
1f40: 54 61 62 6c 65 3c 2f 62 3e 20 28 69 2e 65 2e 20  Table</b> (i.e. 
1f50: 61 20 56 69 72 74 75 61 6c 50 6f 73 74 67 72 65  a VirtualPostgre
1f60: 73 20 54 61 62 6c 65 20 63 6f 6e 74 61 69 6e 69  s Table containi
1f70: 6e 67 20 50 6f 73 74 47 49 53 20 47 65 6f 6d 65  ng PostGIS Geome
1f80: 74 72 69 65 73 29 20 6e 65 76 65 72 20 69 73 20  tries) never is 
1f90: 61 20 67 6f 6f 64 20 69 64 65 61 2e 0d 0a 46 6f  a good idea...Fo
1fa0: 72 20 72 65 61 73 6f 6e 73 20 65 78 70 6c 61 69  r reasons explai
1fb0: 6e 65 64 20 69 6e 20 3c 62 3e 34 2e 64 3c 2f 62  ned in <b>4.d</b
1fc0: 3e 2c 20 79 6f 75 27 6c 6c 20 62 65 20 61 6c 77  >, you'll be alw
1fd0: 61 79 73 20 61 73 6b 65 64 20 3c 62 3e 74 77 69  ays asked <b>twi
1fe0: 63 65 3c 2f 62 3e 20 62 65 66 6f 72 65 20 73 74  ce</b> before st
1ff0: 61 72 74 69 6e 67 20 73 75 63 68 20 61 6e 20 65  arting such an e
2000: 78 74 65 6e 73 69 76 65 20 28 61 6e 64 20 70 6f  xtensive (and po
2010: 74 65 6e 74 69 61 6c 6c 79 20 64 61 6e 67 65 72  tentially danger
2020: 6f 75 73 29 20 61 63 74 69 6f 6e 2e 3c 2f 74 64  ous) action.</td
2030: 3e 0d 0a 3c 74 64 3e 3c 69 6d 67 20 73 72 63 3d  >..<td><img src=
2040: 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69  "https://www.gai
2050: 61 2d 67 69 73 2e 69 74 2f 67 61 69 61 2d 73 69  a-gis.it/gaia-si
2060: 6e 73 2f 67 75 69 2d 70 6f 73 74 67 72 65 73 2f  ns/gui-postgres/
2070: 67 75 69 31 37 2e 70 6e 67 22 20 61 6c 74 3d 22  gui17.png" alt="
2080: 64 69 72 65 63 74 20 70 6f 73 74 67 69 73 20 71  direct postgis q
2090: 75 65 72 79 22 3e 3c 2f 74 64 3e 0d 0a 3c 2f 74  uery"></td>..</t
20a0: 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 3c 62  r>..<tr>..<td><b
20b0: 3e 34 2e 64 3c 2f 62 3e 20 74 68 65 20 72 65 61  >4.d</b> the rea
20c0: 73 6f 6e 20 66 6f 72 20 73 75 63 68 20 61 20 62  son for such a b
20d0: 65 68 61 76 69 6f 75 72 20 69 73 20 63 6c 65 61  ehaviour is clea
20e0: 72 6c 79 20 73 68 6f 77 6e 20 69 6e 20 74 68 65  rly shown in the
20f0: 20 73 69 64 65 20 66 69 67 75 72 65 2e 3c 62 72   side figure.<br
2100: 3e 0d 0a 41 20 56 69 72 74 75 61 6c 50 6f 73 74  >..A VirtualPost
2110: 67 72 65 73 20 54 61 62 6c 65 20 77 69 6c 6c 20  gres Table will 
2120: 65 78 70 6f 73 65 20 61 6c 6c 20 47 65 6f 6d 65  expose all Geome
2130: 74 72 69 65 73 20 61 73 20 3c 62 3e 45 57 4b 42  tries as <b>EWKB
2140: 20 74 65 78 74 20 73 74 72 69 6e 67 73 3c 2f 62   text strings</b
2150: 3e 20 75 73 69 6e 67 20 61 6e 20 68 65 78 61 64  > using an hexad
2160: 65 63 69 6d 61 6c 20 6e 6f 74 61 74 69 6f 6e 3b  ecimal notation;
2170: 20 69 6e 20 74 68 69 73 20 63 61 73 65 20 77 65   in this case we
2180: 20 68 61 76 65 20 73 69 6d 70 6c 65 20 50 4f 49   have simple POI
2190: 4e 54 53 2c 20 61 6e 64 20 74 68 65 20 45 57 4b  NTS, and the EWK
21a0: 42 20 73 74 72 69 6e 67 73 20 61 72 65 20 72 65  B strings are re
21b0: 61 73 6f 6e 61 62 6c 79 20 63 6f 6d 70 61 63 74  asonably compact
21c0: 2e 3c 62 72 3e 0d 0a 42 75 74 20 75 6e 68 61 70  .<br>..But unhap
21d0: 70 69 6c 79 20 63 6f 6d 70 6c 65 78 20 4c 49 4e  pily complex LIN
21e0: 45 53 54 52 49 4e 47 20 6f 72 20 50 4f 4c 59 47  ESTRING or POLYG
21f0: 4f 4e 20 47 65 6f 6d 65 74 72 69 65 73 20 6d 61  ON Geometries ma
2200: 79 20 65 61 73 69 6c 79 20 72 65 71 75 69 72 65  y easily require
2210: 20 73 65 76 65 72 61 6c 20 6d 69 6c 6c 69 6f 6e   several million
2220: 20 63 68 61 72 61 63 74 65 72 73 2c 20 61 6e 64   characters, and
2230: 20 74 68 69 73 20 77 69 6c 6c 20 65 61 73 69 6c   this will easil
2240: 79 20 6f 76 65 72 20 73 74 72 65 73 73 20 74 68  y over stress th
2250: 65 20 47 55 49 2e 3c 62 72 3e 0d 0a 54 68 65 20  e GUI.<br>..The 
2260: 65 78 65 63 75 74 69 6f 6e 20 73 70 65 65 64 20  execution speed 
2270: 6f 66 20 73 75 63 68 20 61 20 71 75 65 72 79 20  of such a query 
2280: 77 69 6c 6c 20 63 65 72 74 61 69 6e 6c 79 20 62  will certainly b
2290: 65 20 3c 62 3e 76 65 72 79 3c 2f 62 3e 20 73 6c  e <b>very</b> sl
22a0: 75 67 67 69 73 68 2c 20 61 6e 64 20 69 6e 73 74  uggish, and inst
22b0: 61 62 69 6c 69 74 79 20 70 72 6f 62 6c 65 6d 73  ability problems
22c0: 2c 20 63 61 75 73 65 64 20 62 79 20 65 78 63 65  , caused by exce
22d0: 73 73 69 76 65 20 6d 65 6d 6f 72 79 20 75 73 65  ssive memory use
22e0: 2c 20 63 6f 75 6c 64 20 65 76 65 6e 74 75 61 6c  , could eventual
22f0: 6c 79 20 61 72 69 73 65 2e 3c 62 72 3e 3c 62 72  ly arise.<br><br
2300: 3e 3c 62 72 3e 0d 0a 3c 62 3e 53 68 6f 72 74 20  ><br>..<b>Short 
2310: 63 6f 6e 63 6c 75 73 69 6f 6e 3c 2f 62 3e 3a 20  conclusion</b>: 
2320: 6e 65 76 65 72 2c 20 65 76 65 72 2c 20 61 74 74  never, ever, att
2330: 65 6d 70 74 20 74 6f 20 64 69 72 65 63 74 6c 79  empt to directly
2340: 20 71 75 65 72 79 20 61 20 50 6f 73 74 47 49 53   query a PostGIS
2350: 20 54 61 62 6c 65 20 21 3c 2f 74 64 3e 0d 0a 3c   Table !</td>..<
2360: 74 64 3e 3c 69 6d 67 20 73 72 63 3d 22 68 74 74  td><img src="htt
2370: 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69  ps://www.gaia-gi
2380: 73 2e 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f 67  s.it/gaia-sins/g
2390: 75 69 2d 70 6f 73 74 67 72 65 73 2f 67 75 69 31  ui-postgres/gui1
23a0: 35 2e 70 6e 67 22 20 61 6c 74 3d 22 64 69 72 65  5.png" alt="dire
23b0: 63 74 20 70 6f 73 74 67 69 73 20 71 75 65 72 79  ct postgis query
23c0: 22 3e 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a  "></td>..</tr>..
23d0: 3c 74 72 3e 0d 0a 3c 74 64 3e 3c 62 3e 34 2e 65  <tr>..<td><b>4.e
23e0: 3c 2f 62 3e 20 54 6f 20 61 76 6f 69 64 20 74 68  </b> To avoid th
23f0: 69 73 20 70 72 6f 62 6c 65 6d 2c 20 61 20 63 6f  is problem, a co
2400: 6d 70 61 6e 69 6f 6e 20 53 70 61 74 69 61 6c 20  mpanion Spatial 
2410: 56 69 65 77 20 65 78 69 73 74 73 20 66 6f 72 20  View exists for 
2420: 65 76 65 72 79 20 50 6f 73 74 47 49 53 20 54 61  every PostGIS Ta
2430: 62 6c 65 2c 20 61 6e 64 20 69 73 20 73 70 65 63  ble, and is spec
2440: 69 66 69 63 61 6c 6c 79 20 69 6e 74 65 6e 64 65  ifically intende
2450: 64 20 74 6f 20 73 75 70 70 6f 72 74 20 73 61 66  d to support saf
2460: 65 20 61 6e 64 20 74 72 6f 75 62 6c 65 20 66 72  e and trouble fr
2470: 65 65 20 71 75 65 72 69 65 73 2e 3c 62 72 3e 0d  ee queries.<br>.
2480: 0a 41 6c 73 6f 20 74 68 65 20 63 6f 6d 70 61 6e  .Also the compan
2490: 69 6f 6e 20 53 70 61 74 69 61 6c 20 56 69 65 77  ion Spatial View
24a0: 20 77 69 6c 6c 20 74 61 6b 65 20 63 61 72 65 20   will take care 
24b0: 74 6f 20 73 69 6c 65 6e 74 6c 79 20 63 6f 6e 76  to silently conv
24c0: 65 72 74 20 62 69 6e 61 72 79 20 47 65 6f 6d 65  ert binary Geome
24d0: 74 72 69 65 73 20 74 6f 20 61 6e 64 20 66 72 6f  tries to and fro
24e0: 6d 20 74 68 65 20 75 73 75 61 6c 20 53 70 61 74  m the usual Spat
24f0: 69 61 4c 69 74 65 27 73 20 6f 77 6e 20 66 6f 72  iaLite's own for
2500: 6d 61 74 2c 20 73 69 6d 70 6c 69 66 79 69 6e 67  mat, simplifying
2510: 20 74 68 65 20 77 72 69 74 69 6e 67 20 6f 66 20   the writing of 
2520: 63 75 73 74 6f 6d 69 7a 65 64 20 53 51 4c 20 71  customized SQL q
2530: 75 65 72 69 65 73 20 75 73 69 6e 67 20 53 70 61  ueries using Spa
2540: 74 69 61 6c 20 46 75 6e 63 74 69 6f 6e 73 20 73  tial Functions s
2550: 69 6e 63 65 20 6e 6f 20 62 69 6e 61 72 79 20 63  ince no binary c
2560: 6f 6e 76 65 72 73 69 6f 6e 73 20 6f 66 20 74 68  onversions of th
2570: 65 20 47 65 6f 6d 65 74 72 69 65 73 20 61 72 65  e Geometries are
2580: 20 6e 65 65 64 65 64 2e 3c 2f 74 64 3e 0d 0a 3c   needed.</td>..<
2590: 74 64 3e 3c 69 6d 67 20 73 72 63 3d 22 68 74 74  td><img src="htt
25a0: 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69  ps://www.gaia-gi
25b0: 73 2e 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f 67  s.it/gaia-sins/g
25c0: 75 69 2d 70 6f 73 74 67 72 65 73 2f 67 75 69 31  ui-postgres/gui1
25d0: 36 2e 70 6e 67 22 20 61 6c 74 3d 22 69 6e 64 69  6.png" alt="indi
25e0: 72 65 63 74 20 70 6f 73 74 67 69 73 20 71 75 65  rect postgis que
25f0: 72 79 22 3e 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e  ry"></td>..</tr>
2600: 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 3c 62 3e 34  ..<tr>..<td><b>4
2610: 2e 66 3c 2f 62 3e 20 74 68 65 20 63 6f 6d 70 61  .f</b> the compa
2620: 6e 69 6f 6e 20 53 70 61 74 69 61 6c 20 56 69 65  nion Spatial Vie
2630: 77 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 62 65  w will always be
2640: 20 61 20 3c 62 3e 57 72 69 74 61 62 6c 65 20 56   a <b>Writable V
2650: 69 65 77 3c 2f 62 3e 20 77 68 65 6e 20 74 68 65  iew</b> when the
2660: 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 50   corresponding P
2670: 6f 73 74 47 49 53 20 54 61 62 6c 65 20 69 73 20  ostGIS Table is 
2680: 61 70 70 72 6f 70 72 69 61 74 65 6c 79 20 65 6e  appropriately en
2690: 61 62 6c 65 64 20 61 6e 64 20 77 68 65 6e 20 74  abled and when t
26a0: 68 65 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 73 75  he connection su
26b0: 70 70 6f 72 74 73 20 52 45 41 44 2d 57 52 49 54  pports READ-WRIT
26c0: 45 20 6f 70 65 72 61 74 69 6f 6e 73 2e 3c 62 72  E operations.<br
26d0: 3e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 62 3e 4e 6f  ><br><br>..<b>No
26e0: 74 65 3c 2f 62 3e 3a 20 41 6c 6c 20 61 70 70 72  te</b>: All appr
26f0: 6f 70 72 69 61 74 65 20 54 72 69 67 67 65 72 73  opriate Triggers
2700: 20 28 73 75 70 70 6f 72 74 69 6e 67 20 3c 62 3e   (supporting <b>
2710: 49 4e 53 45 52 54 3c 2f 62 3e 2c 20 3c 62 3e 55  INSERT</b>, <b>U
2720: 50 44 41 54 45 3c 2f 62 3e 20 61 6e 64 20 3c 62  PDATE</b> and <b
2730: 3e 44 45 4c 45 54 45 3c 2f 62 3e 20 6f 70 65 72  >DELETE</b> oper
2740: 61 74 69 6f 6e 73 29 2c 20 66 6f 72 20 61 20 57  ations), for a W
2750: 72 69 74 61 62 6c 65 20 53 70 61 74 69 61 6c 20  ritable Spatial 
2760: 56 69 65 77 2c 20 77 69 6c 6c 20 62 65 20 61 75  View, will be au
2770: 74 6f 6d 61 74 69 63 61 6c 6c 79 20 63 72 65 61  tomatically crea
2780: 74 65 64 2e 3c 2f 74 64 3e 0d 0a 3c 74 64 3e 3c  ted.</td>..<td><
2790: 69 6d 67 20 73 72 63 3d 22 68 74 74 70 73 3a 2f  img src="https:/
27a0: 2f 77 77 77 2e 67 61 69 61 2d 67 69 73 2e 69 74  /www.gaia-gis.it
27b0: 2f 67 61 69 61 2d 73 69 6e 73 2f 67 75 69 2d 70  /gaia-sins/gui-p
27c0: 6f 73 74 67 72 65 73 2f 67 75 69 31 34 2e 70 6e  ostgres/gui14.pn
27d0: 67 22 20 61 6c 74 3d 22 70 6f 73 74 67 69 73 20  g" alt="postgis 
27e0: 65 64 69 74 69 6e 67 22 3e 3c 2f 74 64 3e 0d 0a  editing"></td>..
27f0: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 3c 74 64 20 63  </tr>..<tr><td c
2800: 6f 6c 73 70 61 6e 3d 22 32 22 20 61 6c 69 67 6e  olspan="2" align
2810: 3d 22 63 65 6e 74 65 72 22 3e 3c 68 33 3e 3c 61  ="center"><h3><a
2820: 20 6e 61 6d 65 3d 22 61 64 64 65 6e 64 75 6d 22   name="addendum"
2830: 3e 41 64 64 65 6e 64 75 6d 3c 2f 61 3e 3a 20 73  >Addendum</a>: s
2840: 70 65 63 69 61 6c 20 6e 6f 74 65 20 66 6f 72 20  pecial note for 
2850: 57 69 6e 64 6f 77 73 20 75 73 65 72 73 3c 2f 68  Windows users</h
2860: 33 3e 3c 68 72 3e 3c 2f 74 64 3e 3c 2f 74 72 3e  3><hr></td></tr>
2870: 0d 0a 3c 74 72 3e 3c 74 64 20 63 6f 6c 73 70 61  ..<tr><td colspa
2880: 6e 20 3d 20 22 32 22 3e 0d 0a 41 6c 6c 20 70 72  n = "2">..All pr
2890: 65 76 69 6f 75 73 20 76 65 72 73 69 6f 6e 73 20  evious versions 
28a0: 6f 66 20 74 68 65 20 47 55 49 20 62 69 6e 61 72  of the GUI binar
28b0: 69 65 73 20 72 65 6c 65 61 73 65 64 20 69 6e 20  ies released in 
28c0: 74 68 65 20 70 61 73 74 20 77 65 72 65 20 61 6c  the past were al
28d0: 77 61 79 73 20 62 61 73 65 64 20 6f 6e 20 61 20  ways based on a 
28e0: 73 69 6e 67 6c 65 20 6d 6f 6e 6f 6c 69 74 68 69  single monolithi
28f0: 63 20 3c 62 3e 2e 65 78 65 3c 2f 62 3e 20 66 75  c <b>.exe</b> fu
2900: 6c 6c 79 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e  lly depending on
2910: 20 73 74 61 74 69 63 20 6c 69 6e 6b 61 67 65 20   static linkage 
2920: 61 6e 64 20 6e 6f 74 20 72 65 71 75 69 72 69 6e  and not requirin
2930: 67 20 61 6e 79 20 44 4c 4c 20 61 74 20 61 6c 6c  g any DLL at all
2940: 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 55 6e 68 61 70  .<br><br>..Unhap
2950: 70 69 6c 79 20 74 68 69 73 20 69 73 20 6e 6f 20  pily this is no 
2960: 6c 6f 6e 67 65 72 20 70 6f 73 73 69 62 6c 65 2c  longer possible,
2970: 20 73 69 6e 63 65 20 3c 62 3e 6c 69 62 70 71 3c   since <b>libpq<
2980: 2f 62 3e 20 28 3c 69 3e 74 68 65 20 50 6f 73 74  /b> (<i>the Post
2990: 67 72 65 53 51 4c 20 6f 77 6e 20 63 6c 69 65 6e  greSQL own clien
29a0: 74 20 6c 69 62 72 61 72 79 3c 2f 69 3e 29 20 69  t library</i>) i
29b0: 73 20 6f 6e 6c 79 20 61 76 61 69 6c 61 62 6c 65  s only available
29c0: 20 61 73 20 61 20 44 4c 4c 20 6f 6e 20 57 69 6e   as a DLL on Win
29d0: 64 6f 77 73 2c 20 61 6e 64 20 74 68 65 72 65 66  dows, and theref
29e0: 6f 72 65 20 63 61 6e 6e 6f 74 20 62 65 20 75 73  ore cannot be us
29f0: 65 64 20 74 6f 20 63 72 65 61 74 65 20 61 20 63  ed to create a c
2a00: 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 73 74 61  orresponding sta
2a10: 74 69 63 20 6c 69 62 72 61 72 79 2e 3c 62 72 3e  tic library.<br>
2a20: 0d 0a 4d 6f 72 65 20 70 72 65 63 69 73 65 6c 79  ..More precisely
2a30: 3a 20 61 20 73 74 61 74 69 63 20 6c 69 62 72 61  : a static libra
2a40: 72 79 20 69 73 20 61 63 74 75 61 6c 6c 79 20 62  ry is actually b
2a50: 75 69 6c 74 20 77 68 65 6e 20 63 6f 6d 70 69 6c  uilt when compil
2a60: 69 6e 67 20 50 6f 73 74 67 72 65 53 51 4c 2c 20  ing PostgreSQL, 
2a70: 62 75 74 20 6f 6e 20 57 69 6e 64 6f 77 73 20 69  but on Windows i
2a80: 74 20 73 69 6d 70 6c 79 20 69 73 20 61 20 73 74  t simply is a st
2a90: 75 62 20 73 74 69 6c 6c 20 72 65 71 75 69 72 69  ub still requiri
2aa0: 6e 67 20 74 6f 20 6c 6f 61 64 20 74 68 65 20 44  ng to load the D
2ab0: 4c 4c 20 61 74 20 72 75 6e 20 74 69 6d 65 2e 3c  LL at run time.<
2ac0: 62 72 3e 3c 62 72 3e 3c 62 72 3e 0d 0a 46 6f 72  br><br><br>..For
2ad0: 20 74 68 69 73 20 72 65 61 73 6f 6e 2c 20 3c 62   this reason, <b
2ae0: 3e 73 70 61 74 69 61 6c 69 74 65 5f 67 75 69 2e  >spatialite_gui.
2af0: 65 78 65 3c 2f 62 3e 2c 20 77 68 69 63 68 20 6f  exe</b>, which o
2b00: 74 68 65 72 77 69 73 65 20 64 65 70 65 6e 64 73  therwise depends
2b10: 20 6f 6e 20 61 20 73 74 61 74 69 63 20 6c 69 6e   on a static lin
2b20: 6b 61 67 65 2c 20 6d 75 73 74 20 6d 61 6b 65 20  kage, must make 
2b30: 61 6e 20 65 78 63 65 70 74 69 6f 6e 20 66 6f 72  an exception for
2b40: 20 3c 62 3e 6c 69 62 70 71 2e 64 6c 6c 3c 2f 62   <b>libpq.dll</b
2b50: 3e 2e 3c 62 72 3e 0d 0a 53 6f 20 61 20 72 65 61  >.<br>..So a rea
2b60: 73 6f 6e 61 62 6c 65 20 63 6f 6d 70 72 6f 6d 69  sonable compromi
2b70: 73 65 20 68 61 73 20 62 65 65 6e 20 61 64 6f 70  se has been adop
2b80: 74 65 64 20 69 6e 20 6f 72 64 65 72 20 74 6f 20  ted in order to 
2b90: 6d 69 74 69 67 61 74 65 20 74 68 65 20 6e 65 67  mitigate the neg
2ba0: 61 74 69 76 65 20 69 6d 70 61 63 74 20 6f 66 20  ative impact of 
2bb0: 73 75 63 68 20 61 6e 20 6f 64 64 20 6c 61 79 6f  such an odd layo
2bc0: 75 74 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 74  ut:..<ul>..<li>t
2bd0: 68 65 20 62 69 6e 61 72 69 65 73 20 66 6f 72 20  he binaries for 
2be0: 57 69 6e 64 6f 77 73 20 70 6c 61 74 66 6f 72 6d  Windows platform
2bf0: 73 20 77 69 6c 6c 20 62 65 20 62 75 69 6c 74 20  s will be built 
2c00: 69 6e 20 73 75 63 68 20 61 20 77 61 79 20 74 68  in such a way th
2c10: 61 74 20 3c 62 3e 6c 69 62 70 71 2e 64 6c 6c 3c  at <b>libpq.dll<
2c20: 2f 62 3e 20 77 69 6c 6c 20 73 75 70 70 6f 72 74  /b> will support
2c30: 20 77 68 61 74 20 69 73 20 67 65 6e 65 72 61 6c   what is general
2c40: 6c 79 20 6b 6e 6f 77 6e 20 61 73 20 3c 62 3e 6c  ly known as <b>l
2c50: 61 74 65 20 62 69 6e 64 69 6e 67 3c 2f 62 3e 20  ate binding</b> 
2c60: 61 6b 61 20 3c 62 3e 64 65 66 65 72 72 65 64 20  aka <b>deferred 
2c70: 62 69 6e 64 69 6e 67 3c 2f 62 3e 2e 3c 2f 6c 69  binding</b>.</li
2c80: 3e 0d 0a 3c 6c 69 3e 74 68 69 73 20 77 61 79 2c  >..<li>this way,
2c90: 20 74 68 65 20 6d 61 69 6e 20 63 6f 72 65 20 6f   the main core o
2ca0: 66 20 74 68 65 20 47 55 49 20 20 77 69 6c 6c 20  f the GUI  will 
2cb0: 63 6f 6e 74 69 6e 75 65 20 74 6f 20 77 6f 72 6b  continue to work
2cc0: 20 77 69 74 68 6f 75 74 20 6c 6f 61 64 69 6e 67   without loading
2cd0: 20 3c 62 3e 6c 69 62 70 71 2e 64 6c 6c 3c 2f 62   <b>libpq.dll</b
2ce0: 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e  >.</li>..<li><b>
2cf0: 6c 69 62 70 71 2e 64 6c 6c 3c 2f 62 3e 20 77 69  libpq.dll</b> wi
2d00: 6c 6c 20 62 65 20 6f 6e 6c 79 20 62 65 20 6c 6f  ll be only be lo
2d10: 61 64 65 64 20 77 68 65 6e 20 6e 65 65 64 65 64  aded when needed
2d20: 20 28 69 2e 65 2e 20 77 68 65 6e 20 74 68 65 20   (i.e. when the 
2d30: 75 73 65 72 20 72 65 71 75 65 73 74 73 20 61 20  user requests a 
2d40: 50 6f 73 74 67 72 65 53 51 4c 20 63 6f 6e 6e 65  PostgreSQL conne
2d50: 63 74 69 6f 6e 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c  ction).</li>..<l
2d60: 69 3e 69 66 20 74 68 65 20 44 4c 4c 20 66 61 69  i>if the DLL fai
2d70: 6c 73 20 74 6f 20 62 65 20 6c 6f 61 64 65 64 20  ls to be loaded 
2d80: 66 6f 72 20 61 6e 79 20 72 65 61 73 6f 6e 2c 20  for any reason, 
2d90: 74 68 65 20 50 6f 73 74 67 72 65 53 51 4c 20 73  the PostgreSQL s
2da0: 75 70 70 6f 72 74 20 77 69 6c 6c 20 72 65 6d 61  upport will rema
2db0: 69 6e 20 64 69 73 61 62 6c 65 64 20 61 6e 64 20  in disabled and 
2dc0: 74 68 65 20 47 55 49 20 77 69 6c 6c 20 63 6f 6e  the GUI will con
2dd0: 74 69 6e 75 65 20 75 6e 61 66 66 65 63 74 65 64  tinue unaffected
2de0: 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c  .</li>..</ul>..<
2df0: 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 3c  /td></tr>..<tr><
2e00: 74 64 20 63 6f 6c 73 70 61 6e 3d 22 32 22 20 61  td colspan="2" a
2e10: 6c 69 67 6e 3d 22 63 65 6e 74 65 72 22 3e 3c 68  lign="center"><h
2e20: 33 3e 48 6f 77 20 74 6f 20 6c 6f 61 64 20 4c 69  3>How to load Li
2e30: 62 50 47 2c 20 77 68 65 6e 20 69 74 20 68 61 73  bPG, when it has
2e40: 20 6e 6f 74 20 62 65 65 6e 20 61 75 74 6f 6d 61   not been automa
2e50: 74 69 63 61 6c 6c 79 20 66 6f 75 6e 64 3c 2f 68  tically found</h
2e60: 33 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 3c 74 72  3</td></tr>..<tr
2e70: 3e 0d 0a 3c 74 64 3e 3c 62 3e 41 2e 31 3c 2f 62  >..<td><b>A.1</b
2e80: 3e 20 3c 62 3e 6c 69 62 70 71 2e 64 6c 6c 3c 2f  > <b>libpq.dll</
2e90: 62 3e 20 77 69 6c 6c 20 62 65 20 6c 6f 61 64 65  b> will be loade
2ea0: 64 20 77 68 65 6e 20 61 63 63 65 73 73 69 6e 67  d when accessing
2eb0: 20 61 20 50 6f 73 74 67 72 65 53 51 4c 20 66 6f   a PostgreSQL fo
2ec0: 72 20 74 68 65 20 66 69 72 73 74 20 74 69 6d 65  r the first time
2ed0: 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 61 6e 20  :..<ul>..<li>an 
2ee0: 61 75 74 6f 6d 61 74 69 63 20 61 74 74 65 6d 70  automatic attemp
2ef0: 74 20 77 69 6c 6c 20 62 65 20 70 65 72 66 6f 72  t will be perfor
2f00: 6d 65 64 20 61 63 63 6f 72 64 69 6e 67 6c 79 20  med accordingly 
2f10: 74 6f 20 74 68 65 20 73 74 61 6e 64 61 72 64 20  to the standard 
2f20: 70 6c 61 74 66 6f 72 6d 20 72 75 6c 65 73 20 28  platform rules (
2f30: 6d 6f 73 74 6c 79 3a 20 73 65 61 72 63 68 20 70  mostly: search p
2f40: 61 74 68 73 29 2e 3c 62 72 3e 0d 0a 3c 62 3e 48  aths).<br>..<b>H
2f50: 69 6e 74 3c 2f 62 3e 3a 20 6f 6e 20 57 69 6e 64  int</b>: on Wind
2f60: 6f 77 73 2c 20 70 6c 61 63 69 6e 67 20 74 68 65  ows, placing the
2f70: 20 44 4c 4c 20 69 6e 20 74 68 65 20 73 61 6d 65   DLL in the same
2f80: 20 66 6f 6c 64 65 72 20 61 73 20 74 68 65 20 47   folder as the G
2f90: 55 49 20 65 78 65 63 75 74 61 62 6c 65 2c 20 73  UI executable, s
2fa0: 69 6d 70 6c 69 66 79 73 20 6d 61 74 74 65 72 73  implifys matters
2fb0: 20 6e 69 63 6c 79 2e 3c 2f 6c 69 3e 0d 0a 3c 6c   nicly.</li>..<l
2fc0: 69 3e 69 66 20 3c 62 3e 6c 69 62 70 71 2e 64 6c  i>if <b>libpq.dl
2fd0: 6c 3c 2f 62 3e 20 63 61 6e 6e 6f 74 20 62 65 20  l</b> cannot be 
2fe0: 66 6f 75 6e 64 2c 20 74 68 65 6e 20 74 68 65 20  found, then the 
2ff0: 75 73 65 72 20 69 73 20 61 73 6b 65 64 20 74 6f  user is asked to
3000: 20 6d 61 6e 75 61 6c 6c 79 20 6c 6f 61 64 69 6e   manually loadin
3010: 67 20 3c 62 3e 6c 69 62 70 71 2e 64 6c 6c 3c 2f  g <b>libpq.dll</
3020: 62 3e 2c 20 61 73 20 73 68 6f 77 6e 20 62 79 20  b>, as shown by 
3030: 74 68 65 20 73 69 64 65 20 66 69 67 75 72 65 2e  the side figure.
3040: 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 74 64  </li>..</ul></td
3050: 3e 0d 0a 3c 74 64 3e 3c 69 6d 67 20 73 72 63 3d  >..<td><img src=
3060: 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69  "https://www.gai
3070: 61 2d 67 69 73 2e 69 74 2f 67 61 69 61 2d 73 69  a-gis.it/gaia-si
3080: 6e 73 2f 67 75 69 2d 70 6f 73 74 67 72 65 73 2f  ns/gui-postgres/
3090: 6c 69 62 70 71 2d 64 65 66 65 72 72 65 64 31 2e  libpq-deferred1.
30a0: 70 6e 67 22 20 61 6c 74 3d 22 6c 69 62 70 71 20  png" alt="libpq 
30b0: 6e 6f 74 20 66 6f 75 6e 64 22 3e 3c 2f 74 64 3e  not found"></td>
30c0: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c  ..</tr>..<tr>..<
30d0: 74 64 3e 3c 62 3e 41 2e 32 3c 2f 62 3e 20 74 68  td><b>A.2</b> th
30e0: 65 20 73 74 61 6e 64 61 72 64 20 46 69 6c 65 20  e standard File 
30f0: 53 65 6c 65 63 74 69 6f 6e 20 64 69 61 6c 6f 67  Selection dialog
3100: 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20   can be used to 
3110: 6c 6f 63 61 74 65 20 61 6e 64 20 6f 70 65 6e 20  locate and open 
3120: 74 68 65 20 3c 62 3e 6c 69 62 70 71 2e 64 6c 6c  the <b>libpq.dll
3130: 3c 2f 62 3e 2e 3c 62 72 3e 3c 62 72 3e 3c 62 72  </b>.<br><br><br
3140: 3e 0d 0a 3c 62 3e 57 61 72 6e 69 6e 67 3c 2f 62  >..<b>Warning</b
3150: 3e 3a 20 61 20 63 6f 6d 6d 6f 6e 20 70 69 74 66  >: a common pitf
3160: 61 6c 6c 20 69 73 20 61 74 74 65 6d 70 74 69 6e  all is attemptin
3170: 67 20 74 6f 20 6c 6f 61 64 20 61 20 33 32 2f 36  g to load a 32/6
3180: 34 20 62 69 74 20 44 4c 4c 20 74 6f 20 61 20 36  4 bit DLL to a 6
3190: 34 2f 33 32 20 62 69 74 20 47 55 49 2e 3c 62 72  4/32 bit GUI.<br
31a0: 3e 0d 0a 54 68 65 20 63 6f 64 65 20 6d 6f 64 65  >..The code mode
31b0: 6c 20 28 33 32 2f 36 34 20 62 69 74 29 20 6f 66  l (32/64 bit) of
31c0: 20 62 6f 74 68 20 74 68 65 20 65 78 65 63 75 74   both the execut
31d0: 61 62 6c 65 20 61 6e 64 20 74 68 65 20 44 4c 4c  able and the DLL
31e0: 20 6d 75 73 74 20 74 68 65 20 73 61 6d 65 2e 3c   must the same.<
31f0: 2f 74 64 3e 0d 0a 3c 74 64 3e 3c 69 6d 67 20 73  /td>..<td><img s
3200: 72 63 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e  rc="https://www.
3210: 67 61 69 61 2d 67 69 73 2e 69 74 2f 67 61 69 61  gaia-gis.it/gaia
3220: 2d 73 69 6e 73 2f 67 75 69 2d 70 6f 73 74 67 72  -sins/gui-postgr
3230: 65 73 2f 6c 69 62 70 71 2d 64 65 66 65 72 72 65  es/libpq-deferre
3240: 64 32 2e 70 6e 67 22 20 61 6c 74 3d 22 6c 69 62  d2.png" alt="lib
3250: 70 71 20 6f 70 65 6e 22 3e 3c 2f 74 64 3e 0d 0a  pq open"></td>..
3260: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64  </tr>..<tr>..<td
3270: 3e 3c 62 3e 41 2e 33 3c 2f 62 3e 20 69 66 20 3c  ><b>A.3</b> if <
3280: 62 3e 6c 69 62 70 71 2e 64 6c 6c 3c 2f 62 3e 20  b>libpq.dll</b> 
3290: 68 61 73 20 62 65 65 6e 20 73 75 63 63 65 73 73  has been success
32a0: 66 75 6c 6c 79 20 6c 6f 61 64 65 64 20 61 20 63  fully loaded a c
32b0: 6f 6e 66 69 72 6d 61 74 69 6f 6e 20 6d 65 73 73  onfirmation mess
32c0: 61 67 65 20 77 69 6c 6c 20 62 65 20 73 68 6f 77  age will be show
32d0: 6e 2c 20 77 69 74 68 20 74 68 65 20 61 73 73 6f  n, with the asso
32e0: 63 69 61 74 69 6f 6e 20 62 65 74 77 65 65 6e 20  ciation between 
32f0: 74 68 65 20 47 55 49 20 61 6e 64 20 74 68 65 20  the GUI and the 
3300: 44 4c 4c 20 70 65 72 6d 61 6e 65 6e 74 6c 79 20  DLL permanently 
3310: 72 65 67 69 73 74 65 72 65 64 2e 3c 62 72 3e 0d  registered.<br>.
3320: 0a 4f 6e 63 65 20 73 75 63 63 65 73 73 66 75 6c  .Once successful
3330: 6c 79 20 6c 6f 61 64 65 64 2c 20 61 6c 6c 20 74  ly loaded, all t
3340: 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 73 65 73  he following ses
3350: 73 69 6f 6e 73 20 77 69 6c 6c 20 75 73 65 20 74  sions will use t
3360: 68 69 73 20 61 73 73 6f 63 69 61 74 69 6f 6e 20  his association 
3370: 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 2c 20 6d  automatically, m
3380: 61 6b 69 6e 67 20 74 68 69 73 20 61 20 6f 6e 65  aking this a one
3390: 20 74 69 6d 65 20 65 66 66 6f 72 74 2e 3c 2f 74   time effort.</t
33a0: 64 3e 0d 0a 3c 74 64 3e 3c 69 6d 67 20 73 72 63  d>..<td><img src
33b0: 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61  ="https://www.ga
33c0: 69 61 2d 67 69 73 2e 69 74 2f 67 61 69 61 2d 73  ia-gis.it/gaia-s
33d0: 69 6e 73 2f 67 75 69 2d 70 6f 73 74 67 72 65 73  ins/gui-postgres
33e0: 2f 6c 69 62 70 71 2d 64 65 66 65 72 72 65 64 33  /libpq-deferred3
33f0: 2e 70 6e 67 22 20 61 6c 74 3d 22 6c 69 62 70 71  .png" alt="libpq
3400: 20 6c 6f 61 64 65 64 22 3e 3c 2f 74 64 3e 0d 0a   loaded"></td>..
3410: 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d  </tr>..</table>.
3420: 0a 0d 0a 0d 0a 42 61 63 6b 20 74 6f 20 3c 61 20  .....Back to <a 
3430: 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 77 77  href="https://ww
3440: 77 2e 67 61 69 61 2d 67 69 73 2e 69 74 2f 66 6f  w.gaia-gis.it/fo
3450: 73 73 69 6c 2f 73 70 61 74 69 61 6c 69 74 65 5f  ssil/spatialite_
3460: 67 75 69 2f 77 69 6b 69 3f 6e 61 6d 65 3d 73 70  gui/wiki?name=sp
3470: 61 74 69 61 6c 69 74 65 2d 67 75 69 22 3e 6d 61  atialite-gui">ma
3480: 69 6e 20 57 69 6b 69 20 70 61 67 65 3c 2f 61 3e  in Wiki page</a>
3490: 0a 5a 20 35 39 64 33 38 61 66 31 39 34 64 37 38  .Z 59d38af194d78
34a0: 33 39 31 33 34 35 33 62 66 62 30 37 65 61 34 62  3913453bfb07ea4b
34b0: 64 34 32 0a                                      d42.