/ Check-in [4bee8295]
Login
SQLite training in Houston TX on 2019-11-05 (details)
Part of the 2019 Tcl Conference

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Simplifications to the description of the nByte parameter to sqlite3_prepare() and friends.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 4bee8295e36fb61f903210b6d052ee9b8fb3b6d0
User & Date: drh 2015-02-26 02:33:52
Context
2015-02-26
16:32
Fix a real bug (in test code) that was introduced while trying to eliminate harmless compiler warnings from OpenBSD (see check-in [10321910990195878c]). check-in: a62ba58c user: drh tags: trunk
14:27
In the command-line shell, change the units on the ".width" directive from bytes to characters. Leaf check-in: b1a9e291 user: drh tags: cli-char-width
02:33
Simplifications to the description of the nByte parameter to sqlite3_prepare() and friends. check-in: 4bee8295 user: drh tags: trunk
2015-02-25
14:25
Make sure the sqlite3_mutex.id field is initialized in the Win32 mutex implementation, even when SQLITE_DEBUG is turned off. check-in: 6d132e7a user: drh tags: trunk
Changes
Hide Diffs Side-by-Side Diffs Ignore Whitespace Patch

Changes to src/sqlite.h.in.

  3178   3178   ** [sqlite3_open16()].  The database connection must not have been closed.
  3179   3179   **
  3180   3180   ** The second argument, "zSql", is the statement to be compiled, encoded
  3181   3181   ** as either UTF-8 or UTF-16.  The sqlite3_prepare() and sqlite3_prepare_v2()
  3182   3182   ** interfaces use UTF-8, and sqlite3_prepare16() and sqlite3_prepare16_v2()
  3183   3183   ** use UTF-16.
  3184   3184   **
  3185         -** ^If the nByte argument is less than zero, then zSql is read up to the
  3186         -** first zero terminator. ^If nByte is non-negative, then it is the maximum
  3187         -** number of  bytes read from zSql.  ^When nByte is non-negative, the
  3188         -** zSql string ends at either the first '\000' or '\u0000' character or
  3189         -** the nByte-th byte, whichever comes first. If the caller knows
  3190         -** that the supplied string is nul-terminated, then there is a small
  3191         -** performance advantage to be gained by passing an nByte parameter that
  3192         -** is equal to the number of bytes in the input string <i>including</i>
  3193         -** the nul-terminator bytes as this saves SQLite from having to
  3194         -** make a copy of the input string.
         3185  +** ^If the nByte argument is negative, then zSql is read up to the
         3186  +** first zero terminator. ^If nByte is positive, then it is the
         3187  +** number of bytes read from zSql.  ^If nByte is zero, then no prepared
         3188  +** statement is generated.
         3189  +** If the caller knows that the supplied string is nul-terminated, then
         3190  +** there is a small performance advantage to passing an nByte parameter that
         3191  +** is the number of bytes in the input string <i>including</i>
         3192  +** the nul-terminator.
  3195   3193   **
  3196   3194   ** ^If pzTail is not NULL then *pzTail is made to point to the first byte
  3197   3195   ** past the end of the first SQL statement in zSql.  These routines only
  3198   3196   ** compile the first statement in zSql, so *pzTail is left pointing to
  3199   3197   ** what remains uncompiled.
  3200   3198   **
  3201   3199   ** ^*ppStmt is left pointing to a compiled [prepared statement] that can be