*** DRAFT ***

SQLite Requirement Matrix Details
value_blob.html

Index Summary Markup Original


R-23929-31743-58027-02127-28995-37198-56222-58306 tcl slt th3 src

These routines work just like the corresponding column access functions except that these routines take a single protected sqlite3_value object pointer instead of a sqlite3_stmt* pointer and an integer column number.

th3/req1/value02.test:99   th3/req1/value03.test:115

/* IMP: R-23929-31743 */
# EVIDENCE-OF: R-23929-31743 These routines work just like the
# corresponding column access functions except that these routines take
# a single protected sqlite3_value object pointer instead of a
# sqlite3_stmt* pointer and an integer column number.

R-60876-64599-55796-06816-32195-01348-28462-53334 tcl slt th3 src

The sqlite3_value_text16() interface extracts a UTF-16 string in the native byte-order of the host machine.

th3/req1/value02.test:189   th3/req1/value03.test:223

/* IMP: R-60876-64599 */
# EVIDENCE-OF: R-60876-64599 The sqlite3_value_text16() interface
# extracts a UTF-16 string in the native byte-order of the host machine.

R-41898-15939-51576-48964-07633-48670-39877-19524 tcl slt th3 src

The sqlite3_value_text16be() and sqlite3_value_text16le() interfaces extract UTF-16 strings as big-endian and little-endian respectively.

th3/req1/value02.test:207   th3/req1/value03.test:244

/* IMP: R-41898-15939 */
# EVIDENCE-OF: R-41898-15939 The sqlite3_value_text16be() and
# sqlite3_value_text16le() interfaces extract UTF-16 strings as
# big-endian and little-endian respectively.

R-25288-28061-40828-54827-02140-23541-51097-39397 tcl slt th3 src

If sqlite3_value object V was initialized using sqlite3_bind_pointer(S,I,P,X,D) or sqlite3_result_pointer(C,P,X,D) and if X and Y are strings that compare equal according to strcmp(X,Y), then sqlite3_value_pointer(V,Y) will return the pointer P.

th3/cov1/carray01.test:180

/* IMP: R-25288-28061 */
# EVIDENCE-OF: R-25288-28061 If sqlite3_value object V was initialized
# using sqlite3_bind_pointer(S,I,P,X,D) or
# sqlite3_result_pointer(C,P,X,D) and if X and Y are strings that
# compare equal according to strcmp(X,Y), then
# sqlite3_value_pointer(V,Y) will return the pointer P.

R-19222-28861-33123-00573-15800-37173-53846-06929 tcl slt th3 src

Otherwise, sqlite3_value_pointer(V,Y) returns a NULL.

th3/cov1/carray01.test:186

/* IMP: R-19222-28861 */
# EVIDENCE-OF: R-19222-28861 Otherwise, sqlite3_value_pointer(V,Y)
# returns a NULL.

R-01470-60482-32731-19597-04026-47136-19531-00133 tcl slt th3 src

The sqlite3_value_type(V) interface returns the datatype code for the initial datatype of the sqlite3_value object V. The returned value is one of SQLITE_INTEGER, SQLITE_FLOAT, SQLITE_TEXT, SQLITE_BLOB, or SQLITE_NULL.

src/func.c:88

/* IMP: R-01470-60482 */
# EVIDENCE-OF: R-01470-60482 The sqlite3_value_type(V) interface returns
# the datatype code for the initial datatype of the sqlite3_value object
# V. The returned value is one of SQLITE_INTEGER, SQLITE_FLOAT,
# SQLITE_TEXT, SQLITE_BLOB, or SQLITE_NULL.

R-23299-15149-12260-14236-54625-56854-20927-10236 tcl slt th3 src

The sqlite3_value_numeric_type() interface attempts to apply numeric affinity to the value. This means that an attempt is made to convert the value to an integer or floating point. If such a conversion is possible without loss of information (in other words, if the value is a string that looks like a number) then the conversion is performed. Otherwise no conversion occurs. The datatype after conversion is returned.

th3/req1/value02.test:241   th3/req1/value03.test:284

/* IMP: R-23299-15149 */
# EVIDENCE-OF: R-23299-15149 The sqlite3_value_numeric_type() interface
# attempts to apply numeric affinity to the value. This means that an
# attempt is made to convert the value to an integer or floating point.
# If such a conversion is possible without loss of information (in other
# words, if the value is a string that looks like a number) then the
# conversion is performed. Otherwise no conversion occurs. The datatype
# after conversion is returned.