MySQL vs MySQLi Extension
MySQL è un popolare sistema di gestione dei database relazionali (RDBMS). Si tratta di un DBMS open source ampiamente utilizzato anche in aziende di grandi dimensioni come Wikipedia, Google e Facebook. PHP (acronimo di PHP: Hypertext Preprocessor) è un linguaggio di scripting lato server, particolarmente adatto per lo sviluppo di pagine Web dinamiche e interattive. MySQL e MySQLi sono due estensioni fornite per l'interazione di applicazioni PHP con database MySQL. Queste due estensioni sono implementate usando il framework di estensione PHP e forniscono una API (Application Programming Interface) ai programmatori PHP per interagire con i database MySQL.
Cos'è l'estensione MySQL?
MySQL Extension è la prima estensione fornita per lo sviluppo di applicazioni PHP, che possono essere utilizzate per interagire con i database MySQL. Ciò fornisce un'interfaccia procedurale per i programmatori PHP per interagire con i database MySQL. Questa estensione è concepita per essere utilizzata solo con le versioni di MySQL precedenti alla versione 4.1.3. Anche se questo potrebbe essere usato con MySQL versione 4.1.3 o successive, nessuna delle nuove funzionalità in quelle versioni non sarà disponibile. Attualmente non ci sono sviluppi attivi su MySQL Extension e non è raccomandato per nuovi progetti. Ulteriore estensione MySQL non supporta istruzioni preparate lato server o dichiarazioni preparate lato client. Inoltre, non supporta stored procedure o Charset.
Cos'è l'estensione MySQLi?
MySQLi Extension (anche chiamata estensione migliorata di MySQL) è la nuova estensione fornita per lo sviluppo di applicazioni PHP in grado di interagire con i database MySQL. Questa estensione è sviluppata per sfruttare al massimo le funzionalità disponibili in MySQL versione 4.1.3 o successive. MySQLi Extension è in primo luogo incorporato con la versione 5 di PHP e incluso in tutte le versioni successive. Oltre a fornire un'interfaccia procedurale per i programmatori PHP, MySQLi Extension fornisce anche un'interfaccia orientata agli oggetti. Questo fornisce anche supporto per dichiarazioni preparate lato client / server e dichiarazioni multiple. Inoltre, supporta Charset e stored procedure.
Qual è la differenza tra MySQL e MySQLi Extension?
Anche se sia l'estensione MySQL che l'estensione MySQLi sono estensioni fornite per lo sviluppo di applicazioni PHP in grado di interagire con i database MySQL, MySQLi Extension ha alcuni miglioramenti chiave su MySQL Extension. In primo luogo, si consiglia l'uso dell'estensione MySQL con versioni di MySQL precedenti alla 4.1.3, mentre l'estensione MySQLi è consigliata per l'uso con le versioni di MySQL 4.1.3 o successive. Inoltre, MySQLi Extension è incorporato solo con PHP 5 o versioni successive. MySQL Extension fornisce solo un'interfaccia procedurale per i programmatori PHP, mentre MySQLi Extension fornisce un'interfaccia orientata agli oggetti (oltre all'interfaccia procedurale). Inoltre, MySQLi Extension fornisce supporto per istruzioni preparate e più istruzioni, che non erano supportate in MySQL Extension. MySQLi Extension offre funzionalità di debug migliorate rispetto a MySQL Extension. Inoltre, MySQLi Extension fornisce supporto server integrato e supporto alle transazioni, che non erano disponibili in MySQL Extension. Anche se MySQL Extension può essere utilizzato con le versioni di MySQL 4.1.3 o successive, nessuna delle nuove funzionalità incluse con quelle versioni di MySQL non sarà disponibile.