# perldoc > DBD::SQLite::Constants

---
type: CommandReference
command: DBD::SQLite::Constants
mode: perldoc
section: 
source: perldoc
---

## Quick Reference

- `use DBD::SQLite::Constants qw/:result_codes/;` — import basic result codes
- `:all` — import all constants
- `:extended_result_codes` — import extended result codes
- `:file_open` — import file open flags
- `:datatypes` — import fundamental datatypes
- `:authorizer_action_codes` — import authorizer action codes
- `:function_flags` — import function flags
- `:run_time_limit_categories` — import runtime limit categories

## Name

DBD::SQLite::Constants — common SQLite constants

## Synopsis

perl
use DBD::SQLite::Constants qw/:result_codes/;
## Options

- `:allowed_return_values_from_sqlite3_txn_state` — return values for `sqlite3_txn_state()`
  - `SQLITE_TXN_NONE`, `SQLITE_TXN_READ`, `SQLITE_TXN_WRITE`
- `:authorizer_action_codes` — action codes for `sqlite3_set_authorizer()`
  - `SQLITE_CREATE_INDEX`, `SQLITE_CREATE_TABLE`, `SQLITE_CREATE_TEMP_INDEX`, `SQLITE_CREATE_TEMP_TABLE`, `SQLITE_CREATE_TEMP_TRIGGER`, `SQLITE_CREATE_TEMP_VIEW`, `SQLITE_CREATE_TRIGGER`, `SQLITE_CREATE_VIEW`, `SQLITE_DELETE`, `SQLITE_DROP_INDEX`, `SQLITE_DROP_TABLE`, `SQLITE_DROP_TEMP_INDEX`, `SQLITE_DROP_TEMP_TABLE`, `SQLITE_DROP_TEMP_TRIGGER`, `SQLITE_DROP_TEMP_VIEW`, `SQLITE_DROP_TRIGGER`, `SQLITE_DROP_VIEW`, `SQLITE_INSERT`, `SQLITE_PRAGMA`, `SQLITE_READ`, `SQLITE_SELECT`, `SQLITE_TRANSACTION`, `SQLITE_UPDATE`, `SQLITE_ATTACH`, `SQLITE_DETACH`, `SQLITE_ALTER_TABLE`, `SQLITE_REINDEX`, `SQLITE_ANALYZE`, `SQLITE_CREATE_VTABLE`, `SQLITE_DROP_VTABLE`, `SQLITE_FUNCTION`, `SQLITE_COPY`, `SQLITE_SAVEPOINT`, `SQLITE_RECURSIVE`
- `:authorizer_return_codes` — return codes for `sqlite3_set_authorizer()`
  - `SQLITE_DENY`, `SQLITE_IGNORE`
- `:version` — compile-time library version numbers
  - `SQLITE_VERSION_NUMBER`
- `:database_connection_configuration_options` — options for `sqlite3_db_config()`
  - `SQLITE_DBCONFIG_LOOKASIDE`, `SQLITE_DBCONFIG_ENABLE_FKEY`, `SQLITE_DBCONFIG_ENABLE_TRIGGER`, `SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER`, `SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION`, `SQLITE_DBCONFIG_MAINDBNAME`, `SQLITE_DBCONFIG_NO_CKPT_ON_CLOSE`, `SQLITE_DBCONFIG_ENABLE_QPSG`, `SQLITE_DBCONFIG_TRIGGER_EQP`, `SQLITE_DBCONFIG_MAX`, `SQLITE_DBCONFIG_RESET_DATABASE`, `SQLITE_DBCONFIG_DEFENSIVE`, `SQLITE_DBCONFIG_WRITABLE_SCHEMA`, `SQLITE_DBCONFIG_LEGACY_ALTER_TABLE`, `SQLITE_DBCONFIG_DQS_DML`, `SQLITE_DBCONFIG_DQS_DDL`, `SQLITE_DBCONFIG_ENABLE_VIEW`, `SQLITE_DBCONFIG_LEGACY_FILE_FORMAT`, `SQLITE_DBCONFIG_TRUSTED_SCHEMA`
- `:dbd_sqlite_string_mode` — string mode constants for DBD::SQLite
  - `DBD_SQLITE_STRING_MODE_PV`, `DBD_SQLITE_STRING_MODE_BYTES`, `DBD_SQLITE_STRING_MODE_UNICODE_NAIVE`, `DBD_SQLITE_STRING_MODE_UNICODE_FALLBACK`, `DBD_SQLITE_STRING_MODE_UNICODE_STRICT`
- `:extended_result_codes` — extended result codes
  - `SQLITE_IOERR_LOCK`, `SQLITE_IOERR_READ`, `SQLITE_IOERR_SHORT_READ`, `SQLITE_IOERR_WRITE`, `SQLITE_IOERR_FSYNC`, `SQLITE_IOERR_DIR_FSYNC`, `SQLITE_IOERR_TRUNCATE`, `SQLITE_IOERR_FSTAT`, `SQLITE_IOERR_UNLOCK`, `SQLITE_IOERR_RDLOCK`, `SQLITE_IOERR_DELETE`, `SQLITE_IOERR_BLOCKED`, `SQLITE_IOERR_NOMEM`, `SQLITE_IOERR_ACCESS`, `SQLITE_IOERR_CHECKRESERVEDLOCK`, `SQLITE_IOERR_CLOSE`, `SQLITE_IOERR_DIR_CLOSE`, `SQLITE_LOCKED_SHAREDCACHE`, `SQLITE_IOERR_SHMOPEN`, `SQLITE_IOERR_SHMSIZE`, `SQLITE_IOERR_SHMLOCK`, `SQLITE_BUSY_RECOVERY`, `SQLITE_CANTOPEN_NOTEMPDIR`, `SQLITE_IOERR_SHMMAP`, `SQLITE_IOERR_SEEK`, `SQLITE_CORRUPT_VTAB`, `SQLITE_READONLY_RECOVERY`, `SQLITE_READONLY_CANTLOCK`, `SQLITE_ABORT_ROLLBACK`, `SQLITE_CANTOPEN_ISDIR`, `SQLITE_IOERR_DELETE_NOENT`, `SQLITE_CANTOPEN_FULLPATH`, `SQLITE_READONLY_ROLLBACK`, `SQLITE_CONSTRAINT_CHECK`, `SQLITE_CONSTRAINT_COMMITHOOK`, `SQLITE_CONSTRAINT_FOREIGNKEY`, `SQLITE_CONSTRAINT_FUNCTION`, `SQLITE_CONSTRAINT_NOTNULL`, `SQLITE_CONSTRAINT_PRIMARYKEY`, `SQLITE_CONSTRAINT_TRIGGER`, `SQLITE_CONSTRAINT_UNIQUE`, `SQLITE_CONSTRAINT_VTAB`, `SQLITE_IOERR_MMAP`, `SQLITE_NOTICE_RECOVER_WAL`, `SQLITE_NOTICE_RECOVER_ROLLBACK`, `SQLITE_IOERR_GETTEMPPATH`, `SQLITE_BUSY_SNAPSHOT`, `SQLITE_WARNING_AUTOINDEX`, `SQLITE_IOERR_CONVPATH`, `SQLITE_CANTOPEN_CONVPATH`, `SQLITE_CONSTRAINT_ROWID`, `SQLITE_READONLY_DBMOVED`, `SQLITE_AUTH_USER`, `SQLITE_IOERR_VNODE`, `SQLITE_IOERR_AUTH`, `SQLITE_IOERR_BEGIN_ATOMIC`, `SQLITE_IOERR_COMMIT_ATOMIC`, `SQLITE_IOERR_ROLLBACK_ATOMIC`, `SQLITE_ERROR_MISSING_COLLSEQ`, `SQLITE_ERROR_RETRY`, `SQLITE_READONLY_CANTINIT`, `SQLITE_READONLY_DIRECTORY`, `SQLITE_LOCKED_VTAB`, `SQLITE_CORRUPT_SEQUENCE`, `SQLITE_ERROR_SNAPSHOT`, `SQLITE_CANTOPEN_DIRTYWAL`, `SQLITE_CANTOPEN_SYMLINK`, `SQLITE_CONSTRAINT_PINNED`, `SQLITE_OK_SYMLINK`, `SQLITE_IOERR_DATA`, `SQLITE_BUSY_TIMEOUT`, `SQLITE_CORRUPT_INDEX`, `SQLITE_IOERR_CORRUPTFS`
- `:file_open` — flags for file open operations
  - `SQLITE_OPEN_READONLY`, `SQLITE_OPEN_READWRITE`, `SQLITE_OPEN_CREATE`, `SQLITE_OPEN_NOMUTEX`, `SQLITE_OPEN_FULLMUTEX`, `SQLITE_OPEN_SHAREDCACHE`, `SQLITE_OPEN_PRIVATECACHE`, `SQLITE_OPEN_URI`, `SQLITE_OPEN_MEMORY`, `SQLITE_OPEN_NOFOLLOW`, `SQLITE_OPEN_SUPER_JOURNAL`
- `:function_flags` — flags for `sqlite3_create_function()`
  - `SQLITE_DETERMINISTIC`, `SQLITE_DIRECTONLY`, `SQLITE_SUBTYPE`, `SQLITE_INNOCUOUS`
- `:datatypes` — fundamental datatypes
  - `SQLITE_INTEGER`, `SQLITE_FLOAT`, `SQLITE_BLOB`, `SQLITE_NULL`
- `:result_codes` — basic result codes
  - `SQLITE_OK`, `SQLITE_ERROR`, `SQLITE_INTERNAL`, `SQLITE_PERM`, `SQLITE_ABORT`, `SQLITE_BUSY`, `SQLITE_LOCKED`, `SQLITE_NOMEM`, `SQLITE_READONLY`, `SQLITE_INTERRUPT`, `SQLITE_IOERR`, `SQLITE_CORRUPT`, `SQLITE_NOTFOUND`, `SQLITE_FULL`, `SQLITE_CANTOPEN`, `SQLITE_PROTOCOL`, `SQLITE_EMPTY`, `SQLITE_SCHEMA`, `SQLITE_TOOBIG`, `SQLITE_CONSTRAINT`, `SQLITE_MISMATCH`, `SQLITE_MISUSE`, `SQLITE_NOLFS`, `SQLITE_AUTH`, `SQLITE_FORMAT`, `SQLITE_RANGE`, `SQLITE_NOTADB`, `SQLITE_ROW`, `SQLITE_DONE`, `SQLITE_NOTICE`, `SQLITE_WARNING`
- `:run_time_limit_categories` — categories for `sqlite3_limit()`
  - `SQLITE_LIMIT_LENGTH`, `SQLITE_LIMIT_SQL_LENGTH`, `SQLITE_LIMIT_COLUMN`, `SQLITE_LIMIT_EXPR_DEPTH`, `SQLITE_LIMIT_COMPOUND_SELECT`, `SQLITE_LIMIT_VDBE_OP`, `SQLITE_LIMIT_FUNCTION_ARG`, `SQLITE_LIMIT_ATTACHED`, `SQLITE_LIMIT_LIKE_PATTERN_LENGTH`, `SQLITE_LIMIT_VARIABLE_NUMBER`, `SQLITE_LIMIT_TRIGGER_DEPTH`, `SQLITE_LIMIT_WORKER_THREADS`

## See Also

- [SQLite C Interface: Constants](http://sqlite.org/c3ref/constlist.html)