Spec-Zone .ru
спецификации, руководства, описания, API
|
Copyright 1997-2012 PHP Documentation Group.
Представляет соединение между PHP и базой данных MySQL.
mysqli {
mysqliPropertiesint mysqli->affected_rows ;
string mysqli->client_info ;
int mysqli->client_version ;
string mysqli->connect_errno ;
string mysqli->connect_error ;
int mysqli->errno ;
array mysqli->error_list ;
string mysqli->error ;
int mysqli->field_count ;
int mysqli->client_version ;
string mysqli->host_info ;
string mysqli->protocol_version ;
string mysqli->server_info ;
int mysqli->server_version ;
string mysqli->info ;
mixed mysqli->insert_id ;
string mysqli->sqlstate ;
int mysqli->thread_id ;
int mysqli->warning_count ;
Methodsmysqli::__construct(string host= =ini_get("mysqli.default_host"),
string username= =ini_get("mysqli.default_user"),
string passwd= =ini_get("mysqli.default_pw"),
string dbname= ="",
int port= =ini_get("mysqli.default_port"),
string socket= =ini_get("mysqli.default_socket"));bool mysqli::autocommit(bool mode);
bool mysqli::change_user(string user,
string password,
string database);string mysqli::character_set_name();
bool mysqli::close();
bool mysqli::commit(int flags,
string name);bool mysqli::debug(string message);
bool mysqli::dump_debug_info();
object mysqli::get_charset();
string mysqli::get_client_info();
bool mysqli::get_connection_stats();
mysqli_warning mysqli::get_warnings();
mysqli mysqli::init();
bool mysqli::kill(int processid);
bool mysqli::more_results();
bool mysqli::multi_query(string query);
bool mysqli::next_result();
bool mysqli::options(int option,
mixed value);bool mysqli::ping();
public static int mysqli::poll(array read,
array error,
array reject,
int sec,
int usec);mysqli_stmt mysqli::prepare(string query);
mixed mysqli::query(string query,
int resultmode= =MYSQLI_STORE_RESULT);bool mysqli::real_connect(string host,
string username,
string passwd,
string dbname,
int port,
string socket,
int flags);string mysqli::escape_string(string escapestr);
bool mysqli::real_query(string query);
public mysqli_result mysqli::reap_async_query();
public bool mysqli::refresh(int options);
bool mysqli::rollback(int flags,
string name);int mysqli::rpl_query_type(string query);
bool mysqli::select_db(string dbname);
bool mysqli::send_query(string query);
bool mysqli::set_charset(string charset);
bool mysqli::set_local_infile_handler(mysqli link,
callable read_func);bool mysqli::ssl_set(string key,
string cert,
string ca,
string capath,
string cipher);string mysqli::stat();
mysqli_stmt mysqli::stmt_init();
mysqli_result mysqli::store_result();
mysqli_result mysqli::use_result();
}
Copyright 1997-2012 PHP Documentation Group.
mysqli::$affected_rows
mysqli_affected_rows
Получает число строк, на которые влияют, в предыдущей работе MySQL
Описание
Объектно-ориентированный стиль
int mysqli->affected_rows ;
Процедурный стиль
int mysqli_affected_rows(mysqli link);
Возвращает число строк, на которые влияют последним INSERT
, UPDATE
, REPLACE
или DELETE
запрос.
Для операторов SELECT mysqli_affected_rows
работы как mysqli_num_rows
.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Целое число, больше чем нуль, указывает на число строк, на которые влияют или полученный. Нуль указывает,
что никакие записи не были обновлены для оператора UPDATE, никакие строки, соответствующие WHERE
пункт в запросе или что никакой запрос еще не был выполнен.-1 указывает
что запрос, возвращенный ошибка.
Если число строк, на которые влияют, больше чем максимальное целочисленное значение ( PHP_INT_MAX
), число строк, на которые влияют, будет возвращено как
строка.
Примеры
Пример 21.106. $mysqli->affected_rows
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* Insert rows */$mysqli->query("CREATE TABLE Language SELECT * from CountryLanguage");printf("Affected rows (INSERT): %d\n", $mysqli->affected_rows);$mysqli->query("ALTER TABLE Language ADD Status int default 0");/* update rows */$mysqli->query("UPDATE Language SET Status=1 WHERE Percentage > 50");printf("Affected rows (UPDATE): %d\n", $mysqli->affected_rows);/* delete rows */$mysqli->query("DELETE FROM Language WHERE Percentage < 50");printf("Affected rows (DELETE): %d\n", $mysqli->affected_rows);/* select all rows */$result = $mysqli->query("SELECT CountryCode FROM Language");printf("Affected rows (SELECT): %d\n", $mysqli->affected_rows);$result->close();/* Delete table Language */$mysqli->query("DROP TABLE Language");/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");if (!$link) { printf("Can't connect to localhost. Error: %s\n", mysqli_connect_error()); exit();}/* Insert rows */mysqli_query($link, "CREATE TABLE Language SELECT * from CountryLanguage");printf("Affected rows (INSERT): %d\n", mysqli_affected_rows($link));mysqli_query($link, "ALTER TABLE Language ADD Status int default 0");/* update rows */mysqli_query($link, "UPDATE Language SET Status=1 WHERE Percentage > 50");printf("Affected rows (UPDATE): %d\n", mysqli_affected_rows($link));/* delete rows */mysqli_query($link, "DELETE FROM Language WHERE Percentage < 50");printf("Affected rows (DELETE): %d\n", mysqli_affected_rows($link));/* select all rows */$result = mysqli_query($link, "SELECT CountryCode FROM Language");printf("Affected rows (SELECT): %d\n", mysqli_affected_rows($link));mysqli_free_result($result);/* Delete table Language */mysqli_query($link, "DROP TABLE Language");/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Affected rows (INSERT): 984Affected rows (UPDATE): 168Affected rows (DELETE): 815Affected rows (SELECT): 169
См. Также
mysqli_num_rows
|
mysqli_info
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::autocommit
mysqli_autocommit
Включает или выключает модификации базы данных автоматической фиксации
Описание
Объектно-ориентированный стиль
bool mysqli::autocommit(bool mode);
Процедурный стиль
bool mysqli_autocommit(mysqli link,
bool mode);
Включает или выключает режим автоматической фиксации на запросах для соединения с базой данных.
Чтобы определить текущее состояние автоматической фиксации используют команду SQL SELECT
@@autocommit
.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
mode
Включить ли автоматическую фиксацию или нет.
Возвращаемые значения
Возвраты TRUE
на успехе или FALSE
при отказе.
Примечания
Эта функция не работает с не транзакционные табличные типы (как MyISAM или ИСАМ).
Примеры
Пример 21.107. mysqli::autocommit
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* turn autocommit on */$mysqli->autocommit(TRUE);if ($result = $mysqli->query("SELECT @@autocommit")) { $row = $result->fetch_row(); printf("Autocommit is %s\n", $row[0]); $result->free();}/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");if (!$link) { printf("Can't connect to localhost. Error: %s\n", mysqli_connect_error()); exit();}/* turn autocommit on */mysqli_autocommit($link, TRUE);if ($result = mysqli_query($link, "SELECT @@autocommit")) { $row = mysqli_fetch_row($result); printf("Autocommit is %s\n", $row[0]); mysqli_free_result($result);}/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Autocommit is 1
См. Также
mysqli_begin_transaction
|
mysqli_commit
|
mysqli_rollback |
Copyright 1997-2012 PHP Documentation Group.
mysqli::begin_transaction
mysqli_begin_transaction
Запускает транзакцию
Описание
Объектно-ориентированный стиль (метод):
public bool mysqli::begin_transaction(int flags,
string name);
Процедурный стиль:
bool mysqli_begin_transaction(mysqli link,
int flags,
string name);
Эта функция iscurrently не задокументированный; только его список параметров доступен.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
flags
name
Возвращаемые значения
Возвраты TRUE
на успехе или FALSE
при отказе.
См. Также
mysqli_autocommit
|
mysqli_commit
|
mysqli_rollback |
Copyright 1997-2012 PHP Documentation Group.
mysqli::change_user
mysqli_change_user
Изменяет пользователя указанного соединения с базой данных
Описание
Объектно-ориентированный стиль
bool mysqli::change_user(string user,
string password,
string database);
Процедурный стиль
bool mysqli_change_user(mysqli link,
string user,
string password,
string database);
Изменяет пользователя указанного соединения с базой данных и устанавливает текущую базу данных.
Чтобы успешно изменить пользователей допустимое username
и password
параметры должны быть обеспечены, и у того пользователя
должны быть достаточные полномочия, чтобы получить доступ к требуемой базе данных. Если по какой-либо
причине сбои авторизации, текущая пользовательская аутентификация останется.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
user
Имя пользователя MySQL.
password
Пароль MySQL.
database
База данных, чтобы измениться на.
При желании, NULL
значение можно передать, приводя к только
изменению пользователя и не выбору базы данных. Чтобы выбрать базу данных в этом случае
используют mysqli_select_db
функция.
Возвращаемые значения
Возвраты TRUE
на успехе или FALSE
при отказе.
Примечания
Используя эту команду будет всегда заставлять текущее соединение с базой данных вести себя, как будто было абсолютно новое соединение с базой данных, независимо от того, если работа была завершена успешно. Этот сброс включает выполнение отката на любых активных транзакциях, закрытие всех временных таблиц, и разблокирование всех заблокированных таблиц.
Примеры
Пример 21.108. mysqli::change_user
пример
Объектно-ориентированный стиль
<?php/* connect database test */$mysqli = new mysqli("localhost", "my_user", "my_password", "test");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* Set Variable a */$mysqli->query("SET @a:=1");/* reset all and select a new database */$mysqli->change_user("my_user", "my_password", "world");if ($result = $mysqli->query("SELECT DATABASE()")) { $row = $result->fetch_row(); printf("Default database: %s\n", $row[0]); $result->close();}if ($result = $mysqli->query("SELECT @a")) { $row = $result->fetch_row(); if ($row[0] === NULL) { printf("Value of variable a is NULL\n"); } $result->close();}/* close connection */$mysqli->close();?>
Процедурный стиль
<?php/* connect database test */$link = mysqli_connect("localhost", "my_user", "my_password", "test");/* check connection */if (!$link) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* Set Variable a */mysqli_query($link, "SET @a:=1");/* reset all and select a new database */mysqli_change_user($link, "my_user", "my_password", "world");if ($result = mysqli_query($link, "SELECT DATABASE()")) { $row = mysqli_fetch_row($result); printf("Default database: %s\n", $row[0]); mysqli_free_result($result);}if ($result = mysqli_query($link, "SELECT @a")) { $row = mysqli_fetch_row($result); if ($row[0] === NULL) { printf("Value of variable a is NULL\n"); } mysqli_free_result($result);}/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Default database: worldValue of variable a is NULL
См. Также
mysqli_connect |
mysqli_select_db |
Copyright 1997-2012 PHP Documentation Group.
mysqli::character_set_name
mysqli_character_set_name
Возвращает набор символов значения по умолчанию для соединения с базой данных
Описание
Объектно-ориентированный стиль
string mysqli::character_set_name();
Процедурный стиль
string mysqli_character_set_name(mysqli link);
Возвращает текущий набор символов для соединения с базой данных.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Набор символов значения по умолчанию для текущего соединения
Примеры
Пример 21.109. mysqli::character_set_name
пример
Объектно-ориентированный стиль
<?php/* Open a connection */$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* Print current character set */$charset = $mysqli->character_set_name();printf ("Current character set is %s\n", $charset);$mysqli->close();?>
Процедурный стиль
<?php/* Open a connection */$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (!$link) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* Print current character set */$charset = mysqli_character_set_name($link);printf ("Current character set is %s\n",$charset);/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Current character set is latin1_swedish_ci
См. Также
mysqli_set_charset
|
mysqli_client_encoding
|
mysqli_real_escape_string |
Copyright 1997-2012 PHP Documentation Group.
mysqli::$client_info
mysqli_get_client_info
Получите клиентскую информацию MySQL
Описание
Объектно-ориентированный стиль
string mysqli->client_info ;
Процедурный стиль
string mysqli_get_client_info(mysqli link);
Возвращает строку, которая представляет клиентскую версию библиотеки MySQL.
Возвращаемые значения
Строка, которая представляет клиентскую версию библиотеки MySQL
Примеры
Пример 21.110. mysqli_get_client_info
<?php/* We don't need a connection to determine the version of mysql client library */printf("Client library version: %s\n", mysqli_get_client_info());?>
См. Также
mysqli_get_client_version
|
mysqli_get_server_info
|
mysqli_get_server_version
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::$client_version
mysqli_get_client_version
Возвращает клиентскую версию MySQL как строку
Описание
Объектно-ориентированный стиль
int mysqli->client_version ;
Процедурный стиль
int mysqli_get_client_version(mysqli link);
Клиентский номер версии возвратов как целое число.
Возвращаемые значения
Число, которое представляет клиентскую версию библиотеки MySQL в формате: main_version*10000
+ minor_version *100 + sub_version
. Например, 4.1.0 возвращается как 40100.
Это полезно, чтобы быстро определить версию клиентской библиотеки, чтобы знать, существует ли некоторая возможность.
Примеры
Пример 21.111. mysqli_get_client_version
<?php/* We don't need a connection to determine the version of mysql client library */printf("Client library version: %d\n", mysqli_get_client_version());?>
См. Также
mysqli_get_client_info
|
mysqli_get_server_info
|
mysqli_get_server_version
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::close
mysqli_close
Закрывает ранее открытое соединение с базой данных
Описание
Объектно-ориентированный стиль
bool mysqli::close();
Процедурный стиль
bool mysqli_close(mysqli link);
Закрывает ранее открытое соединение с базой данных.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Возвраты TRUE
на успехе или FALSE
при отказе.
Примеры
См. mysqli_connect
.
См. Также
mysqli::__construct
|
mysqli_init |
mysqli_real_connect
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::commit
mysqli_commit
Фиксирует текущую транзакцию
Описание
Объектно-ориентированный стиль
bool mysqli::commit(int flags,
string name);
Процедурный стиль
bool mysqli_commit(mysqli link,
int flags,
string name);
Фиксирует текущую транзакцию для соединения с базой данных.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
flags
Битовая маска MYSQLI_TRANS_COR_*
константы.
name
Если обеспечено тогда COMMIT/*name*/
выполняется.
Возвращаемые значения
Возвраты TRUE
на успехе или FALSE
при отказе.
Журнал изменений
Версия | Описание |
---|---|
5.5.0 | Добавленный flags и name параметры.
|
Примеры
Пример 21.112. mysqli::commit
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}$mysqli->query("CREATE TABLE Language LIKE CountryLanguage");/* set autocommit to off */$mysqli->autocommit(FALSE);/* Insert some values */$mysqli->query("INSERT INTO Language VALUES ('DEU', 'Bavarian', 'F', 11.2)");$mysqli->query("INSERT INTO Language VALUES ('DEU', 'Swabian', 'F', 9.4)");/* commit transaction */$mysqli->commit();/* drop table */$mysqli->query("DROP TABLE Language");/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "test");/* check connection */if (!$link) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* set autocommit to off */mysqli_autocommit($link, FALSE);mysqli_query($link, "CREATE TABLE Language LIKE CountryLanguage");/* Insert some values */mysqli_query($link, "INSERT INTO Language VALUES ('DEU', 'Bavarian', 'F', 11.2)");mysqli_query($link, "INSERT INTO Language VALUES ('DEU', 'Swabian', 'F', 9.4)");/* commit transaction */mysqli_commit($link);/* close connection */mysqli_close($link);?>
См. Также
mysqli_autocommit
|
mysqli_begin_transaction
|
mysqli_rollback |
mysqli_savepoint |
Copyright 1997-2012 PHP Documentation Group.
mysqli::$connect_errno
mysqli_connect_errno
Возвращается код ошибки от последнего соединяют вызов
Описание
Объектно-ориентированный стиль
string mysqli->connect_errno ;
Процедурный стиль
int mysqli_connect_errno();
Возвращает последнее число кода ошибки от последней возможности до mysqli_connect
.
Клиентские числа сообщения об ошибке перечисляются в MySQL errmsg.h
заголовочный файл, числа сообщения об ошибке сервера перечисляются
в mysqld_error.h
. В исходном распределении MySQL можно найти полный список
сообщений об ошибках и кодов ошибки в файле Docs/mysqld_error.txt
.
Возвращаемые значения
Значение кода ошибки для последней возможности к mysqli_connect
, если это перестало работать. обнулите означает, что никакая
ошибка не произошла.
Примеры
Пример 21.113. $mysqli->connect_errno
пример
Объектно-ориентированный стиль
<?php$mysqli = @new mysqli('localhost', 'fake_user', 'my_password', 'my_db');if ($mysqli->connect_errno) { die('Connect Error: ' . $mysqli->connect_errno);}?>
Процедурный стиль
<?php$link = @mysqli_connect('localhost', 'fake_user', 'my_password', 'my_db');if (!$link) { die('Connect Error: ' . mysqli_connect_errno());}?>
Вышеупомянутые примеры выведут:
Connect Error: 1045
См. Также
mysqli_connect |
mysqli_connect_error
|
mysqli_errno
|
mysqli_error
|
mysqli_sqlstate |
Copyright 1997-2012 PHP Documentation Group.
mysqli::$connect_error
mysqli_connect_error
Возвращается строковое описание последнего соединяют ошибку
Описание
Объектно-ориентированный стиль
string mysqli->connect_error ;
Процедурный стиль
string mysqli_connect_error();
Возвращает последнюю строку сообщения об ошибке от последней возможности до mysqli_connect
.
Возвращаемые значения
Строка, которая описывает ошибку. NULL
возвращается, если никакая ошибка не
произошла.
Примеры
Пример 21.114. $mysqli->connect_error
пример
Объектно-ориентированный стиль
<?php$mysqli = @new mysqli('localhost', 'fake_user', 'my_password', 'my_db');// Works as of PHP 5.2.9 and 5.3.0.if ($mysqli->connect_error) { die('Connect Error: ' . $mysqli->connect_error);}?>
Процедурный стиль
<?php$link = @mysqli_connect('localhost', 'fake_user', 'my_password', 'my_db');if (!$link) { die('Connect Error: ' . mysqli_connect_error());}?>
Вышеупомянутые примеры выведут:
Connect Error: Access denied for user 'fake_user'@'localhost' (using password: YES)
Примечания
mysqli-> connect_error свойство только работает должным образом с версий 5.2.9 и 5.3.0 PHP.
Используйте mysqli_connect_error
функционируйте, если совместимость с ранее версиями PHP требуется.
См. Также
mysqli_connect |
mysqli_connect_errno
|
mysqli_errno
|
mysqli_error
|
mysqli_sqlstate |
Copyright 1997-2012 PHP Documentation Group.
mysqli::__construct
mysqli_connect
Откройте новое соединение с сервером MySQL
Описание
Объектно-ориентированный стиль
mysqli::__construct(string host= =ini_get("mysqli.default_host"),
string username= =ini_get("mysqli.default_user"),
string passwd= =ini_get("mysqli.default_pw"),
string dbname= ="",
int port= =ini_get("mysqli.default_port"),
string socket= =ini_get("mysqli.default_socket"));
Процедурный стиль
mysqli mysqli_connect(string host= =ini_get("mysqli.default_host"),
string username= =ini_get("mysqli.default_user"),
string passwd= =ini_get("mysqli.default_pw"),
string dbname= ="",
int port= =ini_get("mysqli.default_port"),
string socket= =ini_get("mysqli.default_socket"));
Открывает соединение с работой MySQL Server.
Параметры
host
Может быть или имя хоста или IP-адрес. Передача NULL
значение или
строка "localhost" к этому параметру, локальный узел принимается. Когда возможный, каналы
будут использоваться вместо протокола TCP/IP.
Узел предна ожидании p:
открывает персистентное соединение. mysqli_change_user
автоматически вызывается на соединениях, открытых от пула соединения.
username
Имя пользователя MySQL.
passwd
Если не обеспеченный или NULL
, сервер MySQL попытается
аутентифицировать пользователя против тех пользовательских записей, у которых нет никакого пароля
только. Это позволяет одному имени пользователя использоваться с различными полномочиями (в
зависимости от если пароль как предусмотрено или не).
dbname
Если обеспечено определит базу данных значения по умолчанию, которая будет использоваться, выполняя запросы.
port
Определяет номер порта, чтобы попытаться соединиться с сервером MySQL.
socket
Определяет сокет или именованный канал, который должен использоваться.
Определение socket
параметр не будет явно
определять тип соединения, которое будет использоваться, соединяясь с сервером MySQL. То,
как соединение делается к базе данных MySQL, определяется host
параметр.
Возвращаемые значения
Возвращает объект, который представляет соединение с MySQL Server.
Журнал изменений
Версия | Описание |
---|---|
5.3.0 | Добавленный возможность персистентных соединений. |
Примеры
Пример 21.115. mysqli::__construct
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli('localhost', 'my_user', 'my_password', 'my_db');/* * This is the "official" OO way to do it, * BUT $connect_error was broken until PHP 5.2.9 and 5.3.0. */if ($mysqli->connect_error) { die('Connect Error (' . $mysqli->connect_errno . ') ' . $mysqli->connect_error);}/* * Use this instead of $connect_error if you need to ensure * compatibility with PHP versions prior to 5.2.9 and 5.3.0. */if (mysqli_connect_error()) { die('Connect Error (' . mysqli_connect_errno() . ') ' . mysqli_connect_error());}echo 'Success... ' . $mysqli->host_info . "\n";$mysqli->close();?>
Объектно-ориентированный стиль, расширяясь mysqli class
<?phpclass foo_mysqli extends mysqli { public function __construct($host, $user, $pass, $db) { parent::__construct($host, $user, $pass, $db); if (mysqli_connect_error()) { die('Connect Error (' . mysqli_connect_errno() . ') ' . mysqli_connect_error()); } }}$db = new foo_mysqli('localhost', 'my_user', 'my_password', 'my_db');echo 'Success... ' . $db->host_info . "\n";$db->close();?>
Процедурный стиль
<?php$link = mysqli_connect('localhost', 'my_user', 'my_password', 'my_db');if (!$link) { die('Connect Error (' . mysqli_connect_errno() . ') ' . mysqli_connect_error());}echo 'Success... ' . mysqli_get_host_info($link) . "\n";mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Success... MySQL host info: localhost via TCP/IP
Примечания
MySQLnd всегда принимает набор символов значения по умолчанию сервера. Этот набор символов отправляется во время рукопожатия/аутентификации соединения, которое будет использовать mysqlnd.
Либмискльклиан использует набор набора символов значения по умолчанию my.cnf
или явным звонком mysqli_options
до вызова mysqli_real_connect
,
но после mysqli_init
.
Синтаксис OO только: Если связь прерывается, объект все еще возвращается. Проверять, использует
ли соединение, отказавшее тогда, любого mysqli_connect_error
функционируйте или mysqli->
connect_error свойство как в предыдущих примерах.
Если необходимо установить опции, такие как тайм-аут соединения, mysqli_real_connect
должен использоваться вместо этого.
Вызов конструктора без параметров является тем же самым как вызовом mysqli_init
.
Ошибка "Не может создать сокет (10106) TCP/IP", обычно означает, что E
. На Windows, если среда не
копируется SYSTEMROOT
переменная окружения не будет доступна, и у PHP будут
проблемы, загружая Winsock.
См. Также
mysqli_real_connect
|
mysqli_options
|
mysqli_connect_errno
|
mysqli_connect_error
|
mysqli_close
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::debug
mysqli_debug
Выполняет операции отладки
Описание
Объектно-ориентированный стиль
bool mysqli::debug(string message);
Процедурный стиль
bool mysqli_debug(string message);
Выполняет операции отладки, пользующиеся Фредом Фишем, отлаживающим библиотеку.
Параметры
message
Строка, представляющая работу отладки, чтобы выполнить
Возвращаемые значения
Возвраты TRUE
.
Примечания
Использовать mysqli_debug
функция следует скомпилировать клиентскую библиотеку MySQL, чтобы поддерживать отладку.
Примеры
Пример 21.116. Генерирование Файла трассировки
<?php/* Create a trace file in '/tmp/client.trace' on the local (client) machine: */mysqli_debug("d:t:o,/tmp/client.trace");?>
См. Также
mysqli_dump_debug_info
|
mysqli_report |
Copyright 1997-2012 PHP Documentation Group.
mysqli::dump_debug_info
mysqli_dump_debug_info
Выведите отладочную информацию в журнал
Описание
Объектно-ориентированный стиль
bool mysqli::dump_debug_info();
Процедурный стиль
bool mysqli_dump_debug_info(mysqli link);
Эта функция разрабатывается, чтобы быть выполненной пользователем с полномочием ВЫСШЕГО КАЧЕСТВА и используется, чтобы вывести отладочную информацию в журнал для MySQL Server, касающегося соединения.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Возвраты TRUE
на успехе или FALSE
при отказе.
См. Также
mysqli_debug
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::$errno
mysqli_errno
Возвращает код ошибки для нового вызова функции
Описание
Объектно-ориентированный стиль
int mysqli->errno ;
Процедурный стиль
int mysqli_errno(mysqli link);
Возвращает последний код ошибки для нового вызова функции MySQLi, который может успешно выполниться или перестать работать.
Клиентские числа сообщения об ошибке перечисляются в MySQL errmsg.h
заголовочный файл, числа сообщения об ошибке сервера перечисляются в mysqld_error.h
. В исходном распределении MySQL можно найти полный список
сообщений об ошибках и кодов ошибки в файле Docs/mysqld_error.txt
.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Значение кода ошибки для последней возможности, если это перестало работать. обнулите означает, что никакая ошибка не произошла.
Примеры
Пример 21.117. $mysqli->errno
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if ($mysqli->connect_errno) { printf("Connect failed: %s\n", $mysqli->connect_error); exit();}if (!$mysqli->query("SET a=1")) { printf("Errorcode: %d\n", $mysqli->errno);}/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}if (!mysqli_query($link, "SET a=1")) { printf("Errorcode: %d\n", mysqli_errno($link));}/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Errorcode: 1193
См. Также
mysqli_connect_errno
|
mysqli_connect_error
|
mysqli_error
|
mysqli_sqlstate |
Copyright 1997-2012 PHP Documentation Group.
mysqli::$error_list
mysqli_error_list
Возвращает список ошибок от последней выполняемой команды
Описание
Объектно-ориентированный стиль
array mysqli->error_list ;
Процедурный стиль
array mysqli_error_list(mysqli link);
Возвращает массив ошибок для нового вызова функции MySQLi, который может успешно выполниться или перестать работать.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Список ошибок, каждый как ассоциативный массив, содержащий errno, ошибку, и sqlstate.
Примеры
Пример 21.118. $mysqli->error_list
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "nobody", "");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}if (!$mysqli->query("SET a=1")) { print_r($mysqli->error_list);}/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}if (!mysqli_query($link, "SET a=1")) { print_r(mysqli_error_list($link));}/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Array( [0] => Array ( [errno] => 1193 [sqlstate] => HY000 [error] => Unknown system variable 'a' ))
См. Также
mysqli_connect_errno
|
mysqli_connect_error
|
mysqli_error
|
mysqli_sqlstate |
Copyright 1997-2012 PHP Documentation Group.
mysqli::$error
mysqli_error
Возвращает строковое описание последней ошибки
Описание
Объектно-ориентированный стиль
string mysqli->error ;
Процедурный стиль
string mysqli_error(mysqli link);
Возвращает последнее сообщение об ошибке для нового вызова функции MySQLi, который может успешно выполниться или перестать работать.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Строка, которая описывает ошибку. Пустая строка, если никакая ошибка не произошла.
Примеры
Пример 21.119. $mysqli->error
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if ($mysqli->connect_errno) { printf("Connect failed: %s\n", $mysqli->connect_error); exit();}if (!$mysqli->query("SET a=1")) { printf("Errormessage: %s\n", $mysqli->error);}/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}if (!mysqli_query($link, "SET a=1")) { printf("Errormessage: %s\n", mysqli_error($link));}/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Errormessage: Unknown system variable 'a'
См. Также
mysqli_connect_errno
|
mysqli_connect_error
|
mysqli_errno
|
mysqli_sqlstate |
Copyright 1997-2012 PHP Documentation Group.
mysqli::$field_count
mysqli_field_count
Возвращает число столбцов для нового запроса
Описание
Объектно-ориентированный стиль
int mysqli->field_count ;
Процедурный стиль
int mysqli_field_count(mysqli link);
Возвращает число столбцов для нового запроса на соединении, представленном link
параметр. Эта функция может быть полезной при использовании mysqli_store_result
функция определить, должен ли запрос был произвести непустой набор результатов или не зная природу запроса.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Целое число, представляющее число полей в наборе результатов.
Примеры
Пример 21.120. $mysqli->field_count
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "test");$mysqli->query( "DROP TABLE IF EXISTS friends");$mysqli->query( "CREATE TABLE friends (id int, name varchar(20))");$mysqli->query( "INSERT INTO friends VALUES (1,'Hartmut'), (2, 'Ulf')");$mysqli->real_query("SELECT * FROM friends");if ($mysqli->field_count) { /* this was a select/show or describe query */ $result = $mysqli->store_result(); /* process resultset */ $row = $result->fetch_row(); /* free resultset */ $result->close();}/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "test");mysqli_query($link, "DROP TABLE IF EXISTS friends");mysqli_query($link, "CREATE TABLE friends (id int, name varchar(20))");mysqli_query($link, "INSERT INTO friends VALUES (1,'Hartmut'), (2, 'Ulf')");mysqli_real_query($link, "SELECT * FROM friends");if (mysqli_field_count($link)) { /* this was a select/show or describe query */ $result = mysqli_store_result($link); /* process resultset */ $row = mysqli_fetch_row($result); /* free resultset */ mysqli_free_result($result);}/* close connection */mysqli_close($link);?>
Copyright 1997-2012 PHP Documentation Group.
mysqli::get_charset
mysqli_get_charset
Возвращает объект набора символов
Описание
Объектно-ориентированный стиль
object mysqli::get_charset();
Процедурный стиль
object mysqli_get_charset(mysqli link);
Возвращает объект набора символов обеспечение нескольких свойств текущего активного набора символов.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Функция возвращает объект набора символов со следующими свойствами:
charset
Имя набора символов
collation
Имя сопоставления
dir
Каталог описание набора символов был выбран от(?) или "" для встроенных наборов символов
min_length
Минимальная символьная длина в байтах
max_length
Максимальная символьная длина в байтах
number
Внутреннее число набора символов
state
Состояние (?) набора символов
Примеры
Пример 21.121. mysqli::get_charset
пример
Объектно-ориентированный стиль
<?php $db = mysqli_init(); $db->real_connect("localhost","root","","test"); var_dump($db->get_charset());?>
Процедурный стиль
<?php $db = mysqli_init(); mysqli_real_connect($db, "localhost","root","","test"); var_dump($db->get_charset());?>
Вышеупомянутые примеры выведут:
object(stdClass)#2 (7) { ["charset"]=> string(6) "latin1" ["collation"]=> string(17) "latin1_swedish_ci" ["dir"]=> string(0) "" ["min_length"]=> int(1) ["max_length"]=> int(1) ["number"]=> int(8) ["state"]=> int(801)}
См. Также
mysqli_character_set_name
|
mysqli_set_charset
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::get_client_info
mysqli_get_client_info
Получите клиентскую информацию MySQL
Описание
Объектно-ориентированный стиль
string mysqli::get_client_info();
Процедурный стиль
string mysqli_get_client_info(mysqli link);
Возвращает строку, которая представляет клиентскую версию библиотеки MySQL.
Возвращаемые значения
Строка, которая представляет клиентскую версию библиотеки MySQL
Примеры
Пример 21.122. mysqli_get_client_info
<?php/* We don't need a connection to determine the version of mysql client library */printf("Client library version: %s\n", mysqli_get_client_info());?>
См. Также
mysqli_get_client_version
|
mysqli_get_server_info
|
mysqli_get_server_version
|
Copyright 1997-2012 PHP Documentation Group.
mysqli_get_client_stats
Клиент возвратов статистика для каждого процесса
Описание
array mysqli_get_client_stats();
Клиент возвратов статистика для каждого процесса. Доступный только с mysqlnd.
Параметры
Возвращаемые значения
Возвращает массив с клиентом stats если успех, FALSE
иначе.
Примеры
Пример 21.123. A mysqli_get_client_stats
пример
<?php$link = mysqli_connect();print_r(mysqli_get_client_stats());?>
Вышеупомянутый пример выведет что-то подобное:
Array( [bytes_sent] => 43 [bytes_received] => 80 [packets_sent] => 1 [packets_received] => 2 [protocol_overhead_in] => 8 [protocol_overhead_out] => 4 [bytes_received_ok_packet] => 11 [bytes_received_eof_packet] => 0 [bytes_received_rset_header_packet] => 0 [bytes_received_rset_field_meta_packet] => 0 [bytes_received_rset_row_packet] => 0 [bytes_received_prepare_response_packet] => 0 [bytes_received_change_user_packet] => 0 [packets_sent_command] => 0 [packets_received_ok] => 1 [packets_received_eof] => 0 [packets_received_rset_header] => 0 [packets_received_rset_field_meta] => 0 [packets_received_rset_row] => 0 [packets_received_prepare_response] => 0 [packets_received_change_user] => 0 [result_set_queries] => 0 [non_result_set_queries] => 0 [no_index_used] => 0 [bad_index_used] => 0 [slow_queries] => 0 [buffered_sets] => 0 [unbuffered_sets] => 0 [ps_buffered_sets] => 0 [ps_unbuffered_sets] => 0 [flushed_normal_sets] => 0 [flushed_ps_sets] => 0 [ps_prepared_never_executed] => 0 [ps_prepared_once_executed] => 0 [rows_fetched_from_server_normal] => 0 [rows_fetched_from_server_ps] => 0 [rows_buffered_from_client_normal] => 0 [rows_buffered_from_client_ps] => 0 [rows_fetched_from_client_normal_buffered] => 0 [rows_fetched_from_client_normal_unbuffered] => 0 [rows_fetched_from_client_ps_buffered] => 0 [rows_fetched_from_client_ps_unbuffered] => 0 [rows_fetched_from_client_ps_cursor] => 0 [rows_skipped_normal] => 0 [rows_skipped_ps] => 0 [copy_on_write_saved] => 0 [copy_on_write_performed] => 0 [command_buffer_too_small] => 0 [connect_success] => 1 [connect_failure] => 0 [connection_reused] => 0 [reconnect] => 0 [pconnect_success] => 0 [active_connections] => 1 [active_persistent_connections] => 0 [explicit_close] => 0 [implicit_close] => 0 [disconnect_close] => 0 [in_middle_of_command_close] => 0 [explicit_free_result] => 0 [implicit_free_result] => 0 [explicit_stmt_close] => 0 [implicit_stmt_close] => 0 [mem_emalloc_count] => 0 [mem_emalloc_ammount] => 0 [mem_ecalloc_count] => 0 [mem_ecalloc_ammount] => 0 [mem_erealloc_count] => 0 [mem_erealloc_ammount] => 0 [mem_efree_count] => 0 [mem_malloc_count] => 0 [mem_malloc_ammount] => 0 [mem_calloc_count] => 0 [mem_calloc_ammount] => 0 [mem_realloc_count] => 0 [mem_realloc_ammount] => 0 [mem_free_count] => 0 [proto_text_fetched_null] => 0 [proto_text_fetched_bit] => 0 [proto_text_fetched_tinyint] => 0 [proto_text_fetched_short] => 0 [proto_text_fetched_int24] => 0 [proto_text_fetched_int] => 0 [proto_text_fetched_bigint] => 0 [proto_text_fetched_decimal] => 0 [proto_text_fetched_float] => 0 [proto_text_fetched_double] => 0 [proto_text_fetched_date] => 0 [proto_text_fetched_year] => 0 [proto_text_fetched_time] => 0 [proto_text_fetched_datetime] => 0 [proto_text_fetched_timestamp] => 0 [proto_text_fetched_string] => 0 [proto_text_fetched_blob] => 0 [proto_text_fetched_enum] => 0 [proto_text_fetched_set] => 0 [proto_text_fetched_geometry] => 0 [proto_text_fetched_other] => 0 [proto_binary_fetched_null] => 0 [proto_binary_fetched_bit] => 0 [proto_binary_fetched_tinyint] => 0 [proto_binary_fetched_short] => 0 [proto_binary_fetched_int24] => 0 [proto_binary_fetched_int] => 0 [proto_binary_fetched_bigint] => 0 [proto_binary_fetched_decimal] => 0 [proto_binary_fetched_float] => 0 [proto_binary_fetched_double] => 0 [proto_binary_fetched_date] => 0 [proto_binary_fetched_year] => 0 [proto_binary_fetched_time] => 0 [proto_binary_fetched_datetime] => 0 [proto_binary_fetched_timestamp] => 0 [proto_binary_fetched_string] => 0 [proto_binary_fetched_blob] => 0 [proto_binary_fetched_enum] => 0 [proto_binary_fetched_set] => 0 [proto_binary_fetched_geometry] => 0 [proto_binary_fetched_other] => 0)
См. Также
Описание Stats |
Copyright 1997-2012 PHP Documentation Group.
mysqli_get_client_version
mysqli::$client_version
Возвращает клиентскую версию MySQL как строку
Описание
Объектно-ориентированный стиль
int mysqli->client_version ;
Процедурный стиль
int mysqli_get_client_version(mysqli link);
Клиентский номер версии возвратов как целое число.
Возвращаемые значения
Число, которое представляет клиентскую версию библиотеки MySQL в формате: main_version*10000
+ minor_version *100 + sub_version
. Например, 4.1.0 возвращается как 40100.
Это полезно, чтобы быстро определить версию клиентской библиотеки, чтобы знать, выходит ли некоторая возможность.
Примеры
Пример 21.124. mysqli_get_client_version
<?php/* We don't need a connection to determine the version of mysql client library */printf("Client library version: %d\n", mysqli_get_client_version());?>
См. Также
mysqli_get_client_info
|
mysqli_get_server_info
|
mysqli_get_server_version
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::get_connection_stats
mysqli_get_connection_stats
Статистика возвратов о клиентском соединении
Описание
Объектно-ориентированный стиль
bool mysqli::get_connection_stats();
Процедурный стиль
array mysqli_get_connection_stats(mysqli link);
Статистика возвратов о клиентском соединении. Доступный только с mysqlnd.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Возвращает массив с соединением stats если успех, FALSE
иначе.
Примеры
Пример 21.125. A mysqli_get_connection_stats
пример
<?php$link = mysqli_connect();print_r(mysqli_get_connection_stats($link));?>
Вышеупомянутый пример выведет что-то подобное:
Array( [bytes_sent] => 43 [bytes_received] => 80 [packets_sent] => 1 [packets_received] => 2 [protocol_overhead_in] => 8 [protocol_overhead_out] => 4 [bytes_received_ok_packet] => 11 [bytes_received_eof_packet] => 0 [bytes_received_rset_header_packet] => 0 [bytes_received_rset_field_meta_packet] => 0 [bytes_received_rset_row_packet] => 0 [bytes_received_prepare_response_packet] => 0 [bytes_received_change_user_packet] => 0 [packets_sent_command] => 0 [packets_received_ok] => 1 [packets_received_eof] => 0 [packets_received_rset_header] => 0 [packets_received_rset_field_meta] => 0 [packets_received_rset_row] => 0 [packets_received_prepare_response] => 0 [packets_received_change_user] => 0 [result_set_queries] => 0 [non_result_set_queries] => 0 [no_index_used] => 0 [bad_index_used] => 0 [slow_queries] => 0 [buffered_sets] => 0 [unbuffered_sets] => 0 [ps_buffered_sets] => 0 [ps_unbuffered_sets] => 0 [flushed_normal_sets] => 0 [flushed_ps_sets] => 0 [ps_prepared_never_executed] => 0 [ps_prepared_once_executed] => 0 [rows_fetched_from_server_normal] => 0 [rows_fetched_from_server_ps] => 0 [rows_buffered_from_client_normal] => 0 [rows_buffered_from_client_ps] => 0 [rows_fetched_from_client_normal_buffered] => 0 [rows_fetched_from_client_normal_unbuffered] => 0 [rows_fetched_from_client_ps_buffered] => 0 [rows_fetched_from_client_ps_unbuffered] => 0 [rows_fetched_from_client_ps_cursor] => 0 [rows_skipped_normal] => 0 [rows_skipped_ps] => 0 [copy_on_write_saved] => 0 [copy_on_write_performed] => 0 [command_buffer_too_small] => 0 [connect_success] => 1 [connect_failure] => 0 [connection_reused] => 0 [reconnect] => 0 [pconnect_success] => 0 [active_connections] => 1 [active_persistent_connections] => 0 [explicit_close] => 0 [implicit_close] => 0 [disconnect_close] => 0 [in_middle_of_command_close] => 0 [explicit_free_result] => 0 [implicit_free_result] => 0 [explicit_stmt_close] => 0 [implicit_stmt_close] => 0 [mem_emalloc_count] => 0 [mem_emalloc_ammount] => 0 [mem_ecalloc_count] => 0 [mem_ecalloc_ammount] => 0 [mem_erealloc_count] => 0 [mem_erealloc_ammount] => 0 [mem_efree_count] => 0 [mem_malloc_count] => 0 [mem_malloc_ammount] => 0 [mem_calloc_count] => 0 [mem_calloc_ammount] => 0 [mem_realloc_count] => 0 [mem_realloc_ammount] => 0 [mem_free_count] => 0 [proto_text_fetched_null] => 0 [proto_text_fetched_bit] => 0 [proto_text_fetched_tinyint] => 0 [proto_text_fetched_short] => 0 [proto_text_fetched_int24] => 0 [proto_text_fetched_int] => 0 [proto_text_fetched_bigint] => 0 [proto_text_fetched_decimal] => 0 [proto_text_fetched_float] => 0 [proto_text_fetched_double] => 0 [proto_text_fetched_date] => 0 [proto_text_fetched_year] => 0 [proto_text_fetched_time] => 0 [proto_text_fetched_datetime] => 0 [proto_text_fetched_timestamp] => 0 [proto_text_fetched_string] => 0 [proto_text_fetched_blob] => 0 [proto_text_fetched_enum] => 0 [proto_text_fetched_set] => 0 [proto_text_fetched_geometry] => 0 [proto_text_fetched_other] => 0 [proto_binary_fetched_null] => 0 [proto_binary_fetched_bit] => 0 [proto_binary_fetched_tinyint] => 0 [proto_binary_fetched_short] => 0 [proto_binary_fetched_int24] => 0 [proto_binary_fetched_int] => 0 [proto_binary_fetched_bigint] => 0 [proto_binary_fetched_decimal] => 0 [proto_binary_fetched_float] => 0 [proto_binary_fetched_double] => 0 [proto_binary_fetched_date] => 0 [proto_binary_fetched_year] => 0 [proto_binary_fetched_time] => 0 [proto_binary_fetched_datetime] => 0 [proto_binary_fetched_timestamp] => 0 [proto_binary_fetched_string] => 0 [proto_binary_fetched_blob] => 0 [proto_binary_fetched_enum] => 0 [proto_binary_fetched_set] => 0 [proto_binary_fetched_geometry] => 0 [proto_binary_fetched_other] => 0)
См. Также
Описание Stats |
Copyright 1997-2012 PHP Documentation Group.
mysqli::$host_info
mysqli_get_host_info
Возвращает строку, представляющую тип используемого соединения
Описание
Объектно-ориентированный стиль
string mysqli->host_info ;
Процедурный стиль
string mysqli_get_host_info(mysqli link);
Возвращает строку, описывающую соединение, представленное link
параметр (включая имя хоста сервера).
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Символьная строка, представляющая имя узла сервера и тип подключения.
Примеры
Пример 21.126. $mysqli->host_info
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* print host information */printf("Host info: %s\n", $mysqli->host_info);/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* print host information */printf("Host info: %s\n", mysqli_get_host_info($link));/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Host info: Localhost via UNIX socket
См. Также
mysqli_get_proto_info
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::$protocol_version
mysqli_get_proto_info
Возвращает версию используемого протокола MySQL
Описание
Объектно-ориентированный стиль
string mysqli->protocol_version ;
Процедурный стиль
int mysqli_get_proto_info(mysqli link);
Возвращает целое число, представляющее версию протокола MySQL, используемую соединением, представленным link
параметр.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Возвращает целое число, представляющее версию протокола.
Примеры
Пример 21.127. $mysqli->protocol_version
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* print protocol version */printf("Protocol version: %d\n", $mysqli->protocol_version);/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* print protocol version */printf("Protocol version: %d\n", mysqli_get_proto_info($link));/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Protocol version: 10
См. Также
mysqli_get_host_info
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::$server_info
mysqli_get_server_info
Возвращает версию сервера MySQL
Описание
Объектно-ориентированный стиль
string mysqli->server_info ;
Процедурный стиль
string mysqli_get_server_info(mysqli link);
Возвращает строку, представляющую версию сервера MySQL, с которым соединяется расширение MySQLi.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Символьная строка, представляющая версию сервера.
Примеры
Пример 21.128. $mysqli->server_info
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* print server version */printf("Server version: %s\n", $mysqli->server_info);/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* print server version */printf("Server version: %s\n", mysqli_get_server_info($link));/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Server version: 4.1.2-alpha-debug
См. Также
mysqli_get_client_info
|
mysqli_get_client_version
|
mysqli_get_server_version
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::$server_version
mysqli_get_server_version
Возвращает версию сервера MySQL как целое число
Описание
Объектно-ориентированный стиль
int mysqli->server_version ;
Процедурный стиль
int mysqli_get_server_version(mysqli link);
mysqli_get_server_version
функционируйте возвращает версию сервера, соединенного с (представленный link
параметр) как целое число.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Целое число, представляющее версию сервера.
Форма этого номера версии main_version * 10000 + minor_version * 100 +
sub_version
(то есть версия 4.1.0 40100).
Примеры
Пример 21.129. $mysqli->server_version
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* print server version */printf("Server version: %d\n", $mysqli->server_version);/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* print server version */printf("Server version: %d\n", mysqli_get_server_version($link));/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Server version: 40102
См. Также
mysqli_get_client_info
|
mysqli_get_client_version
|
mysqli_get_server_info
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::get_warnings
mysqli_get_warnings
Получите результат ВЫСТАВОЧНЫХ ПРЕДУПРЕЖДЕНИЙ
Описание
Объектно-ориентированный стиль
mysqli_warning mysqli::get_warnings();
Процедурный стиль
mysqli_warning mysqli_get_warnings(mysqli link);
Эта функция iscurrently не задокументированный; только его список параметров доступен.
Copyright 1997-2012 PHP Documentation Group.
mysqli::$info
mysqli_info
Получает информацию о последний раз выполняемом запросе
Описание
Объектно-ориентированный стиль
string mysqli->info ;
Процедурный стиль
string mysqli_info(mysqli link);
mysqli_info
функционируйте возвращает строковую информацию о предоставляющем о последнем выполняемом запросе. Природа
этой строки обеспечивается ниже:
Таблица 21.49. Возможные mysqli_info возвращаемые значения
Тип запроса | Строка результата в качестве примера |
---|---|
INSERT INTO... ВЫБЕРИТЕ... | Записи: 100 Копий: 0 Предупреждений: 0 |
INSERT INTO... ЗНАЧЕНИЯ (...), (...), (...) | Записи: 3 Копии: 0 Предупреждений: 0 |
ДАННЫЕ ЗАГРУЗКИ INFILE... | Записи: 1 Удаленный: 0 Пропущенный: 0 Предупреждений: 0 |
ALTER TABLE... | Записи: 3 Копии: 0 Предупреждений: 0 |
ОБНОВЛЕНИЕ... | Строки соответствовали: 40 Измененный: 40 Предупреждений: 0 |
Запросы, которые не попадают в один из предыдущих форматов, не поддерживаются. В этих
ситуациях, mysqli_info
возвратит пустую строку.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Дополнительная информация представления символьной строки о последний раз выполняемом запросе.
Примеры
Пример 21.130. $mysqli->info
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}$mysqli->query("CREATE TEMPORARY TABLE t1 LIKE City");/* INSERT INTO .. SELECT */$mysqli->query("INSERT INTO t1 SELECT * FROM City ORDER BY ID LIMIT 150");printf("%s\n", $mysqli->info);/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}mysqli_query($link, "CREATE TEMPORARY TABLE t1 LIKE City");/* INSERT INTO .. SELECT */mysqli_query($link, "INSERT INTO t1 SELECT * FROM City ORDER BY ID LIMIT 150");printf("%s\n", mysqli_info($link));/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Records: 150 Duplicates: 0 Warnings: 0
См. Также
mysqli_affected_rows
|
mysqli_warning_count
|
mysqli_num_rows
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::init
mysqli_init
Инициализирует MySQLi и возвращает ресурс для использования с mysqli_real_connect ()
Описание
Объектно-ориентированный стиль
mysqli mysqli::init();
Процедурный стиль
mysqli mysqli_init();
Выделяет или инициализирует объект MYSQL, подходящий для mysqli_options
и mysqli_real_connect
.
Любые последующие звонки в любую функцию mysqli (кроме mysqli_options
) не перестанет работать до mysqli_real_connect
был вызван.
Возвращаемые значения
Возвращает объект.
Примеры
См. mysqli_real_connect
.
См. Также
mysqli_options
|
mysqli_close
|
mysqli_real_connect
|
mysqli_connect |
Copyright 1997-2012 PHP Documentation Group.
mysqli::$insert_id
mysqli_insert_id
Возвращает автоматический сгенерированный идентификатор, используемый в последнем запросе
Описание
Объектно-ориентированный стиль
mixed mysqli->insert_id ;
Процедурный стиль
mixed mysqli_insert_id(mysqli link);
mysqli_insert_id
функционируйте возвращает ID, сгенерированный запросом на
таблице со столбцом, имеющим атрибут AUTO_INCREMENT. Если последний запрос не был оператором INSERT ИЛИ
UPDATE или если у измененной таблицы не будет столбца с атрибутом AUTO_INCREMENT, то эта функция возвратит
нуль.
Выполняя оператор INSERT ИЛИ UPDATE, используя LAST_INSERT_ID () функция также изменит
значение, возвращенное mysqli_insert_id
функция.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Значение AUTO_INCREMENT
поле, которое было обновлено предыдущим запросом.
Возвраты обнуляют, если не было никакого предыдущего запроса на соединении или если запрос не обновлял AUTO_INCREMENT
значение.
Если число больше чем максимальное международное значение, mysqli_insert_id
возвратит строку.
Примеры
Пример 21.131. $mysqli->insert_id
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}$mysqli->query("CREATE TABLE myCity LIKE City");$query = "INSERT INTO myCity VALUES (NULL, 'Stuttgart', 'DEU', 'Stuttgart', 617000)";$mysqli->query($query);printf ("New Record has id %d.\n", $mysqli->insert_id);/* drop table */$mysqli->query("DROP TABLE myCity");/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}mysqli_query($link, "CREATE TABLE myCity LIKE City");$query = "INSERT INTO myCity VALUES (NULL, 'Stuttgart', 'DEU', 'Stuttgart', 617000)";mysqli_query($link, $query);printf ("New Record has id %d.\n", mysqli_insert_id($link));/* drop table */mysqli_query($link, "DROP TABLE myCity");/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
New Record has id 1.
Copyright 1997-2012 PHP Documentation Group.
mysqli::kill
mysqli_kill
Просит сервер уничтожать поток MySQL
Описание
Объектно-ориентированный стиль
bool mysqli::kill(int processid);
Процедурный стиль
bool mysqli_kill(mysqli link,
int processid);
Эта функция используется, чтобы попросить, чтобы сервер уничтожил поток MySQL, определенный processid
параметр. Это значение должно быть получено, вызывая mysqli_thread_id
функция.
Чтобы остановить рабочий запрос, следует использовать команду SQL KILL QUERY
processid
.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Возвраты TRUE
на успехе или FALSE
при отказе.
Примеры
Пример 21.132. mysqli::kill
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* determine our thread id */$thread_id = $mysqli->thread_id;/* Kill connection */$mysqli->kill($thread_id);/* This should produce an error */if (!$mysqli->query("CREATE TABLE myCity LIKE City")) { printf("Error: %s\n", $mysqli->error); exit;}/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* determine our thread id */$thread_id = mysqli_thread_id($link);/* Kill connection */mysqli_kill($link, $thread_id);/* This should produce an error */if (!mysqli_query($link, "CREATE TABLE myCity LIKE City")) { printf("Error: %s\n", mysqli_error($link)); exit;}/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Error: MySQL server has gone away
См. Также
mysqli_thread_id |
Copyright 1997-2012 PHP Documentation Group.
mysqli::more_results
mysqli_more_results
Проверьте, есть ли больше запрос, следует из много запроса
Описание
Объектно-ориентированный стиль
bool mysqli::more_results();
Процедурный стиль
bool mysqli_more_results(mysqli link);
Указывает, доступны ли один или более наборов результатов от предыдущего звонка mysqli_multi_query
.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Возвраты TRUE
если один или более наборов результатов доступны от предыдущего
звонка mysqli_multi_query
,
иначе FALSE
.
Примеры
См. mysqli_multi_query
.
См. Также
mysqli_multi_query
|
mysqli_next_result
|
mysqli_store_result
|
mysqli_use_result
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::multi_query
mysqli_multi_query
Выполняет запрос на базе данных
Описание
Объектно-ориентированный стиль
bool mysqli::multi_query(string query);
Процедурный стиль
bool mysqli_multi_query(mysqli link,
string query);
Выполняется один или многократные запросы, которые связываются точкой с запятой.
Чтобы получить набор результатов от первого запроса, можно использовать mysqli_use_result
или mysqli_store_result
. Все последующие результаты запроса могут быть
обработаны, используя mysqli_more_results
и mysqli_next_result
.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
query
Запрос, как строка.
Данных в запросе нужно должным образом оставить.
Возвращаемые значения
Возвраты FALSE
если первый оператор перестал работать. Чтобы получить
последующие ошибки от других операторов, необходимо вызвать mysqli_next_result
сначала.
Примеры
Пример 21.133. mysqli::multi_query
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}$query = "SELECT CURRENT_USER();";$query .= "SELECT Name FROM City ORDER BY ID LIMIT 20, 5";/* execute multi query */if ($mysqli->multi_query($query)) { do { /* store first result set */ if ($result = $mysqli->store_result()) { while ($row = $result->fetch_row()) { printf("%s\n", $row[0]); } $result->free(); } /* print divider */ if ($mysqli->more_results()) { printf("-----------------\n"); } } while ($mysqli->next_result());}/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}$query = "SELECT CURRENT_USER();";$query .= "SELECT Name FROM City ORDER BY ID LIMIT 20, 5";/* execute multi query */if (mysqli_multi_query($link, $query)) { do { /* store first result set */ if ($result = mysqli_store_result($link)) { while ($row = mysqli_fetch_row($result)) { printf("%s\n", $row[0]); } mysqli_free_result($result); } /* print divider */ if (mysqli_more_results($link)) { printf("-----------------\n"); } } while (mysqli_next_result($link));}/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут что-то подобное:
my_user@localhost-----------------AmersfoortMaastrichtDordrechtLeidenHaarlemmermeer
См. Также
mysqli_query
|
mysqli_use_result
|
mysqli_store_result
|
mysqli_next_result
|
mysqli_more_results
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::next_result
mysqli_next_result
Подготовьте следующее следствие multi_query
Описание
Объектно-ориентированный стиль
bool mysqli::next_result();
Процедурный стиль
bool mysqli_next_result(mysqli link);
Готовит следующий набор результатов от предыдущего звонка mysqli_multi_query
который может быть получен mysqli_store_result
или mysqli_use_result
.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Возвраты TRUE
на успехе или FALSE
при отказе.
Примеры
См. mysqli_multi_query
.
См. Также
mysqli_multi_query
|
mysqli_more_results
|
mysqli_store_result
|
mysqli_use_result
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::options
mysqli_options
Опции набора
Описание
Объектно-ориентированный стиль
bool mysqli::options(int option,
mixed value);
Процедурный стиль
bool mysqli_options(mysqli link,
int option,
mixed value);
Используемый, чтобы установить дополнительный соединяют опции и влияют на поведение для соединения.
Эта функция может быть вызвана многократно, чтобы установить несколько опций.
mysqli_options
должен быть вызван после mysqli_init
и прежде mysqli_real_connect
.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
option
Опция, которую Вы хотите установить. Это может быть одно из следующих значений:
Таблица 21.50. Допустимые опции
Имя | Описание |
---|---|
MYSQLI_OPT_CONNECT_TIMEOUT |
тайм-аут соединения в секундах (поддерживаемый на Windows с TCP/IP начиная с PHP 5.3.1) |
MYSQLI_OPT_LOCAL_INFILE |
позвольте/отключите использованию LOAD LOCAL INFILE
|
MYSQLI_INIT_COMMAND |
команда, чтобы выполниться после, соединяясь с сервером MySQL |
MYSQLI_READ_DEFAULT_FILE |
Считайте опции из именованного файла опции вместо my.cnf |
MYSQLI_READ_DEFAULT_GROUP |
Считайте опции из именованной группы от my.cnf или
файл, определенный с MYSQL_READ_DEFAULT_FILE .
|
MYSQLI_SERVER_PUBLIC_KEY |
Файл открытого ключа RSA, используемый с SHA 256 базируемой аутентификации. |
value
Значение для опции.
Возвращаемые значения
Возвраты TRUE
на успехе или FALSE
при отказе.
Журнал изменений
Версия | Описание |
---|---|
5.5.0 | MYSQLI_SERVER_PUBLIC_KEY опция была добавлена. |
Примеры
См. mysqli_real_connect
.
Примечания
MySQLnd всегда принимает набор символов значения по умолчанию сервера. Этот набор символов отправляется во время рукопожатия/аутентификации соединения, которое будет использовать mysqlnd.
Либмискльклиан использует набор набора символов значения по умолчанию my.cnf
или явным звонком mysqli_options
до вызова mysqli_real_connect
,
но после mysqli_init
.
См. Также
mysqli_init |
mysqli_real_connect
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::ping
mysqli_ping
Проверяет с помощью ping-запросов соединение сервера, или пытается повторно соединиться, если соединение потеряло работоспособность
Описание
Объектно-ориентированный стиль
bool mysqli::ping();
Процедурный стиль
bool mysqli_ping(mysqli link);
Проверки, работает ли соединение с сервером. Если это потеряло работоспособность, и глобальной опции mysqli.reconnect включают предпринимается, автоматическое пересоединение.
Эта функция может использоваться клиентами, которые остаются неактивными долгое время, чтобы проверить, закрыл ли сервер соединение и повторно соединяется в случае необходимости.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Возвраты TRUE
на успехе или FALSE
при отказе.
Примеры
Пример 21.134. mysqli::ping
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* check if server is alive */if ($mysqli->ping()) { printf ("Our connection is ok!\n");} else { printf ("Error: %s\n", $mysqli->error);}/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* check if server is alive */if (mysqli_ping($link)) { printf ("Our connection is ok!\n");} else { printf ("Error: %s\n", mysqli_error($link));}/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Our connection is ok!
Copyright 1997-2012 PHP Documentation Group.
mysqli::poll
mysqli_poll
Соединения опроса
Описание
Объектно-ориентированный стиль
public static int mysqli::poll(array read,
array error,
array reject,
int sec,
int usec);
Процедурный стиль
int mysqli_poll(array read,
array error,
array reject,
int sec,
int usec);
Эта функция iscurrently не задокументированный; только его список параметров доступен.
Соединения опроса. Доступный только с mysqlnd. Метод
может использоваться в качестве
Параметры
read
error
reject
sec
Число секунд, чтобы ожидать, должно быть неотрицательным.
usec
Число микросекунд, чтобы ожидать, должно быть неотрицательным.
Возвращаемые значения
Число возвратов готовых соединений на успех, FALSE
иначе.
Примеры
Пример 21.135. A mysqli_poll
пример
<?php$link1 = mysqli_connect();$link1->query("SELECT 'test'", MYSQLI_ASYNC);$all_links = array($link1);$processed = 0;do { $links = $errors = $reject = array(); foreach ($all_links as $link) { $links[] = $errors[] = $reject[] = $link; } if (!mysqli_poll($links, $errors, $reject, 1)) { continue; } foreach ($links as $link) { if ($result = $link->reap_async_query()) { print_r($result->fetch_row()); if (is_object($result)) mysqli_free_result($result); } else die(sprintf("MySQLi Error: %s", mysqli_error($link))); $processed++; }} while ($processed < count($all_links));?>
Вышеупомянутый пример выведет:
Array( [0] => test)
См. Также
mysqli_query
|
mysqli_reap_async_query
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::prepare
mysqli_prepare
Подготовьте SQL-оператор к выполнению
Описание
Объектно-ориентированный стиль
mysqli_stmt mysqli::prepare(string query);
Процедурный стиль
mysqli_stmt mysqli_prepare(mysqli link,
string query);
Готовит SQL-запрос, и возвращает дескриптор оператора, который будет использоваться для дальнейших операций на операторе. Запрос должен состоять из единственного SQL-оператора.
Маркеры параметра должны быть связаны с использованием переменных приложения mysqli_stmt_bind_param
и/или mysqli_stmt_bind_result
прежде, чем выполнить оператор или выбрать строки.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
query
Запрос, как строка.
Недопустимо добавить завершающуюся точку с запятой или \g
к оператору.
Этот параметр может включать один или более маркеров параметра в SQL-оператор, встраивая
вопросительный знак (?
) символы в соответствующих позициях.
Маркеры являются законными только в определенных местах в SQL-операторах. Например,
им позволяют войти VALUES()
список INSERT
оператор (чтобы определить значения столбцов для
строки), или в сравнении со столбцом в a WHERE
пункт, чтобы
определить сравнительное значение.
Однако, им не позволяют для идентификаторов (таких как имена таблиц или имена
столбцов) в списке выборки, который называет столбцы, которые будут возвращены a SELECT
оператор, или определить оба операнда бинарного
оператора такой как =
знак "равно". Последнее
ограничение необходимо, потому что было бы невозможно определить тип параметра. Не
позволяется сравнить маркер с NULL
? IS
NULL
также. Вообще, параметры являются законными только в Языке манипулирования
данными (DML) операторы, а не в Языке определения данных (DDL) операторы.
Возвращаемые значения
mysqli_prepare
возвращает объект оператора или FALSE
если ошибка произошла.
Примеры
Пример 21.136. mysqli::prepare
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}$city = "Amersfoort";/* create a prepared statement */if ($stmt = $mysqli->prepare("SELECT District FROM City WHERE Name=?")) { /* bind parameters for markers */ $stmt->bind_param("s", $city); /* execute query */ $stmt->execute(); /* bind result variables */ $stmt->bind_result($district); /* fetch value */ $stmt->fetch(); printf("%s is in district %s\n", $city, $district); /* close statement */ $stmt->close();}/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}$city = "Amersfoort";/* create a prepared statement */if ($stmt = mysqli_prepare($link, "SELECT District FROM City WHERE Name=?")) { /* bind parameters for markers */ mysqli_stmt_bind_param($stmt, "s", $city); /* execute query */ mysqli_stmt_execute($stmt); /* bind result variables */ mysqli_stmt_bind_result($stmt, $district); /* fetch value */ mysqli_stmt_fetch($stmt); printf("%s is in district %s\n", $city, $district); /* close statement */ mysqli_stmt_close($stmt);}/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Amersfoort is in district Utrecht
См. Также
mysqli_stmt_execute
|
mysqli_stmt_fetch
|
mysqli_stmt_bind_param
|
mysqli_stmt_bind_result
|
mysqli_stmt_close
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::query
mysqli_query
Выполняет запрос на базе данных
Описание
Объектно-ориентированный стиль
mixed mysqli::query(string query,
int resultmode= =MYSQLI_STORE_RESULT);
Процедурный стиль
mixed mysqli_query(mysqli link,
string query,
int resultmode= =MYSQLI_STORE_RESULT);
Выполняет a query
против базы данных.
Для запросов не-DML (не ВСТАВЛЯЮТ, ОБНОВИТЕ или УДАЛИТЕ), эта функция подобна вызову mysqli_real_query
сопровождаемый также mysqli_use_result
или mysqli_store_result
.
В случае, где Вы передаете оператор к mysqli_query
это более длинно чем max_allowed_packet
из сервера возвращенные коды ошибки отличаются в зависимости от того, используете ли Вы MySQL Native
Driver (mysqlnd
) или MySQL Client Library (libmysqlclient
).
Поведение следующие:
mysqlnd
на Linux возвращает код ошибки 1153.
Средства сообщения об ошибке "получили пакет, больше чем max_allowed_packet
байты".
mysqlnd
на Windows возвращает код ошибки 2006.
Этот сервер "средств сообщения об
ошибке ушел".
libmysqlclient
на всех платформах возвращает
код ошибки 2006. Этот сервер "средств
сообщения об ошибке ушел".
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
query
Строка запроса.
Данных в запросе нужно должным образом оставить.
resultmode
Любой константа MYSQLI_USE_RESULT
или MYSQLI_STORE_RESULT
в зависимости от требуемого поведения. По умолчанию, MYSQLI_STORE_RESULT
используется.
Если Вы используете MYSQLI_USE_RESULT
все последующие вызовы
возвратят ошибку Commands out of sync
если Вы не вызываете mysqli_free_result
С MYSQLI_ASYNC
(доступный с mysqlnd), возможно выполнить запрос
асинхронно. mysqli_poll
тогда используется, чтобы получить следствия
таких запросов.
Возвращаемые значения
Возвраты FALSE
при отказе. Для успешного SELECT, SHOW,
DESCRIBE
или EXPLAIN
запросы mysqli_query
возвратит a mysqli_result
объект. Для других успешных запросов mysqli_query
возвратится TRUE
.
Журнал изменений
Версия | Описание |
---|---|
5.3.0 | Добавленный возможность асинхронных запросов. |
Примеры
Пример 21.137. mysqli::query
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if ($mysqli->connect_errno) { printf("Connect failed: %s\n", $mysqli->connect_error); exit();}/* Create table doesn't return a resultset */if ($mysqli->query("CREATE TEMPORARY TABLE myCity LIKE City") === TRUE) { printf("Table myCity successfully created.\n");}/* Select queries return a resultset */if ($result = $mysqli->query("SELECT Name FROM City LIMIT 10")) { printf("Select returned %d rows.\n", $result->num_rows); /* free result set */ $result->close();}/* If we have to retrieve large amount of data we use MYSQLI_USE_RESULT */if ($result = $mysqli->query("SELECT * FROM City", MYSQLI_USE_RESULT)) { /* Note, that we can't execute any functions which interact with the server until result set was closed. All calls will return an 'out of sync' error */ if (!$mysqli->query("SET @a:='this will not work'")) { printf("Error: %s\n", $mysqli->error); } $result->close();}$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* Create table doesn't return a resultset */if (mysqli_query($link, "CREATE TEMPORARY TABLE myCity LIKE City") === TRUE) { printf("Table myCity successfully created.\n");}/* Select queries return a resultset */if ($result = mysqli_query($link, "SELECT Name FROM City LIMIT 10")) { printf("Select returned %d rows.\n", mysqli_num_rows($result)); /* free result set */ mysqli_free_result($result);}/* If we have to retrieve large amount of data we use MYSQLI_USE_RESULT */if ($result = mysqli_query($link, "SELECT * FROM City", MYSQLI_USE_RESULT)) { /* Note, that we can't execute any functions which interact with the server until result set was closed. All calls will return an 'out of sync' error */ if (!mysqli_query($link, "SET @a:='this will not work'")) { printf("Error: %s\n", mysqli_error($link)); } mysqli_free_result($result);}mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Table myCity successfully created.Select returned 10 rows.Error: Commands out of sync; You can't run this command now
См. Также
mysqli_real_query
|
mysqli_multi_query
|
mysqli_free_result
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::real_connect
mysqli_real_connect
Открывает соединение с mysql сервером
Описание
Объектно-ориентированный стиль
bool mysqli::real_connect(string host,
string username,
string passwd,
string dbname,
int port,
string socket,
int flags);
Процедурный стиль
bool mysqli_real_connect(mysqli link,
string host,
string username,
string passwd,
string dbname,
int port,
string socket,
int flags);
Установите соединение с механизмом базы данных MySQL.
Эта функция отличается от mysqli_connect
:
mysqli_real_connect
нуждается в допустимом объекте, который должен
быть создан функцией mysqli_init
.
С mysqli_options
функция можно установить различные варианты для
соединения.
Есть a flags
параметр.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
host
Может быть или имя хоста или IP-адрес. Передача NULL
значение или
строка "localhost" к этому параметру, локальный узел принимается. Когда возможный, каналы
будут использоваться вместо протокола TCP/IP.
username
Имя пользователя MySQL.
passwd
Если обеспечено или NULL
, сервер MySQL попытается
аутентифицировать пользователя против тех пользовательских записей, у которых нет никакого пароля
только. Это позволяет одному имени пользователя использоваться с различными полномочиями (в
зависимости от если пароль как предусмотрено или не).
dbname
Если обеспечено определит базу данных значения по умолчанию, которая будет использоваться, выполняя запросы.
port
Определяет номер порта, чтобы попытаться соединиться с сервером MySQL.
socket
Определяет сокет или именованный канал, который должен использоваться.
Определение socket
параметр не будет явно
определять тип соединения, которое будет использоваться, соединяясь с сервером MySQL. То,
как соединение делается к базе данных MySQL, определяется host
параметр.
flags
С параметром flags
можно установить различные опции
соединения:
Таблица 21.51. Поддерживаемые флаги
Имя | Описание |
---|---|
MYSQLI_CLIENT_COMPRESS |
Используйте протокол сжатия |
MYSQLI_CLIENT_FOUND_ROWS |
возвратите число соответствующих строк, не число строк, на которые влияют, |
MYSQLI_CLIENT_IGNORE_SPACE |
Позвольте пробелы после имен функций. Делает все зарезервированные слова имен функций. |
MYSQLI_CLIENT_INTERACTIVE |
Позволить interactive_timeout секунды (вместо wait_timeout секунды) ofinactivity прежде, чем
закрыть соединение
|
MYSQLI_CLIENT_SSL |
Используйте SSL (шифрование) |
Для соображений безопасности MULTI_STATEMENT
флаг не
поддерживается в PHP. Если Вы хотите выполнить многократное использование запросов mysqli_multi_query
функция.
Возвращаемые значения
Возвраты TRUE
на успехе или FALSE
при отказе.
Примеры
Пример 21.138. mysqli::real_connect
пример
Объектно-ориентированный стиль
<?php$mysqli = mysqli_init();if (!$mysqli) { die('mysqli_init failed');}if (!$mysqli->options(MYSQLI_INIT_COMMAND, 'SET AUTOCOMMIT = 0')) { die('Setting MYSQLI_INIT_COMMAND failed');}if (!$mysqli->options(MYSQLI_OPT_CONNECT_TIMEOUT, 5)) { die('Setting MYSQLI_OPT_CONNECT_TIMEOUT failed');}if (!$mysqli->real_connect('localhost', 'my_user', 'my_password', 'my_db')) { die('Connect Error (' . mysqli_connect_errno() . ') ' . mysqli_connect_error());}echo 'Success... ' . $mysqli->host_info . "\n";$mysqli->close();?>
Объектно-ориентированный стиль, расширяясь mysqli class
<?phpclass foo_mysqli extends mysqli { public function __construct($host, $user, $pass, $db) { parent::init(); if (!parent::options(MYSQLI_INIT_COMMAND, 'SET AUTOCOMMIT = 0')) { die('Setting MYSQLI_INIT_COMMAND failed'); } if (!parent::options(MYSQLI_OPT_CONNECT_TIMEOUT, 5)) { die('Setting MYSQLI_OPT_CONNECT_TIMEOUT failed'); } if (!parent::real_connect($host, $user, $pass, $db)) { die('Connect Error (' . mysqli_connect_errno() . ') ' . mysqli_connect_error()); } }}$db = new foo_mysqli('localhost', 'my_user', 'my_password', 'my_db');echo 'Success... ' . $db->host_info . "\n";$db->close();?>
Процедурный стиль
<?php$link = mysqli_init();if (!$link) { die('mysqli_init failed');}if (!mysqli_options($link, MYSQLI_INIT_COMMAND, 'SET AUTOCOMMIT = 0')) { die('Setting MYSQLI_INIT_COMMAND failed');}if (!mysqli_options($link, MYSQLI_OPT_CONNECT_TIMEOUT, 5)) { die('Setting MYSQLI_OPT_CONNECT_TIMEOUT failed');}if (!mysqli_real_connect($link, 'localhost', 'my_user', 'my_password', 'my_db')) { die('Connect Error (' . mysqli_connect_errno() . ') ' . mysqli_connect_error());}echo 'Success... ' . mysqli_get_host_info($link) . "\n";mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Success... MySQL host info: localhost via TCP/IP
Примечания
MySQLnd всегда принимает набор символов значения по умолчанию сервера. Этот набор символов отправляется во время рукопожатия/аутентификации соединения, которое будет использовать mysqlnd.
Либмискльклиан использует набор набора символов значения по умолчанию my.cnf
или явным звонком mysqli_options
до вызова mysqli_real_connect
,
но после mysqli_init
.
См. Также
mysqli_connect |
mysqli_init |
mysqli_options
|
mysqli_ssl_set
|
mysqli_close
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::real_escape_string
mysqli_real_escape_string
Escape специальные символы в строке для использования в SQL-операторе, принимая во внимание текущий набор символов соединения
Описание
Объектно-ориентированный стиль
string mysqli::escape_string(string escapestr);
string mysqli::real_escape_string(string escapestr);
Процедурный стиль
string mysqli_real_escape_string(mysqli link,
string escapestr);
Эта функция используется, чтобы создать юридическую строку SQL, которую можно использовать в SQL-операторе. Данная строка кодируется к оставленной строке SQL, принимая во внимание текущий набор символов соединения.
Набор символов должен быть установлен или на уровне сервера, или с API-функцией mysqli_set_charset
для этого, чтобы влиять mysqli_real_escape_string
. См. раздел понятий по наборам
символов для получения дополнительной информации.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
escapestr
Строка, которой оставят.
Закодированные символы NUL (ASCII 0), \n, \r, \, ', ", and
Control-Z
.
Возвращаемые значения
Возвращает оставленную строку.
Примеры
Пример 21.139. mysqli::real_escape_string
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}$mysqli->query("CREATE TEMPORARY TABLE myCity LIKE City");$city = "'s Hertogenbosch";/* this query will fail, cause we didn't escape $city */if (!$mysqli->query("INSERT into myCity (Name) VALUES ('$city')")) { printf("Error: %s\n", $mysqli->sqlstate);}$city = $mysqli->real_escape_string($city);/* this query with escaped $city will work */if ($mysqli->query("INSERT into myCity (Name) VALUES ('$city')")) { printf("%d Row inserted.\n", $mysqli->affected_rows);}$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}mysqli_query($link, "CREATE TEMPORARY TABLE myCity LIKE City");$city = "'s Hertogenbosch";/* this query will fail, cause we didn't escape $city */if (!mysqli_query($link, "INSERT into myCity (Name) VALUES ('$city')")) { printf("Error: %s\n", mysqli_sqlstate($link));}$city = mysqli_real_escape_string($link, $city);/* this query with escaped $city will work */if (mysqli_query($link, "INSERT into myCity (Name) VALUES ('$city')")) { printf("%d Row inserted.\n", mysqli_affected_rows($link));}mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Error: 420001 Row inserted.
Примечания
Для приученных к использованию mysql_real_escape_string
, отметьте что параметры mysqli_real_escape_string
отличайтесь от какой mysql_real_escape_string
ожидает. link
идентификатор на первом месте в mysqli_real_escape_string
, тогда как строка, которой оставят, на первом
месте в mysql_real_escape_string
.
См. Также
mysqli_set_charset
|
mysqli_character_set_name
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::real_query
mysqli_real_query
Выполните SQL-запрос
Описание
Объектно-ориентированный стиль
bool mysqli::real_query(string query);
Процедурный стиль
bool mysqli_real_query(mysqli link,
string query);
Выполняет единственный запрос против базы данных, результат которой может тогда быть получен или сохранил
использование mysqli_store_result
или mysqli_use_result
функции.
Чтобы определить, должен ли данный запрос возвратить набор результатов или нет, см. mysqli_field_count
.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
query
Запрос, как строка.
Данных в запросе нужно должным образом оставить.
Возвращаемые значения
Возвраты TRUE
на успехе или FALSE
при отказе.
См. Также
mysqli_query
|
mysqli_store_result
|
mysqli_use_result
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::reap_async_query
mysqli_reap_async_query
Получите следствие асинхронного запроса
Описание
Объектно-ориентированный стиль
public mysqli_result mysqli::reap_async_query();
Процедурный стиль
mysqli_result mysqli_reap_async_query(mysql link);
Эта функция iscurrently не задокументированный; только его список параметров доступен.
Получите следствие асинхронного запроса. Доступный только с mysqlnd.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Возвраты mysqli_result
в успехе, FALSE
иначе.
См. Также
mysqli_poll |
Copyright 1997-2012 PHP Documentation Group.
mysqli::refresh
mysqli_refresh
Обновления
Описание
Объектно-ориентированный стиль
public bool mysqli::refresh(int options);
Процедурный стиль
int mysqli_refresh(resource link,
int options);
Таблицы сбросов или кэши, или сбросы информация о сервере репликации.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
options
Опции, чтобы обновить, используя константы MYSQLI_REFRESH_* как задокументировано в пределах документации констант MySQLi.
См. также официальную документацию
Возвращаемые значения
TRUE
если обновление имело успех, иначе FALSE
См. Также
mysqli_poll |
Copyright 1997-2012 PHP Documentation Group.
mysqli::release_savepoint
mysqli_release_savepoint
Откатывает транзакцию к именованной точке сохранения
Описание
Объектно-ориентированный стиль (метод):
public bool mysqli::release_savepoint(string name);
Процедурный стиль:
bool mysqli_release_savepoint(mysqli link,
string name);
Эта функция iscurrently не задокументированный; только его список параметров доступен.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
name
Возвращаемые значения
Возвраты TRUE
на успехе или FALSE
при отказе.
См. Также
mysqli_rollback |
Copyright 1997-2012 PHP Documentation Group.
mysqli::rollback
mysqli_rollback
Транзакция обратного тока рулонов
Описание
Объектно-ориентированный стиль
bool mysqli::rollback(int flags,
string name);
Процедурный стиль
bool mysqli_rollback(mysqli link,
int flags,
string name);
Откатывает текущую транзакцию для базы данных.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
flags
Битовая маска MYSQLI_TRANS_COR_*
константы.
name
Если обеспечено тогда ROLLBACK/*name*/
выполняется.
Возвращаемые значения
Возвраты TRUE
на успехе или FALSE
при отказе.
Журнал изменений
Версия | Описание |
---|---|
5.5.0 | Добавленный flags и name параметры.
|
Примеры
Пример 21.140. mysqli::rollback
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* disable autocommit */$mysqli->autocommit(FALSE);$mysqli->query("CREATE TABLE myCity LIKE City");$mysqli->query("ALTER TABLE myCity Type=InnoDB");$mysqli->query("INSERT INTO myCity SELECT * FROM City LIMIT 50");/* commit insert */$mysqli->commit();/* delete all rows */$mysqli->query("DELETE FROM myCity");if ($result = $mysqli->query("SELECT COUNT(*) FROM myCity")) { $row = $result->fetch_row(); printf("%d rows in table myCity.\n", $row[0]); /* Free result */ $result->close();}/* Rollback */$mysqli->rollback();if ($result = $mysqli->query("SELECT COUNT(*) FROM myCity")) { $row = $result->fetch_row(); printf("%d rows in table myCity (after rollback).\n", $row[0]); /* Free result */ $result->close();}/* Drop table myCity */$mysqli->query("DROP TABLE myCity");$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* disable autocommit */mysqli_autocommit($link, FALSE);mysqli_query($link, "CREATE TABLE myCity LIKE City");mysqli_query($link, "ALTER TABLE myCity Type=InnoDB");mysqli_query($link, "INSERT INTO myCity SELECT * FROM City LIMIT 50");/* commit insert */mysqli_commit($link);/* delete all rows */mysqli_query($link, "DELETE FROM myCity");if ($result = mysqli_query($link, "SELECT COUNT(*) FROM myCity")) { $row = mysqli_fetch_row($result); printf("%d rows in table myCity.\n", $row[0]); /* Free result */ mysqli_free_result($result);}/* Rollback */mysqli_rollback($link);if ($result = mysqli_query($link, "SELECT COUNT(*) FROM myCity")) { $row = mysqli_fetch_row($result); printf("%d rows in table myCity (after rollback).\n", $row[0]); /* Free result */ mysqli_free_result($result);}/* Drop table myCity */mysqli_query($link, "DROP TABLE myCity");mysqli_close($link);?>
Вышеупомянутые примеры выведут:
0 rows in table myCity.50 rows in table myCity (after rollback).
См. Также
mysqli_begin_transaction
|
mysqli_commit
|
mysqli_autocommit
|
mysqli_release_savepoint
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::rpl_query_type
mysqli_rpl_query_type
Возвраты RPL запрашивают тип
Описание
Объектно-ориентированный стиль
int mysqli::rpl_query_type(string query);
Процедурный стиль
int mysqli_rpl_query_type(mysqli link,
string query);
Возвраты MYSQLI_RPL_MASTER
, MYSQLI_RPL_SLAVE
или MYSQLI_RPL_ADMIN
в зависимости от типа запроса. INSERT
,
UPDATE
и подобный основные запросы,
SELECT
ведомое устройство, и FLUSH
, REPAIR
и подобный администратор.
Эта функция iscurrently не задокументированный; только его список параметров доступен.
У этой функции есть beenDEPRECATED и УДАЛЕННЫЙ с PHP 5.3.0.
Copyright 1997-2012 PHP Documentation Group.
mysqli::savepoint
mysqli_savepoint
Установите именованную точку сохранения транзакции
Описание
Объектно-ориентированный стиль (метод):
public bool mysqli::savepoint(string name);
Процедурный стиль:
bool mysqli_savepoint(mysqli link,
string name);
Эта функция iscurrently не задокументированный; только его список параметров доступен.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
name
Возвращаемые значения
Возвраты TRUE
на успехе или FALSE
при отказе.
См. Также
mysqli_commit
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::select_db
mysqli_select_db
Выбирает базу данных значения по умолчанию для запросов базы данных
Описание
Объектно-ориентированный стиль
bool mysqli::select_db(string dbname);
Процедурный стиль
bool mysqli_select_db(mysqli link,
string dbname);
Выбирает базу данных значения по умолчанию, которая будет использоваться, выполняя запросы против соединения с базой данных.
Эта функция должна только использоваться, чтобы изменить базу данных значения по умолчанию для
соединения. Можно выбрать базу данных значения по умолчанию с 4-ым параметром в mysqli_connect
.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
dbname
Имя базы данных.
Возвращаемые значения
Возвраты TRUE
на успехе или FALSE
при отказе.
Примеры
Пример 21.141. mysqli::select_db
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "test");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* return name of current default database */if ($result = $mysqli->query("SELECT DATABASE()")) { $row = $result->fetch_row(); printf("Default database is %s.\n", $row[0]); $result->close();}/* change db to world db */$mysqli->select_db("world");/* return name of current default database */if ($result = $mysqli->query("SELECT DATABASE()")) { $row = $result->fetch_row(); printf("Default database is %s.\n", $row[0]); $result->close();}$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "test");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* return name of current default database */if ($result = mysqli_query($link, "SELECT DATABASE()")) { $row = mysqli_fetch_row($result); printf("Default database is %s.\n", $row[0]); mysqli_free_result($result);}/* change db to world db */mysqli_select_db($link, "world");/* return name of current default database */if ($result = mysqli_query($link, "SELECT DATABASE()")) { $row = mysqli_fetch_row($result); printf("Default database is %s.\n", $row[0]); mysqli_free_result($result);}mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Default database is test.Default database is world.
См. Также
mysqli_connect |
mysqli_real_connect
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::send_query
mysqli_send_query
Отправьте запрос и возврат
Описание
Объектно-ориентированный стиль
bool mysqli::send_query(string query);
Процедурный стиль
bool mysqli_send_query(mysqli link,
string query);
Эта функция iscurrently не задокументированный; только его список параметров доступен.
У этой функции есть beenDEPRECATED и УДАЛЕННЫЙ с PHP 5.3.0.
Copyright 1997-2012 PHP Documentation Group.
mysqli::set_charset
mysqli_set_charset
Устанавливает клиентский набор символов значения по умолчанию
Описание
Объектно-ориентированный стиль
bool mysqli::set_charset(string charset);
Процедурный стиль
bool mysqli_set_charset(mysqli link,
string charset);
Устанавливает набор символов значения по умолчанию, который будет использоваться, отправляя данные с и на сервер базы данных.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
charset
Набор символов, который будет установлен как значение по умолчанию.
Возвращаемые значения
Возвраты TRUE
на успехе или FALSE
при отказе.
Примечания
Чтобы использовать эту функцию на платформе Windows, Вы нуждаетесь в клиентской версии 4.1.11 библиотеки MySQL или выше (для MySQL 5.0, в котором Вы нуждаетесь 5.0.6 или выше).
Это - привилегированный способ изменить набор символов. Используя mysqli_query
установить это (такой как SET NAMES
utf8
) не рекомендуется. См. раздел понятий набора символов
MySQL для получения дополнительной информации.
Примеры
Пример 21.142. mysqli::set_charset
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "test");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* change character set to utf8 */if (!$mysqli->set_charset("utf8")) { printf("Error loading character set utf8: %s\n", $mysqli->error);} else { printf("Current character set: %s\n", $mysqli->character_set_name());}$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect('localhost', 'my_user', 'my_password', 'test');/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* change character set to utf8 */if (!mysqli_set_charset($link, "utf8")) { printf("Error loading character set utf8: %s\n", mysqli_error($link));} else { printf("Current character set: %s\n", mysqli_character_set_name($link));}mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Current character set: utf8
См. Также
mysqli_character_set_name
|
mysqli_real_escape_string |
Copyright 1997-2012 PHP Documentation Group.
mysqli::set_local_infile_default
mysqli_set_local_infile_default
Сбрасывает определяемый пользователем обработчик для загрузки локальная infile команда
Описание
void mysqli_set_local_infile_default(mysqli link);
Деактивировал a LOAD DATA INFILE LOCAL
обработчик, ранее установленный с mysqli_set_local_infile_handler
.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Никакое значение не возвращается.
Примеры
См. mysqli_set_local_infile_handler
примеры
См. Также
mysqli_set_local_infile_handler |
Copyright 1997-2012 PHP Documentation Group.
mysqli::set_local_infile_handler
mysqli_set_local_infile_handler
Установите функцию обратного вызова для ДАННЫХ ЗАГРУЗКИ ЛОКАЛЬНАЯ команда INFILE
Описание
Объектно-ориентированный стиль
bool mysqli::set_local_infile_handler(mysqli link,
callable read_func);
Процедурный стиль
bool mysqli_set_local_infile_handler(mysqli link,
callable read_func);
Установите функцию обратного вызова для ДАННЫХ ЗАГРУЗКИ ЛОКАЛЬНАЯ команда INFILE
Задача обратных вызовов состоит в том, чтобы считать ввод из файла, определенного в LOAD
DATA LOCAL INFILE
и переформатировать это в формат, понятый под LOAD DATA
INFILE
.
Возвращенные данные должны соответствовать формат, определенный в LOAD DATA
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
read_func
Функция обратного вызова или объектный метод, берущий следующие параметры:
stream
Поток PHP связался с командами INFILE SQL
&buffer
Строковый буфер, чтобы сохранить переписанный ввод в
buflen
Максимальное количество символов, которые будут сохранены в буфере
&errormsg
Если ошибка происходит, можно сохранить сообщение об ошибке в здесь
Функция обратного вызова должна возвратить число символов, сохраненных в buffer
или отрицательная величина, если ошибка произошла.
Возвращаемые значения
Возвраты TRUE
на успехе или FALSE
при отказе.
Примеры
Пример 21.143. mysqli::set_local_infile_handler
пример
Объектно-ориентированный стиль
<?php $db = mysqli_init(); $db->real_connect("localhost","root","","test"); function callme($stream, &$buffer, $buflen, &$errmsg) { $buffer = fgets($stream); echo $buffer; // convert to upper case and replace "," delimiter with [TAB] $buffer = strtoupper(str_replace(",", "\t", $buffer)); return strlen($buffer); } echo "Input:\n"; $db->set_local_infile_handler("callme"); $db->query("LOAD DATA LOCAL INFILE 'input.txt' INTO TABLE t1"); $db->set_local_infile_default(); $res = $db->query("SELECT * FROM t1"); echo "\nResult:\n"; while ($row = $res->fetch_assoc()) { echo join(",", $row)."\n"; }?>
Процедурный стиль
<?php $db = mysqli_init(); mysqli_real_connect($db, "localhost","root","","test"); function callme($stream, &$buffer, $buflen, &$errmsg) { $buffer = fgets($stream); echo $buffer; // convert to upper case and replace "," delimiter with [TAB] $buffer = strtoupper(str_replace(",", "\t", $buffer)); return strlen($buffer); } echo "Input:\n"; mysqli_set_local_infile_handler($db, "callme"); mysqli_query($db, "LOAD DATA LOCAL INFILE 'input.txt' INTO TABLE t1"); mysqli_set_local_infile_default($db); $res = mysqli_query($db, "SELECT * FROM t1"); echo "\nResult:\n"; while ($row = mysqli_fetch_assoc($res)) { echo join(",", $row)."\n"; }?>
Вышеупомянутые примеры выведут:
Input:23,foo42,barOutput:23,FOO42,BAR
См. Также
mysqli_set_local_infile_default |
Copyright 1997-2012 PHP Documentation Group.
mysqli::$sqlstate
mysqli_sqlstate
Возвращает ошибку SQLSTATE из предыдущей работы MySQL
Описание
Объектно-ориентированный стиль
string mysqli->sqlstate ;
Процедурный стиль
string mysqli_sqlstate(mysqli link);
Возвращает строку, содержащую код ошибки SQLSTATE для последней ошибки. Код ошибки состоит из пяти символов.
'00000'
средства никакая ошибка. Значения определяются ANSI SQL и ODBC. Для
списка возможных значений см.
Отметьте, что не все ошибки MySQL все же отображаются на SQLSTATE's. Значение HY000
(общая ошибка), используется для неотображенных ошибок.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Возвращает строку, содержащую код ошибки SQLSTATE для последней ошибки. Код ошибки состоит из пяти символов.
'00000'
средства никакая ошибка.
Примеры
Пример 21.144. $mysqli->sqlstate
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* Table City already exists, so we should get an error */if (!$mysqli->query("CREATE TABLE City (ID INT, Name VARCHAR(30))")) { printf("Error - SQLSTATE %s.\n", $mysqli->sqlstate);}$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* Table City already exists, so we should get an error */if (!mysqli_query($link, "CREATE TABLE City (ID INT, Name VARCHAR(30))")) { printf("Error - SQLSTATE %s.\n", mysqli_sqlstate($link));}mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Error - SQLSTATE 42S01.
См. Также
mysqli_errno
|
mysqli_error
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::ssl_set
mysqli_ssl_set
Используемый для того, чтобы установить безопасные соединения, используя SSL
Описание
Объектно-ориентированный стиль
bool mysqli::ssl_set(string key,
string cert,
string ca,
string capath,
string cipher);
Процедурный стиль
bool mysqli_ssl_set(mysqli link,
string key,
string cert,
string ca,
string capath,
string cipher);
Используемый для того, чтобы установить безопасные соединения, используя SSL. Это нужно вызвать прежде mysqli_real_connect
.
Эта функция ничего не делает, если поддержка OpenSSL не включается.
Отметьте, что MySQL Native Driver не поддерживает SSL прежде, чем PHP 5.3.3, так вызывая эту функцию при использовании MySQL Native Driver приведет к ошибке. MySQL Native Driver включается по умолчанию на Microsoft Windows от версии 5.3 PHP вперед.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
key
Путь к файлу ключей.
cert
Путь к файлу сертификата.
ca
Путь к файлу центра сертификации.
capath
Путь к каталогу, который содержит доверяемые сертификаты CA SSL в формате PEM.
cipher
Список допустимых шифров, чтобы использовать для шифрования SSL.
Любые неиспользованные параметры SSL могут быть даны как NULL
Возвращаемые значения
Эта функция всегда возвращается TRUE
значение. Если установка SSL является
неправильной mysqli_real_connect
возвратит ошибку, когда Вы пытаетесь соединиться.
См. Также
mysqli_options
|
mysqli_real_connect
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::stat
mysqli_stat
Получает состояние существующей системы
Описание
Объектно-ориентированный стиль
string mysqli::stat();
Процедурный стиль
string mysqli_stat(mysqli link);
mysqli_stat
возвращает
строку, содержащую информацию, подобную обеспеченному 'mysqladmin состояние' команда. Это включает время
работы в секундах и числе выполнения потоков, вопросов, перезагрузок, и открытых таблиц.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Строка, описывающая состояние сервера. FALSE
если ошибка произошла.
Примеры
Пример 21.145. mysqli::stat
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}printf ("System status: %s\n", $mysqli->stat());$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}printf("System status: %s\n", mysqli_stat($link));mysqli_close($link);?>
Вышеупомянутые примеры выведут:
System status: Uptime: 272 Threads: 1 Questions: 5340 Slow queries: 0Opens: 13 Flush tables: 1 Open tables: 0 Queries per second avg: 19.632Memory in use: 8496K Max memory used: 8560K
См. Также
mysqli_get_server_info
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::stmt_init
mysqli_stmt_init
Инициализирует оператор и возвращает объект для использования с mysqli_stmt_prepare
Описание
Объектно-ориентированный стиль
mysqli_stmt mysqli::stmt_init();
Процедурный стиль
mysqli_stmt mysqli_stmt_init(mysqli link);
Выделяет и инициализирует объект оператора, подходящий для mysqli_stmt_prepare
.
Любые последующие звонки в любую функцию mysqli_stmt не перестанут работать до mysqli_stmt_prepare
был вызван.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Возвращает объект.
См. Также
mysqli_stmt_prepare
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::store_result
mysqli_store_result
Передает набор результатов от последнего запроса
Описание
Объектно-ориентированный стиль
mysqli_result mysqli::store_result();
Процедурный стиль
mysqli_result mysqli_store_result(mysqli link);
Передает набор результатов от последнего запроса на соединении с базой данных, представленном link
параметр, который будет использоваться с mysqli_data_seek
функция.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Возвращает буферизованный объект результата или FALSE
если ошибка произошла.
mysqli_store_result
возвраты FALSE
в случае, если запрос не возвращал набор результатов (если
запрос был, например оператор INSERT). Эта функция также возвращается FALSE
если чтение набора результатов перестало работать. Можно
проверить, есть ли у Вас ошибка, проверяя если mysqli_error
не возвращает пустую строку, если mysqli_errno
возвращает не нулевое значение, или если mysqli_field_count
возвращает не нулевое значение. Также возможная причина этого функционального возврата FALSE
после успешного вызова к mysqli_query
может быть слишком большой набор результатов (память
для него не может быть выделена). Если mysqli_field_count
возвращает ненулевое значение, оператор должен
был произвести непустой набор результатов.
Примечания
Хотя это всегда - хорошая практика, чтобы освободить память, используемую результатом запроса,
используя mysqli_free_result
функция, передавая большие наборы результатов, используя mysqli_store_result
это становится особенно важным.
Примеры
См. mysqli_multi_query
.
См. Также
mysqli_real_query
|
mysqli_use_result
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::$thread_id
mysqli_thread_id
Возвращает ID потока для текущего соединения
Описание
Объектно-ориентированный стиль
int mysqli->thread_id ;
Процедурный стиль
int mysqli_thread_id(mysqli link);
mysqli_thread_id
функционируйте возвращает ID потока для текущего
соединения, которое может тогда быть уничтожено, используя mysqli_kill
функция. Если соединение теряется, и Вы повторно
соединяетесь с mysqli_ping
, ID потока будет другим. Поэтому следует получить ID потока
только, когда Вы нуждаетесь в нем.
ID потока присваивается на основе соединения соединением. Следовательно, если соединение будет повреждено и затем восстановит ID нового потока, то будет присвоен.
Чтобы уничтожить рабочий запрос, можно использовать команду SQL KILL
QUERY processid
.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Возвращает ID Потока для текущего соединения.
Примеры
Пример 21.146. $mysqli->thread_id
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* determine our thread id */$thread_id = $mysqli->thread_id;/* Kill connection */$mysqli->kill($thread_id);/* This should produce an error */if (!$mysqli->query("CREATE TABLE myCity LIKE City")) { printf("Error: %s\n", $mysqli->error); exit;}/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}/* determine our thread id */$thread_id = mysqli_thread_id($link);/* Kill connection */mysqli_kill($link, $thread_id);/* This should produce an error */if (!mysqli_query($link, "CREATE TABLE myCity LIKE City")) { printf("Error: %s\n", mysqli_error($link)); exit;}/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Error: MySQL server has gone away
См. Также
mysqli_kill |
Copyright 1997-2012 PHP Documentation Group.
mysqli::thread_safe
mysqli_thread_safe
Возвраты, дается ли потокобезопасность или нет
Описание
Процедурный стиль
bool mysqli_thread_safe();
Говорит, компилируется ли клиентская библиотека как ориентированная на многопотоковое исполнение.
Возвращаемые значения
TRUE
если клиентская библиотека ориентирована на многопотоковое исполнение,
иначе FALSE
.
Copyright 1997-2012 PHP Documentation Group.
mysqli::use_result
mysqli_use_result
Инициируйте извлечение набора результатов
Описание
Объектно-ориентированный стиль
mysqli_result mysqli::use_result();
Процедурный стиль
mysqli_result mysqli_use_result(mysqli link);
Используемый, чтобы инициировать извлечение набора результатов от последнего запроса, выполняемого,
используя mysqli_real_query
функция на соединении с базой данных.
Или это или mysqli_store_result
функция должна быть вызвана прежде, чем результаты запроса смогут быть получены, и один, или другой должен
быть вызван, чтобы предотвратить следующий запрос на том соединении с базой данных от сбоя.
mysqli_use_result
функция не передает весь набор результатов от базы данных и следовательно не может использоваться
функции такой как mysqli_data_seek
перемещаться в определенную строку в пределах
набора. Чтобы использовать эту функциональность, набор результатов должен быть сохранен, используя mysqli_store_result
.
Нельзя использовать mysqli_use_result
если большая обработка на стороне клиента будет
выполняться, то так как это будет связывать сервер и препятствовать тому, чтобы другие потоки обновили
любые таблицы, от которых выбираются данные.
Возвращаемые значения
Возвращает небуферизованный объект результата или FALSE
если ошибка произошла.
Примеры
Пример 21.147. mysqli::use_result
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}$query = "SELECT CURRENT_USER();";$query .= "SELECT Name FROM City ORDER BY ID LIMIT 20, 5";/* execute multi query */if ($mysqli->multi_query($query)) { do { /* store first result set */ if ($result = $mysqli->use_result()) { while ($row = $result->fetch_row()) { printf("%s\n", $row[0]); } $result->close(); } /* print divider */ if ($mysqli->more_results()) { printf("-----------------\n"); } } while ($mysqli->next_result());}/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}$query = "SELECT CURRENT_USER();";$query .= "SELECT Name FROM City ORDER BY ID LIMIT 20, 5";/* execute multi query */if (mysqli_multi_query($link, $query)) { do { /* store first result set */ if ($result = mysqli_use_result($link)) { while ($row = mysqli_fetch_row($result)) { printf("%s\n", $row[0]); } mysqli_free_result($result); } /* print divider */ if (mysqli_more_results($link)) { printf("-----------------\n"); } } while (mysqli_next_result($link));}/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
my_user@localhost-----------------AmersfoortMaastrichtDordrechtLeidenHaarlemmermeer
См. Также
mysqli_real_query
|
mysqli_store_result
|
Copyright 1997-2012 PHP Documentation Group.
mysqli::$warning_count
mysqli_warning_count
Возвращает число предупреждений от последнего запроса для данной ссылки
Описание
Объектно-ориентированный стиль
int mysqli->warning_count ;
Процедурный стиль
int mysqli_warning_count(mysqli link);
Возвращает число предупреждений от последнего запроса в соединении.
Для того, чтобы получить предупреждающие сообщения можно использовать команду SQL SHOW WARNINGS [limit row_count]
.
Параметры
link
Процедурный стиль только: идентификатор ссылки, возвращенный mysqli_connect
или mysqli_init
Возвращаемые значения
Число предупреждений или нуля, если нет никаких предупреждений.
Примеры
Пример 21.148. $mysqli->warning_count
пример
Объектно-ориентированный стиль
<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}$mysqli->query("CREATE TABLE myCity LIKE City");/* a remarkable city in Wales */$query = "INSERT INTO myCity (CountryCode, Name) VALUES('GBR', 'Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch')";$mysqli->query($query);if ($mysqli->warning_count) { if ($result = $mysqli->query("SHOW WARNINGS")) { $row = $result->fetch_row(); printf("%s (%d): %s\n", $row[0], $row[1], $row[2]); $result->close(); }}/* close connection */$mysqli->close();?>
Процедурный стиль
<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit();}mysqli_query($link, "CREATE TABLE myCity LIKE City");/* a remarkable long city name in Wales */$query = "INSERT INTO myCity (CountryCode, Name) VALUES('GBR', 'Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch')";mysqli_query($link, $query);if (mysqli_warning_count($link)) { if ($result = mysqli_query($link, "SHOW WARNINGS")) { $row = mysqli_fetch_row($result); printf("%s (%d): %s\n", $row[0], $row[1], $row[2]); mysqli_free_result($result); }}/* close connection */mysqli_close($link);?>
Вышеупомянутые примеры выведут:
Warning (1264): Data truncated for column 'Name' at row 1
См. Также
mysqli_errno
|
mysqli_error
|
mysqli_sqlstate |