预定义常量
下列常量由此扩展定义,且仅在此扩展编译入 PHP 或在运行时动态载入时可用。
MYSQLI_READ_DEFAULT_GROUP
-
Read options from the named group from my.cnf or the file specified with
MYSQLI_READ_DEFAULT_FILE
MYSQLI_READ_DEFAULT_FILE
-
Read options from the named option file instead of from my.cnf
MYSQLI_OPT_CONNECT_TIMEOUT
-
Connect timeout in seconds
MYSQLI_OPT_LOCAL_INFILE
-
Enables command
LOAD LOCAL INFILE
MYSQLI_INIT_COMMAND
-
Command to execute when connecting to MySQL server. Will automatically be re-executed when reconnecting.
MYSQLI_CLIENT_SSL
-
Use SSL (encrypted protocol). This option should not be set by application programs; it is set internally in the MySQL client library
MYSQLI_CLIENT_COMPRESS
-
Use compression protocol
MYSQLI_CLIENT_INTERACTIVE
-
Allow
interactive_timeout
seconds (instead ofwait_timeout
seconds) of inactivity before closing the connection. The client's sessionwait_timeout
variable will be set to the value of the sessioninteractive_timeout
variable. MYSQLI_CLIENT_IGNORE_SPACE
-
Allow spaces after function names. Makes all functions names reserved words.
MYSQLI_CLIENT_NO_SCHEMA
-
Don't allow the
db_name.tbl_name.col_name
syntax. MYSQLI_CLIENT_MULTI_QUERIES
-
Allows multiple semicolon-delimited queries in a single mysqli_query() call.
MYSQLI_STORE_RESULT
-
For using buffered resultsets
MYSQLI_USE_RESULT
-
For using unbuffered resultsets
MYSQLI_ASSOC
-
Columns are returned into the array having the fieldname as the array index.
MYSQLI_NUM
-
Columns are returned into the array having an enumerated index.
MYSQLI_BOTH
-
Columns are returned into the array having both a numerical index and the fieldname as the associative index.
MYSQLI_NOT_NULL_FLAG
-
Indicates that a field is defined as
NOT NULL
MYSQLI_PRI_KEY_FLAG
-
Field is part of a primary index
MYSQLI_UNIQUE_KEY_FLAG
-
Field is part of a unique index.
MYSQLI_MULTIPLE_KEY_FLAG
-
Field is part of an index.
MYSQLI_BLOB_FLAG
-
Field is defined as
BLOB
MYSQLI_UNSIGNED_FLAG
-
Field is defined as
UNSIGNED
MYSQLI_ZEROFILL_FLAG
-
Field is defined as
ZEROFILL
MYSQLI_AUTO_INCREMENT_FLAG
-
Field is defined as
AUTO_INCREMENT
MYSQLI_TIMESTAMP_FLAG
-
Field is defined as
TIMESTAMP
MYSQLI_SET_FLAG
-
Field is defined as
SET
MYSQLI_NUM_FLAG
-
Field is defined as
NUMERIC
MYSQLI_PART_KEY_FLAG
-
Field is part of an multi-index
MYSQLI_GROUP_FLAG
-
Field is part of
GROUP BY
MYSQLI_TYPE_DECIMAL
-
Field is defined as
DECIMAL
MYSQLI_TYPE_NEWDECIMAL
-
Precision math
DECIMAL
orNUMERIC
field (MySQL 5.0.3 and up) MYSQLI_TYPE_BIT
-
Field is defined as
BIT
(MySQL 5.0.3 and up) MYSQLI_TYPE_TINY
-
Field is defined as
TINYINT
MYSQLI_TYPE_SHORT
-
Field is defined as
SMALLINT
MYSQLI_TYPE_LONG
-
Field is defined as
INT
MYSQLI_TYPE_FLOAT
-
Field is defined as
FLOAT
MYSQLI_TYPE_DOUBLE
-
Field is defined as
DOUBLE
MYSQLI_TYPE_NULL
-
Field is defined as
DEFAULT NULL
MYSQLI_TYPE_TIMESTAMP
-
Field is defined as
TIMESTAMP
MYSQLI_TYPE_LONGLONG
-
Field is defined as
BIGINT
MYSQLI_TYPE_INT24
-
Field is defined as
MEDIUMINT
MYSQLI_TYPE_DATE
-
Field is defined as
DATE
MYSQLI_TYPE_TIME
-
Field is defined as
TIME
MYSQLI_TYPE_DATETIME
-
Field is defined as
DATETIME
MYSQLI_TYPE_YEAR
-
Field is defined as
YEAR
MYSQLI_TYPE_NEWDATE
-
Field is defined as
DATE
MYSQLI_TYPE_INTERVAL
-
Field is defined as
INTERVAL
MYSQLI_TYPE_ENUM
-
Field is defined as
ENUM
MYSQLI_TYPE_SET
-
Field is defined as
SET
MYSQLI_TYPE_TINY_BLOB
-
Field is defined as
TINYBLOB
MYSQLI_TYPE_MEDIUM_BLOB
-
Field is defined as
MEDIUMBLOB
MYSQLI_TYPE_LONG_BLOB
-
Field is defined as
LONGBLOB
MYSQLI_TYPE_BLOB
-
Field is defined as
BLOB
MYSQLI_TYPE_VAR_STRING
-
Field is defined as
VARCHAR
MYSQLI_TYPE_STRING
-
Field is defined as
STRING
MYSQLI_TYPE_CHAR
-
Field is defined as
CHAR
MYSQLI_TYPE_GEOMETRY
-
Field is defined as
GEOMETRY
MYSQLI_NEED_DATA
-
More data available for bind variable
MYSQLI_NO_DATA
-
No more data available for bind variable
MYSQLI_DATA_TRUNCATED
-
Data truncation occurred. Available since PHP 5.1.0 and MySQL 5.0.5.
MYSQLI_ENUM_FLAG
-
Field is defined as
ENUM
. Available since PHP 5.3.0. MYSQLI_CURSOR_TYPE_FOR_UPDATE
-
MYSQLI_CURSOR_TYPE_NO_CURSOR
-
MYSQLI_CURSOR_TYPE_READ_ONLY
-
MYSQLI_CURSOR_TYPE_SCROLLABLE
-
MYSQLI_STMT_ATTR_CURSOR_TYPE
-
MYSQLI_STMT_ATTR_PREFETCH_ROWS
-
MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH
-
MYSQLI_SET_CHARSET_NAME
-
MYSQLI_REPORT_INDEX
-
Report if no index or bad index was used in a query.
MYSQLI_REPORT_ERROR
-
Report errors from mysqli function calls.
MYSQLI_REPORT_STRICT
-
Throw a
mysqli_sql_exception
for errors instead of warnings. MYSQLI_REPORT_ALL
-
Set all options on (report all).
MYSQLI_REPORT_OFF
-
Turns reporting off.
MYSQLI_DEBUG_TRACE_ENABLED
-
Is set to 1 if mysqli_debug() functionality is enabled.
MYSQLI_SERVER_QUERY_NO_GOOD_INDEX_USED
-
MYSQLI_SERVER_QUERY_NO_INDEX_USED
-
MYSQLI_REFRESH_GRANT
-
Refreshes the grant tables.
MYSQLI_REFRESH_LOG
-
Flushes the logs, like executing the
FLUSH LOGS
SQL statement. MYSQLI_REFRESH_TABLES
-
Flushes the table cache, like executing the
FLUSH TABLES
SQL statement. MYSQLI_REFRESH_HOSTS
-
Flushes the host cache, like executing the
FLUSH HOSTS
SQL statement. MYSQLI_REFRESH_STATUS
-
Reset the status variables, like executing the
FLUSH STATUS
SQL statement. MYSQLI_REFRESH_THREADS
-
Flushes the thread cache.
MYSQLI_REFRESH_SLAVE
-
On a slave replication server: resets the master server information, and restarts the slave. Like executing the
RESET SLAVE
SQL statement. MYSQLI_REFRESH_MASTER
-
On a master replication server: removes the binary log files listed in the binary log index, and truncates the index file. Like executing the
RESET MASTER
SQL statement.

User Contributed Notes 2 notes
Note that although CHAR is an explicite string type within MySQL,
MYSQLI_TYPE_CHAR is interpreted the same way as MYSQLI_TYPE_TINY, which is the TINYINT numeric type within MySQL.
As a consequence, you cannot distinguish these two column types by using their respective type index, as both are set to integer one (1).