Documentation Source Text

Hex Artifact Content
Login

Artifact b35d4f3ae661bf25f31bc6b97a75b6a2379ea6fd:


0000: 73 65 74 20 73 79 6e 74 61 78 5f 6c 69 6e 6b 61  set syntax_linka
0010: 67 65 28 61 6c 74 65 72 2d 74 61 62 6c 65 2d 73  ge(alter-table-s
0020: 74 6d 74 29 20 7b 63 6f 6c 75 6d 6e 2d 64 65 66  tmt) {column-def
0030: 20 73 71 6c 2d 73 74 6d 74 7d 0a 73 65 74 20 73   sql-stmt}.set s
0040: 79 6e 74 61 78 5f 6c 69 6e 6b 61 67 65 28 61 6e  yntax_linkage(an
0050: 61 6c 79 7a 65 2d 73 74 6d 74 29 20 7b 7b 7d 20  alyze-stmt) {{} 
0060: 73 71 6c 2d 73 74 6d 74 7d 0a 73 65 74 20 73 79  sql-stmt}.set sy
0070: 6e 74 61 78 5f 6c 69 6e 6b 61 67 65 28 61 74 74  ntax_linkage(att
0080: 61 63 68 2d 73 74 6d 74 29 20 7b 7b 7d 20 73 71  ach-stmt) {{} sq
0090: 6c 2d 73 74 6d 74 7d 0a 73 65 74 20 73 79 6e 74  l-stmt}.set synt
00a0: 61 78 5f 6c 69 6e 6b 61 67 65 28 62 65 67 69 6e  ax_linkage(begin
00b0: 2d 73 74 6d 74 29 20 7b 7b 7d 20 73 71 6c 2d 73  -stmt) {{} sql-s
00c0: 74 6d 74 7d 0a 73 65 74 20 73 79 6e 74 61 78 5f  tmt}.set syntax_
00d0: 6c 69 6e 6b 61 67 65 28 63 6f 6c 75 6d 6e 2d 63  linkage(column-c
00e0: 6f 6e 73 74 72 61 69 6e 74 29 20 7b 7b 63 6f 6e  onstraint) {{con
00f0: 66 6c 69 63 74 2d 63 6c 61 75 73 65 20 65 78 70  flict-clause exp
0100: 72 20 66 6f 72 65 69 67 6e 2d 6b 65 79 2d 63 6c  r foreign-key-cl
0110: 61 75 73 65 20 6c 69 74 65 72 61 6c 2d 76 61 6c  ause literal-val
0120: 75 65 20 73 69 67 6e 65 64 2d 6e 75 6d 62 65 72  ue signed-number
0130: 7d 20 63 6f 6c 75 6d 6e 2d 64 65 66 7d 0a 73 65  } column-def}.se
0140: 74 20 73 79 6e 74 61 78 5f 6c 69 6e 6b 61 67 65  t syntax_linkage
0150: 28 63 6f 6c 75 6d 6e 2d 64 65 66 29 20 7b 7b 63  (column-def) {{c
0160: 6f 6c 75 6d 6e 2d 63 6f 6e 73 74 72 61 69 6e 74  olumn-constraint
0170: 20 74 79 70 65 2d 6e 61 6d 65 7d 20 7b 61 6c 74   type-name} {alt
0180: 65 72 2d 74 61 62 6c 65 2d 73 74 6d 74 20 63 72  er-table-stmt cr
0190: 65 61 74 65 2d 74 61 62 6c 65 2d 73 74 6d 74 7d  eate-table-stmt}
01a0: 7d 0a 73 65 74 20 73 79 6e 74 61 78 5f 6c 69 6e  }.set syntax_lin
01b0: 6b 61 67 65 28 63 6f 6d 6d 65 6e 74 2d 73 79 6e  kage(comment-syn
01c0: 74 61 78 29 20 7b 7b 7d 20 7b 7d 7d 0a 73 65 74  tax) {{} {}}.set
01d0: 20 73 79 6e 74 61 78 5f 6c 69 6e 6b 61 67 65 28   syntax_linkage(
01e0: 63 6f 6d 6d 69 74 2d 73 74 6d 74 29 20 7b 7b 7d  commit-stmt) {{}
01f0: 20 73 71 6c 2d 73 74 6d 74 7d 0a 73 65 74 20 73   sql-stmt}.set s
0200: 79 6e 74 61 78 5f 6c 69 6e 6b 61 67 65 28 63 6f  yntax_linkage(co
0210: 6d 70 6f 75 6e 64 2d 6f 70 65 72 61 74 6f 72 29  mpound-operator)
0220: 20 7b 7b 7d 20 73 65 6c 65 63 74 2d 73 74 6d 74   {{} select-stmt
0230: 7d 0a 73 65 74 20 73 79 6e 74 61 78 5f 6c 69 6e  }.set syntax_lin
0240: 6b 61 67 65 28 63 6f 6e 66 6c 69 63 74 2d 63 6c  kage(conflict-cl
0250: 61 75 73 65 29 20 7b 7b 7d 20 7b 63 6f 6c 75 6d  ause) {{} {colum
0260: 6e 2d 63 6f 6e 73 74 72 61 69 6e 74 20 74 61 62  n-constraint tab
0270: 6c 65 2d 63 6f 6e 73 74 72 61 69 6e 74 7d 7d 0a  le-constraint}}.
0280: 73 65 74 20 73 79 6e 74 61 78 5f 6c 69 6e 6b 61  set syntax_linka
0290: 67 65 28 63 72 65 61 74 65 2d 69 6e 64 65 78 2d  ge(create-index-
02a0: 73 74 6d 74 29 20 7b 69 6e 64 65 78 65 64 2d 63  stmt) {indexed-c
02b0: 6f 6c 75 6d 6e 20 73 71 6c 2d 73 74 6d 74 7d 0a  olumn sql-stmt}.
02c0: 73 65 74 20 73 79 6e 74 61 78 5f 6c 69 6e 6b 61  set syntax_linka
02d0: 67 65 28 63 72 65 61 74 65 2d 74 61 62 6c 65 2d  ge(create-table-
02e0: 73 74 6d 74 29 20 7b 7b 63 6f 6c 75 6d 6e 2d 64  stmt) {{column-d
02f0: 65 66 20 73 65 6c 65 63 74 2d 73 74 6d 74 20 74  ef select-stmt t
0300: 61 62 6c 65 2d 63 6f 6e 73 74 72 61 69 6e 74 7d  able-constraint}
0310: 20 73 71 6c 2d 73 74 6d 74 7d 0a 73 65 74 20 73   sql-stmt}.set s
0320: 79 6e 74 61 78 5f 6c 69 6e 6b 61 67 65 28 63 72  yntax_linkage(cr
0330: 65 61 74 65 2d 74 72 69 67 67 65 72 2d 73 74 6d  eate-trigger-stm
0340: 74 29 20 7b 7b 64 65 6c 65 74 65 2d 73 74 6d 74  t) {{delete-stmt
0350: 20 65 78 70 72 20 69 6e 73 65 72 74 2d 73 74 6d   expr insert-stm
0360: 74 20 73 65 6c 65 63 74 2d 73 74 6d 74 20 75 70  t select-stmt up
0370: 64 61 74 65 2d 73 74 6d 74 7d 20 73 71 6c 2d 73  date-stmt} sql-s
0380: 74 6d 74 7d 0a 73 65 74 20 73 79 6e 74 61 78 5f  tmt}.set syntax_
0390: 6c 69 6e 6b 61 67 65 28 63 72 65 61 74 65 2d 76  linkage(create-v
03a0: 69 65 77 2d 73 74 6d 74 29 20 7b 73 65 6c 65 63  iew-stmt) {selec
03b0: 74 2d 73 74 6d 74 20 73 71 6c 2d 73 74 6d 74 7d  t-stmt sql-stmt}
03c0: 0a 73 65 74 20 73 79 6e 74 61 78 5f 6c 69 6e 6b  .set syntax_link
03d0: 61 67 65 28 63 72 65 61 74 65 2d 76 69 72 74 75  age(create-virtu
03e0: 61 6c 2d 74 61 62 6c 65 2d 73 74 6d 74 29 20 7b  al-table-stmt) {
03f0: 7b 7d 20 73 71 6c 2d 73 74 6d 74 7d 0a 73 65 74  {} sql-stmt}.set
0400: 20 73 79 6e 74 61 78 5f 6c 69 6e 6b 61 67 65 28   syntax_linkage(
0410: 64 65 6c 65 74 65 2d 73 74 6d 74 29 20 7b 7b 65  delete-stmt) {{e
0420: 78 70 72 20 71 75 61 6c 69 66 69 65 64 2d 74 61  xpr qualified-ta
0430: 62 6c 65 2d 6e 61 6d 65 7d 20 7b 63 72 65 61 74  ble-name} {creat
0440: 65 2d 74 72 69 67 67 65 72 2d 73 74 6d 74 20 73  e-trigger-stmt s
0450: 71 6c 2d 73 74 6d 74 7d 7d 0a 73 65 74 20 73 79  ql-stmt}}.set sy
0460: 6e 74 61 78 5f 6c 69 6e 6b 61 67 65 28 64 65 6c  ntax_linkage(del
0470: 65 74 65 2d 73 74 6d 74 2d 6c 69 6d 69 74 65 64  ete-stmt-limited
0480: 29 20 7b 7b 65 78 70 72 20 6f 72 64 65 72 69 6e  ) {{expr orderin
0490: 67 2d 74 65 72 6d 20 71 75 61 6c 69 66 69 65 64  g-term qualified
04a0: 2d 74 61 62 6c 65 2d 6e 61 6d 65 7d 20 73 71 6c  -table-name} sql
04b0: 2d 73 74 6d 74 7d 0a 73 65 74 20 73 79 6e 74 61  -stmt}.set synta
04c0: 78 5f 6c 69 6e 6b 61 67 65 28 64 65 74 61 63 68  x_linkage(detach
04d0: 2d 73 74 6d 74 29 20 7b 7b 7d 20 73 71 6c 2d 73  -stmt) {{} sql-s
04e0: 74 6d 74 7d 0a 73 65 74 20 73 79 6e 74 61 78 5f  tmt}.set syntax_
04f0: 6c 69 6e 6b 61 67 65 28 64 72 6f 70 2d 69 6e 64  linkage(drop-ind
0500: 65 78 2d 73 74 6d 74 29 20 7b 7b 7d 20 73 71 6c  ex-stmt) {{} sql
0510: 2d 73 74 6d 74 7d 0a 73 65 74 20 73 79 6e 74 61  -stmt}.set synta
0520: 78 5f 6c 69 6e 6b 61 67 65 28 64 72 6f 70 2d 74  x_linkage(drop-t
0530: 61 62 6c 65 2d 73 74 6d 74 29 20 7b 7b 7d 20 73  able-stmt) {{} s
0540: 71 6c 2d 73 74 6d 74 7d 0a 73 65 74 20 73 79 6e  ql-stmt}.set syn
0550: 74 61 78 5f 6c 69 6e 6b 61 67 65 28 64 72 6f 70  tax_linkage(drop
0560: 2d 74 72 69 67 67 65 72 2d 73 74 6d 74 29 20 7b  -trigger-stmt) {
0570: 7b 7d 20 73 71 6c 2d 73 74 6d 74 7d 0a 73 65 74  {} sql-stmt}.set
0580: 20 73 79 6e 74 61 78 5f 6c 69 6e 6b 61 67 65 28   syntax_linkage(
0590: 64 72 6f 70 2d 76 69 65 77 2d 73 74 6d 74 29 20  drop-view-stmt) 
05a0: 7b 7b 7d 20 73 71 6c 2d 73 74 6d 74 7d 0a 73 65  {{} sql-stmt}.se
05b0: 74 20 73 79 6e 74 61 78 5f 6c 69 6e 6b 61 67 65  t syntax_linkage
05c0: 28 65 78 70 72 29 20 7b 7b 6c 69 74 65 72 61 6c  (expr) {{literal
05d0: 2d 76 61 6c 75 65 20 72 61 69 73 65 2d 66 75 6e  -value raise-fun
05e0: 63 74 69 6f 6e 20 73 65 6c 65 63 74 2d 73 74 6d  ction select-stm
05f0: 74 20 74 79 70 65 2d 6e 61 6d 65 7d 20 7b 63 6f  t type-name} {co
0600: 6c 75 6d 6e 2d 63 6f 6e 73 74 72 61 69 6e 74 20  lumn-constraint 
0610: 63 72 65 61 74 65 2d 74 72 69 67 67 65 72 2d 73  create-trigger-s
0620: 74 6d 74 20 64 65 6c 65 74 65 2d 73 74 6d 74 20  tmt delete-stmt 
0630: 64 65 6c 65 74 65 2d 73 74 6d 74 2d 6c 69 6d 69  delete-stmt-limi
0640: 74 65 64 20 69 6e 73 65 72 74 2d 73 74 6d 74 20  ted insert-stmt 
0650: 6a 6f 69 6e 2d 63 6f 6e 73 74 72 61 69 6e 74 20  join-constraint 
0660: 6f 72 64 65 72 69 6e 67 2d 74 65 72 6d 20 72 65  ordering-term re
0670: 73 75 6c 74 2d 63 6f 6c 75 6d 6e 20 73 65 6c 65  sult-column sele
0680: 63 74 2d 63 6f 72 65 20 74 61 62 6c 65 2d 63 6f  ct-core table-co
0690: 6e 73 74 72 61 69 6e 74 20 75 70 64 61 74 65 2d  nstraint update-
06a0: 73 74 6d 74 20 75 70 64 61 74 65 2d 73 74 6d 74  stmt update-stmt
06b0: 2d 6c 69 6d 69 74 65 64 7d 7d 0a 73 65 74 20 73  -limited}}.set s
06c0: 79 6e 74 61 78 5f 6c 69 6e 6b 61 67 65 28 66 6f  yntax_linkage(fo
06d0: 72 65 69 67 6e 2d 6b 65 79 2d 63 6c 61 75 73 65  reign-key-clause
06e0: 29 20 7b 7b 7d 20 7b 63 6f 6c 75 6d 6e 2d 63 6f  ) {{} {column-co
06f0: 6e 73 74 72 61 69 6e 74 20 74 61 62 6c 65 2d 63  nstraint table-c
0700: 6f 6e 73 74 72 61 69 6e 74 7d 7d 0a 73 65 74 20  onstraint}}.set 
0710: 73 79 6e 74 61 78 5f 6c 69 6e 6b 61 67 65 28 69  syntax_linkage(i
0720: 6e 64 65 78 65 64 2d 63 6f 6c 75 6d 6e 29 20 7b  ndexed-column) {
0730: 7b 7d 20 7b 63 72 65 61 74 65 2d 69 6e 64 65 78  {} {create-index
0740: 2d 73 74 6d 74 20 74 61 62 6c 65 2d 63 6f 6e 73  -stmt table-cons
0750: 74 72 61 69 6e 74 7d 7d 0a 73 65 74 20 73 79 6e  traint}}.set syn
0760: 74 61 78 5f 6c 69 6e 6b 61 67 65 28 69 6e 73 65  tax_linkage(inse
0770: 72 74 2d 73 74 6d 74 29 20 7b 7b 65 78 70 72 20  rt-stmt) {{expr 
0780: 73 65 6c 65 63 74 2d 73 74 6d 74 7d 20 7b 63 72  select-stmt} {cr
0790: 65 61 74 65 2d 74 72 69 67 67 65 72 2d 73 74 6d  eate-trigger-stm
07a0: 74 20 73 71 6c 2d 73 74 6d 74 7d 7d 0a 73 65 74  t sql-stmt}}.set
07b0: 20 73 79 6e 74 61 78 5f 6c 69 6e 6b 61 67 65 28   syntax_linkage(
07c0: 6a 6f 69 6e 2d 63 6f 6e 73 74 72 61 69 6e 74 29  join-constraint)
07d0: 20 7b 65 78 70 72 20 6a 6f 69 6e 2d 73 6f 75 72   {expr join-sour
07e0: 63 65 7d 0a 73 65 74 20 73 79 6e 74 61 78 5f 6c  ce}.set syntax_l
07f0: 69 6e 6b 61 67 65 28 6a 6f 69 6e 2d 6f 70 29 20  inkage(join-op) 
0800: 7b 7b 7d 20 6a 6f 69 6e 2d 73 6f 75 72 63 65 7d  {{} join-source}
0810: 0a 73 65 74 20 73 79 6e 74 61 78 5f 6c 69 6e 6b  .set syntax_link
0820: 61 67 65 28 6a 6f 69 6e 2d 73 6f 75 72 63 65 29  age(join-source)
0830: 20 7b 7b 6a 6f 69 6e 2d 63 6f 6e 73 74 72 61 69   {{join-constrai
0840: 6e 74 20 6a 6f 69 6e 2d 6f 70 20 73 69 6e 67 6c  nt join-op singl
0850: 65 2d 73 6f 75 72 63 65 7d 20 7b 73 65 6c 65 63  e-source} {selec
0860: 74 2d 63 6f 72 65 20 73 69 6e 67 6c 65 2d 73 6f  t-core single-so
0870: 75 72 63 65 7d 7d 0a 73 65 74 20 73 79 6e 74 61  urce}}.set synta
0880: 78 5f 6c 69 6e 6b 61 67 65 28 6c 69 74 65 72 61  x_linkage(litera
0890: 6c 2d 76 61 6c 75 65 29 20 7b 7b 7d 20 7b 63 6f  l-value) {{} {co
08a0: 6c 75 6d 6e 2d 63 6f 6e 73 74 72 61 69 6e 74 20  lumn-constraint 
08b0: 65 78 70 72 7d 7d 0a 73 65 74 20 73 79 6e 74 61  expr}}.set synta
08c0: 78 5f 6c 69 6e 6b 61 67 65 28 6e 75 6d 65 72 69  x_linkage(numeri
08d0: 63 2d 6c 69 74 65 72 61 6c 29 20 7b 7b 7d 20 7b  c-literal) {{} {
08e0: 7d 7d 0a 73 65 74 20 73 79 6e 74 61 78 5f 6c 69  }}.set syntax_li
08f0: 6e 6b 61 67 65 28 6f 72 64 65 72 69 6e 67 2d 74  nkage(ordering-t
0900: 65 72 6d 29 20 7b 65 78 70 72 20 7b 64 65 6c 65  erm) {expr {dele
0910: 74 65 2d 73 74 6d 74 2d 6c 69 6d 69 74 65 64 20  te-stmt-limited 
0920: 73 65 6c 65 63 74 2d 63 6f 72 65 20 73 65 6c 65  select-core sele
0930: 63 74 2d 73 74 6d 74 20 75 70 64 61 74 65 2d 73  ct-stmt update-s
0940: 74 6d 74 2d 6c 69 6d 69 74 65 64 7d 7d 0a 73 65  tmt-limited}}.se
0950: 74 20 73 79 6e 74 61 78 5f 6c 69 6e 6b 61 67 65  t syntax_linkage
0960: 28 70 72 61 67 6d 61 2d 73 74 6d 74 29 20 7b 70  (pragma-stmt) {p
0970: 72 61 67 6d 61 2d 76 61 6c 75 65 20 73 71 6c 2d  ragma-value sql-
0980: 73 74 6d 74 7d 0a 73 65 74 20 73 79 6e 74 61 78  stmt}.set syntax
0990: 5f 6c 69 6e 6b 61 67 65 28 70 72 61 67 6d 61 2d  _linkage(pragma-
09a0: 76 61 6c 75 65 29 20 7b 73 69 67 6e 65 64 2d 6e  value) {signed-n
09b0: 75 6d 62 65 72 20 70 72 61 67 6d 61 2d 73 74 6d  umber pragma-stm
09c0: 74 7d 0a 73 65 74 20 73 79 6e 74 61 78 5f 6c 69  t}.set syntax_li
09d0: 6e 6b 61 67 65 28 71 75 61 6c 69 66 69 65 64 2d  nkage(qualified-
09e0: 74 61 62 6c 65 2d 6e 61 6d 65 29 20 7b 7b 7d 20  table-name) {{} 
09f0: 7b 64 65 6c 65 74 65 2d 73 74 6d 74 20 64 65 6c  {delete-stmt del
0a00: 65 74 65 2d 73 74 6d 74 2d 6c 69 6d 69 74 65 64  ete-stmt-limited
0a10: 20 75 70 64 61 74 65 2d 73 74 6d 74 20 75 70 64   update-stmt upd
0a20: 61 74 65 2d 73 74 6d 74 2d 6c 69 6d 69 74 65 64  ate-stmt-limited
0a30: 7d 7d 0a 73 65 74 20 73 79 6e 74 61 78 5f 6c 69  }}.set syntax_li
0a40: 6e 6b 61 67 65 28 72 61 69 73 65 2d 66 75 6e 63  nkage(raise-func
0a50: 74 69 6f 6e 29 20 7b 7b 7d 20 65 78 70 72 7d 0a  tion) {{} expr}.
0a60: 73 65 74 20 73 79 6e 74 61 78 5f 6c 69 6e 6b 61  set syntax_linka
0a70: 67 65 28 72 65 69 6e 64 65 78 2d 73 74 6d 74 29  ge(reindex-stmt)
0a80: 20 7b 7b 7d 20 73 71 6c 2d 73 74 6d 74 7d 0a 73   {{} sql-stmt}.s
0a90: 65 74 20 73 79 6e 74 61 78 5f 6c 69 6e 6b 61 67  et syntax_linkag
0aa0: 65 28 72 65 6c 65 61 73 65 2d 73 74 6d 74 29 20  e(release-stmt) 
0ab0: 7b 7b 7d 20 73 71 6c 2d 73 74 6d 74 7d 0a 73 65  {{} sql-stmt}.se
0ac0: 74 20 73 79 6e 74 61 78 5f 6c 69 6e 6b 61 67 65  t syntax_linkage
0ad0: 28 72 65 73 75 6c 74 2d 63 6f 6c 75 6d 6e 29 20  (result-column) 
0ae0: 7b 65 78 70 72 20 73 65 6c 65 63 74 2d 63 6f 72  {expr select-cor
0af0: 65 7d 0a 73 65 74 20 73 79 6e 74 61 78 5f 6c 69  e}.set syntax_li
0b00: 6e 6b 61 67 65 28 72 6f 6c 6c 62 61 63 6b 2d 73  nkage(rollback-s
0b10: 74 6d 74 29 20 7b 7b 7d 20 73 71 6c 2d 73 74 6d  tmt) {{} sql-stm
0b20: 74 7d 0a 73 65 74 20 73 79 6e 74 61 78 5f 6c 69  t}.set syntax_li
0b30: 6e 6b 61 67 65 28 73 61 76 65 70 6f 69 6e 74 2d  nkage(savepoint-
0b40: 73 74 6d 74 29 20 7b 7b 7d 20 73 71 6c 2d 73 74  stmt) {{} sql-st
0b50: 6d 74 7d 0a 73 65 74 20 73 79 6e 74 61 78 5f 6c  mt}.set syntax_l
0b60: 69 6e 6b 61 67 65 28 73 65 6c 65 63 74 2d 63 6f  inkage(select-co
0b70: 72 65 29 20 7b 7b 65 78 70 72 20 6a 6f 69 6e 2d  re) {{expr join-
0b80: 73 6f 75 72 63 65 20 6f 72 64 65 72 69 6e 67 2d  source ordering-
0b90: 74 65 72 6d 20 72 65 73 75 6c 74 2d 63 6f 6c 75  term result-colu
0ba0: 6d 6e 7d 20 73 65 6c 65 63 74 2d 73 74 6d 74 7d  mn} select-stmt}
0bb0: 0a 73 65 74 20 73 79 6e 74 61 78 5f 6c 69 6e 6b  .set syntax_link
0bc0: 61 67 65 28 73 65 6c 65 63 74 2d 73 74 6d 74 29  age(select-stmt)
0bd0: 20 7b 7b 63 6f 6d 70 6f 75 6e 64 2d 6f 70 65 72   {{compound-oper
0be0: 61 74 6f 72 20 6f 72 64 65 72 69 6e 67 2d 74 65  ator ordering-te
0bf0: 72 6d 20 73 65 6c 65 63 74 2d 63 6f 72 65 7d 20  rm select-core} 
0c00: 7b 63 72 65 61 74 65 2d 74 61 62 6c 65 2d 73 74  {create-table-st
0c10: 6d 74 20 63 72 65 61 74 65 2d 74 72 69 67 67 65  mt create-trigge
0c20: 72 2d 73 74 6d 74 20 63 72 65 61 74 65 2d 76 69  r-stmt create-vi
0c30: 65 77 2d 73 74 6d 74 20 65 78 70 72 20 69 6e 73  ew-stmt expr ins
0c40: 65 72 74 2d 73 74 6d 74 20 73 69 6e 67 6c 65 2d  ert-stmt single-
0c50: 73 6f 75 72 63 65 20 73 71 6c 2d 73 74 6d 74 7d  source sql-stmt}
0c60: 7d 0a 73 65 74 20 73 79 6e 74 61 78 5f 6c 69 6e  }.set syntax_lin
0c70: 6b 61 67 65 28 73 69 67 6e 65 64 2d 6e 75 6d 62  kage(signed-numb
0c80: 65 72 29 20 7b 7b 7d 20 7b 63 6f 6c 75 6d 6e 2d  er) {{} {column-
0c90: 63 6f 6e 73 74 72 61 69 6e 74 20 70 72 61 67 6d  constraint pragm
0ca0: 61 2d 76 61 6c 75 65 20 74 79 70 65 2d 6e 61 6d  a-value type-nam
0cb0: 65 7d 7d 0a 73 65 74 20 73 79 6e 74 61 78 5f 6c  e}}.set syntax_l
0cc0: 69 6e 6b 61 67 65 28 73 69 6e 67 6c 65 2d 73 6f  inkage(single-so
0cd0: 75 72 63 65 29 20 7b 7b 6a 6f 69 6e 2d 73 6f 75  urce) {{join-sou
0ce0: 72 63 65 20 73 65 6c 65 63 74 2d 73 74 6d 74 7d  rce select-stmt}
0cf0: 20 6a 6f 69 6e 2d 73 6f 75 72 63 65 7d 0a 73 65   join-source}.se
0d00: 74 20 73 79 6e 74 61 78 5f 6c 69 6e 6b 61 67 65  t syntax_linkage
0d10: 28 73 71 6c 2d 73 74 6d 74 29 20 7b 7b 61 6c 74  (sql-stmt) {{alt
0d20: 65 72 2d 74 61 62 6c 65 2d 73 74 6d 74 20 61 6e  er-table-stmt an
0d30: 61 6c 79 7a 65 2d 73 74 6d 74 20 61 74 74 61 63  alyze-stmt attac
0d40: 68 2d 73 74 6d 74 20 62 65 67 69 6e 2d 73 74 6d  h-stmt begin-stm
0d50: 74 20 63 6f 6d 6d 69 74 2d 73 74 6d 74 20 63 72  t commit-stmt cr
0d60: 65 61 74 65 2d 69 6e 64 65 78 2d 73 74 6d 74 20  eate-index-stmt 
0d70: 63 72 65 61 74 65 2d 74 61 62 6c 65 2d 73 74 6d  create-table-stm
0d80: 74 20 63 72 65 61 74 65 2d 74 72 69 67 67 65 72  t create-trigger
0d90: 2d 73 74 6d 74 20 63 72 65 61 74 65 2d 76 69 65  -stmt create-vie
0da0: 77 2d 73 74 6d 74 20 63 72 65 61 74 65 2d 76 69  w-stmt create-vi
0db0: 72 74 75 61 6c 2d 74 61 62 6c 65 2d 73 74 6d 74  rtual-table-stmt
0dc0: 20 64 65 6c 65 74 65 2d 73 74 6d 74 20 64 65 6c   delete-stmt del
0dd0: 65 74 65 2d 73 74 6d 74 2d 6c 69 6d 69 74 65 64  ete-stmt-limited
0de0: 20 64 65 74 61 63 68 2d 73 74 6d 74 20 64 72 6f   detach-stmt dro
0df0: 70 2d 69 6e 64 65 78 2d 73 74 6d 74 20 64 72 6f  p-index-stmt dro
0e00: 70 2d 74 61 62 6c 65 2d 73 74 6d 74 20 64 72 6f  p-table-stmt dro
0e10: 70 2d 74 72 69 67 67 65 72 2d 73 74 6d 74 20 64  p-trigger-stmt d
0e20: 72 6f 70 2d 76 69 65 77 2d 73 74 6d 74 20 69 6e  rop-view-stmt in
0e30: 73 65 72 74 2d 73 74 6d 74 20 70 72 61 67 6d 61  sert-stmt pragma
0e40: 2d 73 74 6d 74 20 72 65 69 6e 64 65 78 2d 73 74  -stmt reindex-st
0e50: 6d 74 20 72 65 6c 65 61 73 65 2d 73 74 6d 74 20  mt release-stmt 
0e60: 72 6f 6c 6c 62 61 63 6b 2d 73 74 6d 74 20 73 61  rollback-stmt sa
0e70: 76 65 70 6f 69 6e 74 2d 73 74 6d 74 20 73 65 6c  vepoint-stmt sel
0e80: 65 63 74 2d 73 74 6d 74 20 75 70 64 61 74 65 2d  ect-stmt update-
0e90: 73 74 6d 74 20 75 70 64 61 74 65 2d 73 74 6d 74  stmt update-stmt
0ea0: 2d 6c 69 6d 69 74 65 64 20 76 61 63 75 75 6d 2d  -limited vacuum-
0eb0: 73 74 6d 74 7d 20 73 71 6c 2d 73 74 6d 74 2d 6c  stmt} sql-stmt-l
0ec0: 69 73 74 7d 0a 73 65 74 20 73 79 6e 74 61 78 5f  ist}.set syntax_
0ed0: 6c 69 6e 6b 61 67 65 28 73 71 6c 2d 73 74 6d 74  linkage(sql-stmt
0ee0: 2d 6c 69 73 74 29 20 7b 73 71 6c 2d 73 74 6d 74  -list) {sql-stmt
0ef0: 20 7b 7d 7d 0a 73 65 74 20 73 79 6e 74 61 78 5f   {}}.set syntax_
0f00: 6c 69 6e 6b 61 67 65 28 74 61 62 6c 65 2d 63 6f  linkage(table-co
0f10: 6e 73 74 72 61 69 6e 74 29 20 7b 7b 63 6f 6e 66  nstraint) {{conf
0f20: 6c 69 63 74 2d 63 6c 61 75 73 65 20 65 78 70 72  lict-clause expr
0f30: 20 66 6f 72 65 69 67 6e 2d 6b 65 79 2d 63 6c 61   foreign-key-cla
0f40: 75 73 65 20 69 6e 64 65 78 65 64 2d 63 6f 6c 75  use indexed-colu
0f50: 6d 6e 7d 20 63 72 65 61 74 65 2d 74 61 62 6c 65  mn} create-table
0f60: 2d 73 74 6d 74 7d 0a 73 65 74 20 73 79 6e 74 61  -stmt}.set synta
0f70: 78 5f 6c 69 6e 6b 61 67 65 28 74 79 70 65 2d 6e  x_linkage(type-n
0f80: 61 6d 65 29 20 7b 73 69 67 6e 65 64 2d 6e 75 6d  ame) {signed-num
0f90: 62 65 72 20 7b 63 6f 6c 75 6d 6e 2d 64 65 66 20  ber {column-def 
0fa0: 65 78 70 72 7d 7d 0a 73 65 74 20 73 79 6e 74 61  expr}}.set synta
0fb0: 78 5f 6c 69 6e 6b 61 67 65 28 75 70 64 61 74 65  x_linkage(update
0fc0: 2d 73 74 6d 74 29 20 7b 7b 65 78 70 72 20 71 75  -stmt) {{expr qu
0fd0: 61 6c 69 66 69 65 64 2d 74 61 62 6c 65 2d 6e 61  alified-table-na
0fe0: 6d 65 7d 20 7b 63 72 65 61 74 65 2d 74 72 69 67  me} {create-trig
0ff0: 67 65 72 2d 73 74 6d 74 20 73 71 6c 2d 73 74 6d  ger-stmt sql-stm
1000: 74 7d 7d 0a 73 65 74 20 73 79 6e 74 61 78 5f 6c  t}}.set syntax_l
1010: 69 6e 6b 61 67 65 28 75 70 64 61 74 65 2d 73 74  inkage(update-st
1020: 6d 74 2d 6c 69 6d 69 74 65 64 29 20 7b 7b 65 78  mt-limited) {{ex
1030: 70 72 20 6f 72 64 65 72 69 6e 67 2d 74 65 72 6d  pr ordering-term
1040: 20 71 75 61 6c 69 66 69 65 64 2d 74 61 62 6c 65   qualified-table
1050: 2d 6e 61 6d 65 7d 20 73 71 6c 2d 73 74 6d 74 7d  -name} sql-stmt}
1060: 0a 73 65 74 20 73 79 6e 74 61 78 5f 6c 69 6e 6b  .set syntax_link
1070: 61 67 65 28 76 61 63 75 75 6d 2d 73 74 6d 74 29  age(vacuum-stmt)
1080: 20 7b 7b 7d 20 73 71 6c 2d 73 74 6d 74 7d 0a 73   {{} sql-stmt}.s
1090: 65 74 20 73 79 6e 74 61 78 5f 6f 72 64 65 72 20  et syntax_order 
10a0: 7b 73 71 6c 2d 73 74 6d 74 2d 6c 69 73 74 20 73  {sql-stmt-list s
10b0: 71 6c 2d 73 74 6d 74 20 61 6c 74 65 72 2d 74 61  ql-stmt alter-ta
10c0: 62 6c 65 2d 73 74 6d 74 20 61 6e 61 6c 79 7a 65  ble-stmt analyze
10d0: 2d 73 74 6d 74 20 61 74 74 61 63 68 2d 73 74 6d  -stmt attach-stm
10e0: 74 20 62 65 67 69 6e 2d 73 74 6d 74 20 63 6f 6d  t begin-stmt com
10f0: 6d 69 74 2d 73 74 6d 74 20 72 6f 6c 6c 62 61 63  mit-stmt rollbac
1100: 6b 2d 73 74 6d 74 20 73 61 76 65 70 6f 69 6e 74  k-stmt savepoint
1110: 2d 73 74 6d 74 20 72 65 6c 65 61 73 65 2d 73 74  -stmt release-st
1120: 6d 74 20 63 72 65 61 74 65 2d 69 6e 64 65 78 2d  mt create-index-
1130: 73 74 6d 74 20 69 6e 64 65 78 65 64 2d 63 6f 6c  stmt indexed-col
1140: 75 6d 6e 20 63 72 65 61 74 65 2d 74 61 62 6c 65  umn create-table
1150: 2d 73 74 6d 74 20 63 6f 6c 75 6d 6e 2d 64 65 66  -stmt column-def
1160: 20 74 79 70 65 2d 6e 61 6d 65 20 63 6f 6c 75 6d   type-name colum
1170: 6e 2d 63 6f 6e 73 74 72 61 69 6e 74 20 73 69 67  n-constraint sig
1180: 6e 65 64 2d 6e 75 6d 62 65 72 20 74 61 62 6c 65  ned-number table
1190: 2d 63 6f 6e 73 74 72 61 69 6e 74 20 66 6f 72 65  -constraint fore
11a0: 69 67 6e 2d 6b 65 79 2d 63 6c 61 75 73 65 20 63  ign-key-clause c
11b0: 6f 6e 66 6c 69 63 74 2d 63 6c 61 75 73 65 20 63  onflict-clause c
11c0: 72 65 61 74 65 2d 74 72 69 67 67 65 72 2d 73 74  reate-trigger-st
11d0: 6d 74 20 63 72 65 61 74 65 2d 76 69 65 77 2d 73  mt create-view-s
11e0: 74 6d 74 20 63 72 65 61 74 65 2d 76 69 72 74 75  tmt create-virtu
11f0: 61 6c 2d 74 61 62 6c 65 2d 73 74 6d 74 20 64 65  al-table-stmt de
1200: 6c 65 74 65 2d 73 74 6d 74 20 64 65 6c 65 74 65  lete-stmt delete
1210: 2d 73 74 6d 74 2d 6c 69 6d 69 74 65 64 20 64 65  -stmt-limited de
1220: 74 61 63 68 2d 73 74 6d 74 20 64 72 6f 70 2d 69  tach-stmt drop-i
1230: 6e 64 65 78 2d 73 74 6d 74 20 64 72 6f 70 2d 74  ndex-stmt drop-t
1240: 61 62 6c 65 2d 73 74 6d 74 20 64 72 6f 70 2d 74  able-stmt drop-t
1250: 72 69 67 67 65 72 2d 73 74 6d 74 20 64 72 6f 70  rigger-stmt drop
1260: 2d 76 69 65 77 2d 73 74 6d 74 20 65 78 70 72 20  -view-stmt expr 
1270: 72 61 69 73 65 2d 66 75 6e 63 74 69 6f 6e 20 6c  raise-function l
1280: 69 74 65 72 61 6c 2d 76 61 6c 75 65 20 6e 75 6d  iteral-value num
1290: 65 72 69 63 2d 6c 69 74 65 72 61 6c 20 69 6e 73  eric-literal ins
12a0: 65 72 74 2d 73 74 6d 74 20 70 72 61 67 6d 61 2d  ert-stmt pragma-
12b0: 73 74 6d 74 20 70 72 61 67 6d 61 2d 76 61 6c 75  stmt pragma-valu
12c0: 65 20 72 65 69 6e 64 65 78 2d 73 74 6d 74 20 73  e reindex-stmt s
12d0: 65 6c 65 63 74 2d 73 74 6d 74 20 73 65 6c 65 63  elect-stmt selec
12e0: 74 2d 63 6f 72 65 20 72 65 73 75 6c 74 2d 63 6f  t-core result-co
12f0: 6c 75 6d 6e 20 6a 6f 69 6e 2d 73 6f 75 72 63 65  lumn join-source
1300: 20 73 69 6e 67 6c 65 2d 73 6f 75 72 63 65 20 6a   single-source j
1310: 6f 69 6e 2d 6f 70 20 6a 6f 69 6e 2d 63 6f 6e 73  oin-op join-cons
1320: 74 72 61 69 6e 74 20 6f 72 64 65 72 69 6e 67 2d  traint ordering-
1330: 74 65 72 6d 20 63 6f 6d 70 6f 75 6e 64 2d 6f 70  term compound-op
1340: 65 72 61 74 6f 72 20 75 70 64 61 74 65 2d 73 74  erator update-st
1350: 6d 74 20 75 70 64 61 74 65 2d 73 74 6d 74 2d 6c  mt update-stmt-l
1360: 69 6d 69 74 65 64 20 71 75 61 6c 69 66 69 65 64  imited qualified
1370: 2d 74 61 62 6c 65 2d 6e 61 6d 65 20 76 61 63 75  -table-name vacu
1380: 75 6d 2d 73 74 6d 74 20 63 6f 6d 6d 65 6e 74 2d  um-stmt comment-
1390: 73 79 6e 74 61 78 7d 0a                          syntax}.