PHP MySQL Funktion
- Vorherige Seite PHP Math
- Nächste Seite PHP MySQLi
PHP MySQL Einführung
MySQL-Funktionen ermöglichen Ihnen den Zugriff auf den MySQL-Datenbankserver.
Installation
Um die Funktionen dieser Klasse problemlos verwenden zu können, muss bei der Kompilierung von PHP die Unterstützung für MySQL hinzugefügt werden.
Beim Kompilieren genügt es, die Konfigurationsoption --with-mysql[=DIR] zu verwenden, wobei das optionale [DIR] auf das Installationsverzeichnis von MySQL verweist.
Obwohl diese MySQL-Erweiterungsspeicher mit MySQL 4.1.0 und späteren Versionen kompatibel ist, unterstützt sie diese zusätzlichen Funktionen nicht. Um diese Funktionen zu verwenden, verwenden Sie bitte die MySQLi-Erweiterungsspeicher.
Wenn mysql-Erweiterungsspeicher und mysqli-Erweiterungsspeicher gleichzeitig installiert werden sollen, muss die gleiche Clientbibliothek verwendet werden, um jegliche Konflikte zu vermeiden.
Installation auf dem Linux-System
PHP 4
Die Option --with-mysql ist standardmäßig aktiviert. Dieses Standardverhalten kann mit der Konfigurationsoption --without-mysql deaktiviert werden. Wenn MySQL aktiviert wird, ohne das Installationsverzeichnis zu spezifizieren, verwendet PHP die gebundene MySQL-Clientverbindungsbibliothek.
Nutzer anderer Anwendungen, die MySQL verwenden (z.B. auth-mysql), sollten keine gebundenen Bibliotheken verwenden, sondern den Installationsverzeichnis von MySQL angeben, wie folgt: --with-mysql=/pfad/zum/mysql. Dies erzwingt die Verwendung der Clientverbindungsbibliothek, die mit MySQL installiert wird, und verhindert so jegliche Konflikte.
PHP 5+
MySQL ist standardmäßig nicht aktiviert und es gibt keine gebundenen MySQL-Bibliotheken. Verwenden Sie die Konfigurationsoption --with-mysql[=DIR], um die Unterstützung von MySQL hinzuzufügen. Sie können von MySQL Herunterladen der Header-Dateien und Bibliotheken.
Installation auf dem Windows-System
PHP 4
Das PHP MySQL-Erweiterung ist in PHP bereits kompiliert.
PHP 5+
MySQL ist standardmäßig nicht aktiviert, daher muss die dynamische Verknüpfung php_mysql.dll in der Datei php.ini aktiviert werden. Darüber hinaus muss PHP auf die MySQL-Clientverbindungsbibliothek zugreifen. Der Windows-Vertreib von PHP enthält eine libmysql.dll, um sicherzustellen, dass PHP mit MySQL kommunizieren kann, muss diese Datei im Systempfad PATH von Windows abgelegt werden.
Um jede PHP-Erweiterungsbibliothek (z.B. php_mysql.dll) zu aktivieren, muss die PHP-Anweisung extension_dir auf den Verzeichnispfad der PHP-Erweiterungsbibliotheken gesetzt werden. Ein Beispiel für den Wert von extension_dir unter PHP 5 ist c:\php\ext.
Kommentare:Wenn bei der Aktivierung des Web-Servers ähnliche Fehler wie folgt auftreten: "Unable to load dynamic library './php_mysql.dll'" bedeutet dies, dass das System php_mysql.dll und / oder libmysql.dll nicht finden kann.
Laufzeitkonfiguration
Das Verhalten der MySQL-Funktionen wird durch die Einstellungen in php.ini beeinflusst.
MySQL-Konfigurationsoptionen:
Name | Standard | Beschreibung | Veränderbar |
---|---|---|---|
mysql.allow_persistent | "1" | Ob persistente MySQL-Verbindungen erlaubt sind. | PHP_INI_SYSTEM |
mysql.max_persistent | "-1" | Die maximale Anzahl der persistenten Verbindungen pro Prozess. | PHP_INI_SYSTEM |
mysql.max_links | "-1" | Die maximale Anzahl der Verbindungen pro Prozess, einschließlich persistenter Verbindungen. | PHP_INI_SYSTEM |
mysql.trace_mode | "0" | Verfolgungsmodus. Ab PHP 4.3.0 verfügbar. | PHP_INI_ALL |
mysql.default_port | NULL | Die Standard TCP-Portnummer für die Verbindung zur Datenbank angeben. | PHP_INI_ALL |
mysql.default_socket | NULL | Der Standardsocketname. Ab PHP 4.0.1 verfügbar. | PHP_INI_ALL |
mysql.default_host | NULL | Der Standardserveradresse. Es ist nicht für den SQL-Sicherheitsmodus geeignet. | PHP_INI_ALL |
mysql.default_user | NULL | Der Standardbenutzername, der verwendet wird. Es ist nicht für den SQL-Sicherheitsmodus geeignet. | PHP_INI_ALL |
mysql.default_password | NULL | Das Standardpasswort, das verwendet wird. Es ist nicht für den SQL-Sicherheitsmodus geeignet. | PHP_INI_ALL |
mysql.connect_timeout | "60" | Verbindungsüberschreitung in Sekunden. | PHP_INI_ALL |
Ressourcetyp
In der MySQL-Modul werden zwei Ressourcentypen verwendet. Der erste ist der Datenbankverbindungshandle, der zweite ist das Ergebnissatz der SQL-Abfrage.
PHP MySQL Funktion
PHP:指示支持该函数的最早的 PHP 版本。
函数 | Beschreibung | PHP |
---|---|---|
mysql_affected_rows() | 取得前一次 MySQL 操作所影响的记录行数。 | 3 |
mysql_change_user() | 不赞成。改变活动连接中登录的用户 | 3 |
mysql_client_encoding() | 返回当前连接的字符集的名称 | 4 |
mysql_close() | 关闭非持久的 MySQL 连接。 | 3 |
mysql_connect() | 打开非持久的 MySQL 连接。 | 3 |
mysql_create_db() | 不赞成。新建 MySQL 数据库。使用 mysql_query() 代替。 | 3 |
mysql_data_seek() | 移动记录指针。 | 3 |
mysql_db_name() | 从对 mysql_list_dbs() 的调用返回数据库名称。 | 3 |
mysql_db_query() |
不赞成。发送一条 MySQL 查询。 使用 mysql_select_db() 和 mysql_query() 代替。 |
3 |
mysql_drop_db() |
不赞成。丢弃(删除)一个 MySQL 数据库。 Verwenden Sie mysql_query() anstelle davon. |
3 |
mysql_errno() | 返回上一个 MySQL 操作中的错误信息的数字编码。 | 3 |
mysql_error() | 返回上一个 MySQL 操作产生的文本错误信息。 | 3 |
mysql_escape_string() |
不赞成。转义一个字符串用于 mysql_query。 使用 mysql_real_escape_string() 代替。 |
4 |
mysql_fetch_array() | 从结果集中取得一行作为关联数组,或数字数组,或二者兼有。 | 3 |
mysql_fetch_assoc() | 从结果集中取得一行作为关联数组。 | 4 |
mysql_fetch_field() | 从结果集中取得列信息并作为对象返回。 | 3 |
mysql_fetch_lengths() | 取得结果集中每个字段的内容的长度。 | 3 |
mysql_fetch_object() | 从结果集中取得一行作为对象。 | 3 |
mysql_fetch_row() | 从结果集中取得一行作为数字数组。 | 3 |
mysql_field_flags() | 从结果中取得和指定字段关联的标志。 | 3 |
mysql_field_len() | 返回指定字段的长度。 | 3 |
mysql_field_name() | Erhalten Sie den Feldnamen des angegebenen Feldes in den Ergebnissen. | 3 |
mysql_field_seek() | Setzen Sie den Zeiger in der Ergebnismenge auf den angegebenen Feldoffset. | 3 |
mysql_field_table() | Erhalten Sie den Tabellennamen, in dem das angegebene Feld sich befindet. | 3 |
mysql_field_type() | Erhalten Sie den Typ des angegebenen Feldes in der Ergebnismenge. | 3 |
mysql_free_result() | Freigeben Sie den Speicher der Ergebnisse. | 3 |
mysql_get_client_info() | Erhalten Sie Informationen zum MySQL-Client. | 4 |
mysql_get_host_info() | Erhalten Sie Informationen zum MySQL-Host. | 4 |
mysql_get_proto_info() | Erhalten Sie Informationen zum MySQL-Protokoll. | 4 |
mysql_get_server_info() | Erhalten Sie Informationen zum MySQL-Server. | 4 |
mysql_info() | Erhalten Sie Informationen zur letzten Abfrage. | 4 |
mysql_insert_id() | Erhalten Sie die ID, die durch die vorherige INSERT-Operation erzeugt wurde. | 3 |
mysql_list_dbs() | Liste alle Datenbanken auf dem MySQL-Server. | 3 |
mysql_list_fields() |
Nicht empfohlen. Listen Sie die Felder in den MySQL-Ergebnissen auf. Verwenden Sie mysql_query() anstelle davon. |
3 |
mysql_list_processes() | Liste die MySQL-Prozesse auf. | 4 |
mysql_list_tables() |
Nicht empfohlen. Listen Sie die Tabellen in der MySQL-Datenbank auf. Verwenden Sie mysql_query() anstelle davon. |
3 |
mysql_num_fields() | Erhalten Sie die Anzahl der Felder in der Ergebnismenge. | 3 |
mysql_num_rows() | Erhalten Sie die Anzahl der Zeilen in der Ergebnismenge. | 3 |
mysql_pconnect() | Öffnen Sie eine dauerhafte Verbindung zu einem MySQL-Server. | 3 |
mysql_ping() | Pingen Sie eine Serververbindung, verbinden Sie sich neu, wenn keine Verbindung besteht. | 4 |
mysql_query() | Senden Sie eine MySQL-Abfrage. | 3 |
mysql_real_escape_string() | Verwenden Sie spezielle Zeichen in den von SQL-Anweisungen verwendeten Zeichenfolgen zu escapen. | 4 |
mysql_result() | Erhalten Sie die Daten der Ergebnisse. | 3 |
mysql_select_db() | Wählen Sie die MySQL-Datenbank. | 3 |
mysql_stat() | Erhalten Sie den aktuellen Systemstatus. | 4 |
mysql_tablename() | Nicht empfohlen. Erhalten Sie den Tabellennamen. Verwenden Sie mysql_query() anstelle davon. | 3 |
mysql_thread_id() | Gibt die ID der aktuellen Thread zurück. | 4 |
mysql_unbuffered_query() | Eine SQL-Abfrage an MySQL senden (ohne Ergebnisse zu erhalten / zu cachen). | 4 |
PHP MySQL Konstanten
Ab Version 4.3.0 von PHP ist es erlaubt, zusätzliche Client-Tags in den mysql_connect() und mysql_pconnect() Funktionen zu spezifizieren:
PHP:Zeigt die frühestmögliche PHP-Version an, die die Konstante unterstützt.
Konstanten | Beschreibung | PHP |
---|---|---|
MYSQL_CLIENT_COMPRESS | Verwenden Sie komprimierte Kommunikationsprotokolle. | 4.3 |
MYSQL_CLIENT_IGNORE_SPACE | Erlaubt Leerzeichen nach dem Funktionsnamen. | 4.3 |
MYSQL_CLIENT_INTERACTIVE | Inaktivitätszeit, die vor dem Schließen der Verbindung erlaubt wird. | 4.3 |
MYSQL_CLIENT_SSL | SSL-Verschlüsselung verwenden (nur verfügbar, wenn die Version der MySQL-Clientbibliothek 4+ ist). | 4.3 |
Die mysql_fetch_array() Funktion verwendet eine Konstante, um den Typ des zurückgegebenen Arrays anzuzeigen:
Konstanten | Beschreibung | PHP |
---|---|---|
MYSQL_ASSOC | Die zurückgegebenen Datenzeilen verwenden Feldnamen als Array-Indizes. | |
MYSQL_BOTH | Die zurückgegebenen Datenzeilen verwenden Feldnamen und numerische Indizes als Array-Indizes. | |
MYSQL_NUM |
Die zurückgegebenen Datenzeilen verwenden numerische Indizes als Array-Indizes. Die Indizes beginnen bei 0, was den ersten Feldwert der zurückgegebenen Ergebnisse darstellt. |
- Vorherige Seite PHP Math
- Nächste Seite PHP MySQLi