Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

.Dd December 19, 2018
.Dt SQLITE3_URI_PARAMETER 3
.Os
.Sh NAME
.Nm sqlite3_uri_parameter ,
.Nm sqlite3_uri_boolean ,
.Nm sqlite3_uri_int64
.Nd Obtain Values For URI Parameters
.Sh SYNOPSIS
.Ft const char *
.Fo sqlite3_uri_parameter
.Fa "const char *zFilename"
.Fa "const char *zParam"
.Fc
.Ft int 
.Fo sqlite3_uri_boolean
.Fa "const char *zFile"
.Fa "const char *zParam"
.Fa "int bDefault"
.Fc
.Ft sqlite3_int64 
.Fo sqlite3_uri_int64
.Fa "const char*"
.Fa "const char*"
.Fa "sqlite3_int64"
.Fc
.Sh DESCRIPTION
These are utility routines, useful to VFS implementations, that check
to see if a database file was a URI that contained a specific query
parameter, and if so obtains the value of that query parameter.
.Pp
If F is the database filename pointer passed into the xOpen() method
of a VFS implementation when the flags parameter to xOpen() has one
or more of the SQLITE_OPEN_URI or SQLITE_OPEN_MAIN_DB
bits set and P is the name of the query parameter, then sqlite3_uri_parameter(F,P)
returns the value of the P parameter if it exists or a NULL pointer
if P does not appear as a query parameter on F.
If P is a query parameter of F has no explicit value, then sqlite3_uri_parameter(F,P)
returns a pointer to an empty string.
.Pp
The sqlite3_uri_boolean(F,P,B) routine assumes that P is a boolean
parameter and returns true (1) or false (0) according to the value
of P.
The sqlite3_uri_boolean(F,P,B) routine returns true (1) if the value
of query parameter P is one of "yes", "true", or "on" in any case or
if the value begins with a non-zero number.
The sqlite3_uri_boolean(F,P,B) routines returns false (0) if the value
of query parameter P is one of "no", "false", or "off" in any case
or if the value begins with a numeric zero.
If P is not a query parameter on F or if the value of P is does not
match any of the above, then sqlite3_uri_boolean(F,P,B) returns (B!=0).
.Pp
The sqlite3_uri_int64(F,P,D) routine converts the value of P into a
64-bit signed integer and returns that integer, or D if P does not
exist.
If the value of P is something other than an integer, then zero is
returned.
.Pp
If F is a NULL pointer, then sqlite3_uri_parameter(F,P) returns NULL
and sqlite3_uri_boolean(F,P,B) returns B.
If F is not a NULL pointer and is not a database file pathname pointer
that SQLite passed into the xOpen VFS method, then the behavior of
this routine is undefined and probably undesirable.
.Sh SEE ALSO
.Xr SQLITE_OPEN_READONLY 3