Runtime Configuration
The behaviour of these functions is affected by settings in php.ini.
Name | Default | Changeable | Changelog |
---|---|---|---|
sqlite.assoc_case | "0" | PHP_INI_ALL | Available since PHP 5.0.0. |
Here's a short explanation of the configuration directives.
-
sqlite.assoc_case
int -
Whether to use mixed case (0), upper case (1) or lower case (2) hash indexes.
This option is primarily useful when you need compatibility with other database systems, where the names of the columns are always returned as uppercase or lowercase, regardless of the case of the actual field names in the database schema.
The SQLite library returns the column names in their natural case (that matches the case you used in your schema). When
sqlite.assoc_case
is set to 0 the natural case will be preserved. When it is set to 1 or 2, PHP will apply case folding on the hash keys to upper- or lower-case the keys, respectively.Use of this option incurs a slight performance penalty, but is MUCH faster than performing the case folding yourself using PHP script.
Коментарии
Note, that it is not enought to grant write access to the SQLite database file. Because SQLite creates a journal file in the directory, the database is located. For that reason write acces to this directory is needed as well.
If no write access to the directory is allowed, it is already posible to open database and read data, but first write operation (INSERT,UPDATE, DELETE, CREATE xxx,..) results in error "unable to open database file" (even though the database file already opened for reading...)