2
0

lang_update.html 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
  2. <html><head>
  3. <title>SQLite Query Language: UPDATE</title>
  4. <style type="text/css">
  5. body {
  6. margin: auto;
  7. font-family: Verdana, sans-serif;
  8. padding: 8px 1%;
  9. }
  10. a { color: #45735f }
  11. a:visited { color: #734559 }
  12. .logo { position:absolute; margin:3px; }
  13. .tagline {
  14. float:right;
  15. text-align:right;
  16. font-style:italic;
  17. width:240px;
  18. margin:12px;
  19. margin-top:58px;
  20. }
  21. .toolbar {
  22. font-variant: small-caps;
  23. text-align: center;
  24. line-height: 1.6em;
  25. margin: 0;
  26. padding:1px 8px;
  27. }
  28. .toolbar a { color: white; text-decoration: none; padding: 6px 12px; }
  29. .toolbar a:visited { color: white; }
  30. .toolbar a:hover { color: #80a796; background: white; }
  31. .content { margin: 5%; }
  32. .content dt { font-weight:bold; }
  33. .content dd { margin-bottom: 25px; margin-left:20%; }
  34. .content ul { padding:0px; padding-left: 15px; margin:0px; }
  35. /* rounded corners */
  36. .se { background: url(images/se.png) 100% 100% no-repeat #80a796}
  37. .sw { background: url(images/sw.png) 0% 100% no-repeat }
  38. .ne { background: url(images/ne.png) 100% 0% no-repeat }
  39. .nw { background: url(images/nw.png) 0% 0% no-repeat }
  40. </style>
  41. <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  42. </head>
  43. <body>
  44. <div><!-- container div to satisfy validator -->
  45. <a href="lang.html">
  46. <h2 align="center">SQL As Understood By SQLite</h2></a><h1>UPDATE</h1><h4><a href="syntaxdiagrams.html#update-stmt">update-stmt:</a></h4><blockquote> <img alt="syntax diagram update-stmt" src="images/syntax/update-stmt.gif"></img> </blockquote>
  47. <h4><a href="syntaxdiagrams.html#qualified-table-name">qualified-table-name:</a></h4><blockquote> <img alt="syntax diagram qualified-table-name" src="images/syntax/qualified-table-name.gif"></img> </blockquote>
  48. <p>The UPDATE statement is used to change the value of columns in
  49. selected rows of a table. Each assignment in an UPDATE specifies
  50. a column name to the left of the equals sign and an arbitrary expression
  51. to the right. The expressions may use the values of other columns.
  52. All expressions are evaluated before any assignments are made.
  53. A WHERE clause can be used to restrict which rows are updated.</p>
  54. <p>The optional conflict-clause allows the specification of an alternative
  55. constraint conflict resolution algorithm to use during this one command.
  56. See the section titled
  57. <a href="lang_conflict.html">ON CONFLICT</a> for additional information.</p>
  58. <h3>Restrictions on UPDATE Statements Within CREATE TRIGGER</h3>
  59. <p>There are additional syntax restrictions on UPDATE statements that
  60. occur within the body of a <a href="lang_createtrigger.html">CREATE TRIGGER</a> statement. The <i>table-name</i>
  61. must be unqualified.
  62. In other words, the <i>database-name</i><b>.</b> prefix
  63. on the table name is not allowed within triggers.
  64. The table to be modified must be in the same
  65. database as the table to which the trigger is attached.</p>
  66. <p>The INDEXED BY and NOT INDEXED clauses are not allowed on UPDATE
  67. statements within triggers.</p>
  68. <p>The LIMIT clause (described below) is unsupported within triggers.</p>
  69. <h3>Optional LIMIT and ORDER BY Clauses</h3>
  70. <p>If SQLite is built with the <a href="compile.html#enable_update_delete_limit">SQLITE_ENABLE_UPDATE_DELETE_LIMIT</a>
  71. compile-time option then the syntax of the UPDATE statement is extended
  72. with optional ORDER BY and LIMIT clauses as follows:</p>
  73. <h4><a href="syntaxdiagrams.html#update-stmt-limited">update-stmt-limited:</a></h4><blockquote> <img alt="syntax diagram update-stmt-limited" src="images/syntax/update-stmt-limited.gif"></img> </blockquote>
  74. <p>The optional LIMIT clause can be used to limit the number of
  75. rows modifed, and thereby limit the size of the transaction.
  76. The ORDER BY clause is used only to determine which rows fall
  77. within the LIMIT. The order in which rows are modified is arbitrary
  78. and is not determined by the ORDER BY clause.</p>