PHP Handbuch
Zurück |  | Weiter

# C. Verbesserte MySQL Erweiterung

# Einführung

Die mysqli-Erweiterung ermöglicht Ihnen den Zugriff auf Funktionalitäten von MySQL 4.1 und höher. Weitere Informationen über den MySQL Datenbankserver finden Sie unter http://www.mysql.com/

Die Dokumentation von MySQL finden Sie unter http://dev.mysql.com/doc/

Warnung
Diese Erweiterung ist EXPERIMENTELL. Das Verhalten dieser Erweiterung, einschließlich der Funktionsnamen, und alles Andere was hier dokumentiert ist, kann sich in zukünftigen PHP-Versionen ohne Ankündigung ändern. Seien Sie gewarnt und verwenden Sie diese Erweiterung auf eigenes Risiko.

# Anforderungen

Um die Funktionalitäten dieser Erweiterung nutzen zu können, müssen Sie PHP mit Unterstützung für mysqli kompilieren.

> Anmerkung: Die mysqli-Erweiterung wurde erstellt, um mit den MySQL-Versionen >= 4.1 zu arbeiten. Wenn Sie eine ältere Version verwenden, sollten Sie einen Blick auf die Dokumentation der mysql-Erweiterung werfen.

# Installation

Um die mysqli-Erweiterung für PHP zu installieren, benutzen Sie den Schalter `--with-mysqli=mysql_config_path/mysql_config`, wobei `mysql_config_path` auf das Verzeichnis des `mysql_config`-Programms verweist, das bei MySQL-Versionen größer als 4.1 vorhanden ist.

Wenn Sie die Standard-MySQL-Erweiterung zusammen mit der mysqli-Erweiterung installieren möchten, müssen Sie für beide die gleiche Client-Bibliothek verwenden, um Konflikten vorzubeugen.

# Laufzeit Konfiguration

Das Verhalten dieser Funktionen wird durch Einstellungen in der `php.ini` beeinflusst.

Tabelle 1. MySQLi Konfigurations-Optionen

Name | Standard | Änderbar | Changelog
--- | --- | --- | ---
mysqli.max_links | "-1" | PHP_INI_SYSTEM | verfügbar seit PHP 5.0.0
mysqli.default_port | 3306 | PHP_INI_ALL | verfügbar seit PHP 5.0.0
mysqli.default_socket | NULL | PHP_INI_ALL | verfügbar seit PHP 5.0.0
mysqli.default_host | NULL | PHP_INI_ALL | verfügbar seit PHP 5.0.0
mysqli.default_user | NULL | PHP_INI_ALL | verfügbar seit PHP 5.0.0
mysqli.default_pw | NULL | PHP_INI_ALL | verfügbar seit PHP 5.0.0

Für weitere Details und Definitionen über die oben genannten PHP_INI_*-Konstanten sehen Sie im Kapitel über Konfigurations-Änderungen nach.

Hier eine kurze Erklärung der Konfigurationsoptionen:

`mysqli.max_links` integer

  Die maximale Anzahl von MySQL-Verbindungen pro Prozess.

`mysqli.default_port` string

  Die Standard-TCP-Portnummer, die benutzt werden soll, wenn eine Verbindung zum Datenbankserver aufgenommen werden soll und kein anderer Port explizit angegeben wurde. Wenn hier kein Standardport angegeben wird, wird der Port aus der `MYSQL_TCP_PORT` Umgebungs-Variable, dem `mysql-tcp`-Eintrag in der `/etc/services` oder der compile-time `MYSQL_PORT`-Konstante (in dieser Reihenfolge) verwendet.

`mysqli.default_socket` string

  Der Standard-Socketname, der beim Verbindungsaufbau zu einem lokalen Datenbankserver verwendet wird, sofern kein anderer Socketname angegeben wurde.

`mysqli.default_host` string

  Der Standard-Server-Host, der beim Verbindungsaufbau zu einem lokalen Datenbankserver verwendet wird, sofern kein anderer Host angegeben wurde. Funktioniert nicht im Safe Mode.

`mysqli.default_user` string

  Der Standard-Username, der beim Verbindungsaufbau zu einem lokalen Datenbankserver verwendet wird, sofern kein anderer Name angegeben wurde. Funktioniert nicht im Safe Mode.

`mysqli.default_password` string

  Das Standard-Passwort, das beim Verbindungsaufbau zu einem lokalen Datenbankserver verwendet wird, sofern kein anderes Passwort angegeben wurde. Funktioniert nicht im Safe Mode.

# Resource Typen

## `mysqli_link`

Stellt eine Verbindung zwischen PHP und einer MySQL-Datenbank dar.

## `mysqli_stmt`

Stellt eine vorbereitete Anfrage dar.

## `mysqli_result`

Stellt den Ergebnissatz einer zuvor ausgeführten Anfrage an die Datenbank dar.

# Vordefinierte Konstanten

Tabelle 2. MySQLi Konstanten

Name | Beschreibung
--- | ---
`MYSQLI_READ_DEFAULT_GROUP` (integer) |
`MYSQLI_READ_DEFAULT_FILE` (integer) |
`MYSQLI_OPT_CONNECT_TIMEOUT` (integer) |
`MYSQLI_OPT_LOCAL_INFILE` (integer) |
`MYSQLI_INIT_COMMAND` (integer) |
`MYSQLI_CLIENT_SSL` (integer) |
`MYSQLI_CLIENT_COMPRESS` (integer) |
`MYSQLI_CLIENT_INTERACTIVE` (integer) |
`MYSQLI_CLIENT_IGNORE_SPACE` (integer) |
`MYSQLI_CLIENT_NO_SCHEMA` (integer) |
`MYSQLI_CLIENT_MULTI_QUERIES` (integer) |
`MYSQLI_STORE_RESULT` (integer) |
`MYSQLI_USE_RESULT` (integer) |
`MYSQLI_ASSOC` (integer) |
`MYSQLI_NUM` (integer) |
`MYSQLI_BOTH` (integer) |
`MYSQLI_NOT_NULL_FLAG` (integer) |
`MYSQLI_PRI_KEY_FLAG` (integer) |
`MYSQLI_UNIQUE_KEY_FLAG` (integer) |
`MYSQLI_MULTIPLE_KEY_FLAG` (integer) |
`MYSQLI_BLOB_FLAG` (integer) |
`MYSQLI_UNSIGNED_FLAG` (integer) |
`MYSQLI_ZEROFILL_FLAG` (integer) |
`MYSQLI_AUTO_INCREMENT_FLAG` (integer) |
`MYSQLI_TIMESTAMP_FLAG` (integer) |
`MYSQLI_SET_FLAG` (integer) |
`MYSQLI_NUM_FLAG` (integer) |
`MYSQLI_PART_KEY_FLAG` (integer) |
`MYSQLI_GROUP_FLAG` (integer) |
`MYSQLI_TYPE_DECIMAL` (integer) |
`MYSQLI_TYPE_TINY` (integer) |
`MYSQLI_TYPE_SHORT` (integer) |
`MYSQLI_TYPE_LONG` (integer) |
`MYSQLI_TYPE_FLOAD` (integer) |
`MYSQLI_TYPE_DOUBLE` (integer) |
`MYSQLI_TYPE_NULL` (integer) |
`MYSQLI_TYPE_TIMESTAMP` (integer) |
`MYSQLI_TYPE_LONGLONG` (integer) |
`MYSQLI_TYPE_INT24` (integer) |
`MYSQLI_TYPE_DATE` (integer) |
`MYSQLI_TYPE_TIME` (integer) |
`MYSQLI_TYPE_DATETIME` (integer) |
`MYSQLI_TYPE_YEAR` (integer) |
`MYSQLI_TYPE_NEWDATE` (integer) |
`MYSQLI_TYPE_ENUM` (integer) |
`MYSQLI_TYPE_SET` (integer) |
`MYSQLI_TYPE_TINY_BLOB` (integer) |
`MYSQLI_TYPE_MEDIUM_BLOB` (integer) |
`MYSQLI_TYPE_LONG_BLOB` (integer) |
`MYSQLI_TYPE_BLOB` (integer) |
`MYSQLI_TYPE_VAR_STRING` (integer) |
`MYSQLI_TYPE_STRING` (integer) |
`MYSQLI_TYPE_CHAR` (integer) |
`MYSQLI_TYPE_INTERVAL` (integer) |
`MYSQLI_TYPE_GEOMETRY` (integer) |
`MYSQLI_BIND_STRING` (integer) |
`MYSQLI_BIND_INT` (integer) |
`MYSQLI_BIND_DOUBLE` (integer) |
`MYSQLI_BIND_SEND_DATA` (integer) |
`MYSQLI_RPL_MASTER` (integer) |
`MYSQLI_RPL_SLAVE` (integer) |
`MYSQLI_RPL_ADMIN` (integer) |
`MYSQLI_NEED_DATA` (integer) |
`MYSQLI_NO_DATA` (integer) |
`MYSQLI_PR_REPORT_STDERR` (integer) |
`MYSQLI_PR_REPORT_PORT` (integer) |
`MYSQLI_PR_REPORT_FILE` (integer) |

Zurück | Zum Anfang | Weiter
PDO_MYSQL DSN | Nach oben | mysqli_affected_rows