PHP MySQL-funktioner

PHP MySQL-introduktion

MySQL-funktioner låter dig komma åt MySQL databasservern.

Installera

För att kunna använda dessa funktioner måste du lägga till stöd för MySQL vid kompilering av PHP.

För att kunna använda dessa funktioner måste du lägga till stöd för MySQL vid kompilering av PHP. Använd konfigurationsalternativet --with-mysql[=DIR], där valfria [DIR] pekar på MySQL:s installationskatalog.

Trots att denna MySQL-utökning är kompatibel med MySQL 4.1.0 och senare versioner stöder den inte de extra funktioner som dessa versioner erbjuder. För att använda dessa funktioner använd MySQLi-utökningen.

Om du vill installera mysql-utökningen och mysqli-utökningen samtidigt måste du använda samma klientbibliotek för att undvika eventuella konflikter.

Installera på Linux-system

PHP 4

Standard är att aktivera --with-mysql-alternativet. Detta standardbeteende kan förbjudas med konfigurationsalternativet --without-mysql. Om MySQL aktiveras utan att specificera installationskatalogen kommer PHP att använda det bundna MySQL klientanslutningsbiblioteket.

Användare av andra applikationer som använder MySQL (t.ex. auth-mysql) bör inte använda bundna bibliotek utan att specificera MySQL:s installationskatalog, som så här: --with-mysql=/path/to/mysql. Detta tvingar PHP att använda klientanslutningsbiblioteket som installeras med MySQL, vilket undviker eventuella konflikter.

PHP 5+

MySQL är som standard inte aktiverat och har ingen bunden MySQL-bibliotek. Använd konfigurationsalternativet --with-mysql[=DIR] för att lägga till stöd för MySQL. Det är möjligt att MySQL Ladda ner huvudfilerna och biblioteken.

Installera på Windows-system

PHP 4

PHP MySQL-utökningen har kompilats in i PHP.

PHP 5+

MySQL är som standard inte aktiverat, därför måste php_mysql.dll dynamiska länkliben aktiveras i php.ini. Dessutom behöver PHP åtkomst till MySQL klientanslutningsbiblioteket. PHP:s Windows-utgåva inkluderar en libmysql.dll, för att PHP ska kunna kommunicera med MySQL, måste denna fil vara i Windows systemvägen PATH.

För att aktivera någon PHP-utökning (t.ex. php_mysql.dll) måste PHP-instruktionen extension_dir sättas till katalogen där PHP-utökningarna finns. Ett exempel på extension_dir-värde i PHP 5 är c:\php\ext.

Kommentarer:Om ett fel som liknar följande uppstår när webbservern startas: "Unable to load dynamic library './php_mysql.dll'" är det för att systemet inte hittar php_mysql.dll och / eller libmysql.dll.

Körningskonfiguration

Beteendet för MySQL-funktioner påverkas av inställningar i php.ini.

MySQL-konfigurationsalternativ:

Namn Standard Beskrivning Kan ändras
mysql.allow_persistent "1" Om hållbara anslutningar till MySQL tillåts. PHP_INI_SYSTEM
mysql.max_persistent "-1" Maximalt antal hållbara anslutningar per process. PHP_INI_SYSTEM
mysql.max_links "-1" Maximalt antal anslutningar per process, inklusive hållbara anslutningar. PHP_INI_SYSTEM
mysql.trace_mode "0" Spårningsläge. Tillgängligt från PHP 4.3.0. PHP_INI_ALL
mysql.default_port NULL Specificera standard TCP-portnummer för att ansluta till databasen. PHP_INI_ALL
mysql.default_socket NULL Standard socket-namn. Tillgängligt från PHP 4.0.1. PHP_INI_ALL
mysql.default_host NULL Standard serveradress. Används inte i SQL-säkerhetsläge. PHP_INI_ALL
mysql.default_user NULL Standardanvändarnamn. Används inte i SQL-säkerhetsläge. PHP_INI_ALL
mysql.default_password NULL Standardanvänd lösenord. Används inte i SQL-säkerhetsläge. PHP_INI_ALL
mysql.connect_timeout "60" Antal sekunder för anslutningstidsutgång. PHP_INI_ALL

Resurstyp

Två typer av resurser används i MySQL-modulen. Den första är databasens anslutningshanterare och den andra är resultatuppsättningen från SQL-frågan.

PHP MySQL-funktioner

PHP:Indicate the earliest PHP version that supports this function.

Function Beskrivning PHP
mysql_affected_rows() Get the number of rows affected by the previous MySQL operation. 3
mysql_change_user() Not recommended. Change the logged-in user in the active connection. 3
mysql_client_encoding() Return the name of the character set of the current connection. 4
mysql_close() Close a non-persistent MySQL connection. 3
mysql_connect() Open a non-persistent MySQL connection. 3
mysql_create_db() Not recommended. Create a new MySQL database. Use mysql_query() instead. 3
mysql_data_seek() Move the record pointer. 3
mysql_db_name() Return the database name from the call to mysql_list_dbs(). 3
mysql_db_query()

Not recommended. Send a MySQL query.

Use mysql_select_db() and mysql_query() instead.

3
mysql_drop_db()

Not recommended. Drop (delete) a MySQL database. Use mysql_select_db() and mysql_query() instead.

Använd mysql_query() istället.

3
mysql_errno() Return the numeric code of the error message from the last MySQL operation. 3
mysql_error() Return the text error message from the last MySQL operation. 3
mysql_escape_string()

Not recommended. Escape a string for mysql_query.

Use mysql_real_escape_string() instead.

4
mysql_fetch_array() Get a row from the result set as an associative array, a numeric array, or both. 3
mysql_fetch_assoc() Get a row from the result set as an associative array. 4
mysql_fetch_field() Get column information from the result set and return it as an object. 3
mysql_fetch_lengths() Get the length of the content of each field in the result set. 3
mysql_fetch_object() Get a row from the result set as an object. 3
mysql_fetch_row() Get a row from the result set as a numeric array. 3
mysql_field_flags() Get the flags associated with the specified field from the result. 3
mysql_field_len() Return the length of the specified field. 3
mysql_field_name() Få fältnamnet för det specifika fältet i resultatet. 3
mysql_field_seek() Sätt pekpinnaren i resultatuppsättningen till den specifika fältavståndet. 3
mysql_field_table() Få tabellnamnet där det specifika fältet finns. 3
mysql_field_type() Få typen för det specifika fältet i resultatuppsättningen. 3
mysql_free_result() Frigör minne för resultatområdet. 3
mysql_get_client_info() Få MySQL-klientinformation. 4
mysql_get_host_info() Få MySQL-värdinformation. 4
mysql_get_proto_info() Få MySQL-protokollinformation. 4
mysql_get_server_info() Få MySQL-serverinformation. 4
mysql_info() Få information om den senaste frågan. 4
mysql_insert_id() Få ID som genererades av föregående INSERT-operation. 3
mysql_list_dbs() Lista alla databaser på MySQL-servern. 3
mysql_list_fields()

intejda. Lista fält i MySQL-resultatet.

Använd mysql_query() istället.

3
mysql_list_processes() Lista MySQL-processer. 4
mysql_list_tables()

intejda. Lista tabeller i MySQL-databasen.

Använd mysql_query() istället.

3
mysql_num_fields() Få antalet fält i resultatuppsättningen. 3
mysql_num_rows() Få antalet rader i resultatuppsättningen. 3
mysql_pconnect() Öppna en hållbar anslutning till MySQL-servern. 3
mysql_ping() Pinga en serveranslutning, om det inte finns någon anslutning, anslut igen. 4
mysql_query() Skicka en MySQL-fråga. 3
mysql_real_escape_string() Escape speciala tecken i strängar som används i SQL-satser. 4
mysql_result() Få resultatområdet. 3
mysql_select_db() Välj MySQL-databas. 3
mysql_stat() Få den aktuella systemstatusen. 4
mysql_tablename() intejda. Få tabellnamn. Använd mysql_query() istället. 3
mysql_thread_id() Returnerar ID:n för den aktuella tråden. 4
mysql_unbuffered_query() Skicka en SQL-förfrågan till MySQL (få inte / cache resultat). 4

PHP MySQL-konstanter

I versioner efter PHP 4.3.0 tillåts fler klientmarkörer att anges i mysql_connect() och mysql_pconnect() funktioner:

PHP:Indikerar den äldsta PHP-version som stöder denna konstant.

Konstanter Beskrivning PHP
MYSQL_CLIENT_COMPRESS Använder komprimerad kommunikationsprotokoll. 4.3
MYSQL_CLIENT_IGNORE_SPACE Tillåter att det finns tomma platser efter funktionens namn. 4.3
MYSQL_CLIENT_INTERACTIVE Inaktiv tid för interaktion som tillåts innan anslutningen stängs. 4.3
MYSQL_CLIENT_SSL Använd SSL-kryptering (endast tillgängligt för MySQL-klientbibliotek version 4+). 4.3

mysql_fetch_array()-funktionen använder en konstant för att representera typen på den returnerade arrayen:

Konstanter Beskrivning PHP
MYSQL_ASSOC De returnerade datakolonnerna används som namn på index för arrayen med fältnamn.  
MYSQL_BOTH De returnerade datakolonnerna används som namn på index för arrayen med både fältnamn och numeriska index.  
MYSQL_NUM

De returnerade datakolonnerna används som namn på index för arrayen med numeriska index.

Indexet börjar från 0, vilket representerar den första raden i de returnerade resultaten.