Heim > Backend-Entwicklung > PHP-Problem > Was ist der Unterschied zwischen MySQL und MySQLi in PHP?

Was ist der Unterschied zwischen MySQL und MySQLi in PHP?

青灯夜游
Freigeben: 2023-03-10 11:26:01
Original
3158 Leute haben es durchsucht

Unterschied: MySQL ist eine permanente Verbindungsfunktion, während MySQL eine nicht permanente Verbindungsfunktion ist. MySQL öffnet bei jeder Verbindung einen Verbindungsprozess. MySQL verwendet immer denselben Verbindungsprozess, wodurch der Druck auf der Serverseite erheblich verringert werden kann.

Was ist der Unterschied zwischen MySQL und MySQLi in PHP?

Die Betriebsumgebung dieses Tutorials: Windows7-System, PHP7.1 und MySQL8-Version, DELL G3-Computer

1. Verwandte Konzepte von MySQL und MySQL:

1. MySQL und MySQL sind beide Funktionen von php Set, hat wenig mit der MySQL-Datenbank zu tun.

2. Vor der PHP5-Version wurde im Allgemeinen die MySQL-Funktion von PHP verwendet, um die MySQL-Datenbank zu steuern, z. B. die Funktion mysql_query(), die prozessorientiert ist. 3. Nach der PHP5-Version war die Funktion function von MySQL In gewissem Sinne hinzugefügt Mit anderen Worten handelt es sich um eine erweiterte Version der MySQL-Systemfunktion, die stabiler, effizienter und sicherer ist. Entspricht mysql_query(), das objektorientiert ist und Objekte zum Betrieb verwendet Fahren Sie die MySQL-Datenbank

2. MySQL und MySQLi Der Unterschied:

MySQL ist eine permanente Verbindungsfunktion, während MySQL eine nicht-persistente Verbindungsfunktion ist.

MySQL-Verbindung: Bei jeder zweiten Verwendung wird ein neuer Prozess erneut geöffnet.

MySQL-Verbindung: Verwenden Sie immer den gleichen Prozess.

Vorteile: Dadurch kann der Druck auf der Serverseite erheblich reduziert werden.

mysqli kapselt einige erweiterte Vorgänge wie Transaktionen und kapselt auch viele verfügbare Methoden im DB-Betriebsprozess.

3. Verwendung von MySQL und MySQLi:

1: MySQL (prozeduraler Modus):

$conn = mysql_connect('localhost', 'user', 'password'); //连接mysql数据库  mysql_select_db('data_base'); 
 //选择数据库  
 $result = mysql_query('select * from data_base');//第二个可选参数,指定打开的连接  
 $row = mysql_fetch_row( $result ) ) //只取一行数据  
 echo $row[0]; //输出第一个字段的值  
Nach dem Login kopieren

PS: MySQL arbeitet in einem prozeduralen Modus und einige Funktionen müssen Ressourcen angeben, z. B. mysqli_query (Ressource). , SQL-Anweisung) und der Parameter der Ressourcenidentifikation wird vorangestellt, während die Ressourcenidentifikation von mysql_query (SQL-Anweisung, 'Ressourcenidentifikation') optional ist und der Standardwert die zuletzt geöffnete Verbindung oder Ressource ist.

2. MySQLi (Objektmodus):  

$conn = new mysqli('localhost', 'user', 'password','data_base');  //要使用new操作符,最后一个参数是直接指定数据库  //假如构造时候不指定,那下一句需要$conn -> select_db('data_base')实现  $result = 
 $conn -> query( 'select * from data_base' );  
 $row = result -> fetch_row(); //取一行数据  
 echo row[0]; //输出第一个字段的值
Nach dem Login kopieren

meldet einen Fehler, wenn new mysqli('localhost', usenamer', 'password', 'databasename'); verwendet wird. Die Eingabeaufforderung lautet wie folgt:

Fatal error: Class 'mysqli' not found in ...
Nach dem Login kopieren

Im Allgemeinen ist MySQL nicht aktiviert, da die MySQLi-Klasse standardmäßig nicht aktiviert ist , und php.ini muss unter Win geändert werden. Entfernen Sie das ; vor php_mysqli.dll, und mysqli muss unter Linux kompiliert werden.

4. Mit mysqli_connect() können Sie den Datenbanknamen als Parameter an die mysqli_connect()-Funktion übergeben. 2 Bezeichner ist erforderlich, wenn mysqli_query() oder die mysqli-Objektabfrage query()-Methode aufgerufen wird.

Empfohlenes Lernen: „

PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen MySQL und MySQLi in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage