]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Change the documentation to clearly state that the result of
authordrh <drh@noemail.net>
Tue, 15 May 2007 14:17:25 +0000 (14:17 +0000)
committerdrh <drh@noemail.net>
Tue, 15 May 2007 14:17:25 +0000 (14:17 +0000)
sqlite3_column_type() is undefined following a type conversion. (CVS 4007)

FossilOrigin-Name: 960be575e2b062a34c96d006e411ad34ded58063

manifest
manifest.uuid
www/capi3ref.tcl

index 2cacd98645561ed0f814a6949e24b0e92c470e38..ed2195993b518964f82bd32ff51a013e6b18d67b 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Fix\sto\scheck-in\s(4005).\s\sA\scall\sto\ssqlite3_column_blob()\sshould\snot\smake\nsubsequent\scalls\sto\ssqlite3_column_type()\sreturn\sSQLITE_BLOB.\nSqlite3_column_type()\sreturns\sthe\sinitial\stype.\s(CVS\s4006)
-D 2007-05-15T14:10:40
+C Change\sthe\sdocumentation\sto\sclearly\sstate\sthat\sthe\sresult\sof\nsqlite3_column_type()\sis\sundefined\sfollowing\sa\stype\sconversion.\s(CVS\s4007)
+D 2007-05-15T14:17:25
 F Makefile.in 87b200ad9970907f76df734d29dff3d294c10935
 F Makefile.linux-gcc 2d8574d1ba75f129aba2019f0b959db380a90935
 F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
@@ -447,7 +447,7 @@ F www/audit.tcl 90e09d580f79c7efec0c7d6f447b7ec5c2dce5c0
 F www/autoinc.tcl b357f5ba954b046ee35392ce0f884a2fcfcdea06
 F www/c_interface.tcl b51b08591554c16a0c3ef718364a508ac25abc7e
 F www/capi3.tcl 88884dd743039d1a95aa57f4a5eb369de7744716
-F www/capi3ref.tcl 31da5635eb64ab0f47c71b93b131a6bcb1ddebc9
+F www/capi3ref.tcl 8f1a17a10d95b48385ec4608449279274125c88a
 F www/changes.tcl 550300b0ff00fc1b872f7802b2d5a1e7587d3e58
 F www/common.tcl 2b793e5c31486c8a01dd27dc0a631ad93704438e
 F www/compile.tcl 276546d7eb445add5a867193bbd80f6919a6b084
@@ -491,7 +491,7 @@ F www/tclsqlite.tcl bb0d1357328a42b1993d78573e587c6dcbc964b9
 F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
 F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b
 F www/whentouse.tcl fc46eae081251c3c181bd79c5faef8195d7991a5
-P cf2dd45b58380de7f3e167b5357848d12872caa3
-R c70e0740af8fc22bb0f88652371152ba
+P b5e85deb5a0316781a6f39d6085b9fcfb9f88c6d
+R 2c94f4739f016800a57525b336740acc
 U drh
-Z 8f2f5d1cc7ed3029aa9c988b8eb2451c
+Z 5d300394ab97e7ae63df9330c51a060a
index 2661476a8a9282d83feaea305b6e7016eac87c2b..ebf6f07b4d16c66cca730c5f52ee3f5b0d98221c 100644 (file)
@@ -1 +1 @@
-b5e85deb5a0316781a6f39d6085b9fcfb9f88c6d
\ No newline at end of file
+960be575e2b062a34c96d006e411ad34ded58063
\ No newline at end of file
index 7c5214e3e5ef56a95cab0acc41281aa5bfa2f0c1..de0f1de48f28ab743e3dd2b45106b729260a874e 100644 (file)
@@ -1,4 +1,4 @@
-set rcsid {$Id: capi3ref.tcl,v 1.58 2007/05/15 13:27:08 drh Exp $}
+set rcsid {$Id: capi3ref.tcl,v 1.59 2007/05/15 14:17:25 drh Exp $}
 source common.tcl
 header {C/C++ Interface For SQLite Version 3}
 puts {
@@ -158,9 +158,9 @@ api {} {
   #define SQLITE_TRANSIENT   ((void(*)(void *))-1)
 } {
  In the SQL strings input to sqlite3_prepare_v2() and sqlite3_prepare16_v2(),
- one or more literals can be replace by a parameter "?" or ":AAA" or 
- "@AAA" or "\$VVV"
where AAA is an alphanumeric identifier and VVV is a variable name according
+ one or more literals can be replace by a parameter "?" or "?NNN"
+ or ":AAA" or "@AAA" or "\$VVV" where NNN is an integer literal,
+ AAA is an alphanumeric identifier and VVV is a variable name according
  to the syntax rules of the TCL programming language.
  The values of these parameters (also called "host parameter names")
  can be set using the sqlite3_bind_*() routines.
@@ -172,7 +172,9 @@ api {} {
  and subsequent
  occurrences have the same index as the first occurrence.  The index for
  named parameters can be looked up using the
- sqlite3_bind_parameter_name() API if desired.
+ sqlite3_bind_parameter_name() API if desired.  The index for "?NNN"
+ parametes is the value of NNN.  The NNN value must be between 1 and 999.
+
 
  The third argument is the value to bind to the parameter.
 
@@ -217,15 +219,17 @@ api {} {
 } {
   Return the name of the n-th parameter in the precompiled statement.
   Parameters of the form ":AAA" or "@AAA" or "\$VVV" have a name which is the
-  string ":AAA" or "\$VVV".  In other words, the initial ":" or "$" or "@"
+  string ":AAA" or "@AAA" or "\$VVV".  
+  In other words, the initial ":" or "$" or "@"
   is included as part of the name.
-  Parameters of the form "?" have no name.
+  Parameters of the form "?" or "?NNN" have no name.
 
   The first bound parameter has an index of 1, not 0.
 
   If the value n is out of range or if the n-th parameter is nameless,
   then NULL is returned.  The returned string is always in the
-  UTF-8 encoding.
+  UTF-8 encoding even if the named parameter was originally specified
+  as UTF-16 in sqlite3_prepare16_v2().
 }
 
 api {} {
@@ -391,6 +395,15 @@ int sqlite3_column_type(sqlite3_stmt*, int iCol);
  If the SQL statement is not currently point to a valid row, or if the
  the column index is out of range, the result is undefined.
 
+ The sqlite3_column_type() routine returns the initial data type
+ of the result column.  The returned value is one of SQLITE_INTEGER,
+ SQLITE_FLOAT, SQLITE_TEXT, SQLITE_BLOB, or SQLITE_NULL.  The value
+ returned by sqlite3_column_type() is only meaningful if no type
+ conversions have occurred as described below.  After a type conversion,
+ the value returned by sqlite3_column_type() is undefined.  Future
+ versions of SQLite may change the behavior of sqlite3_column_type()
+ following a type conversion.
+
  If the result is a BLOB or UTF-8 string then the sqlite3_column_bytes() 
  routine returns the number of bytes in that BLOB or string.
  If the result is a UTF-16 string, then sqlite3_column_bytes() converts