ADODB — переключение с Mysql на Mysqli

В свете того, что MySQL скоро устареет, мне нужно переместить большой веб-сайт с использованием ADODB из MySQL в MySQLi.

Теперь я просмотрел несколько тем по Stackoverflow, и благодаря сообществу у меня уже есть общее представление о том, что нужно сделать. Лучшие темы по этому вопросу:

ADODB MySQLi Connection

Переключить большой сайт с MySQL на MySQLi

Тем не менее, мне все еще нужно немного больше разъяснений по моему конкретному случаю, где используется ADODB.

Вот что я использую для подключения к БД:

define('DBHOST', 'db_host');
define('DBUSER', 'db_user');
define('DBPASS', 'db_pass');
define('DBNAME', 'db_name');

include('adodb/adodb.inc.php');
$db = ADONewConnection('mysql');
$db->Connect(DBHOST,DBUSER,DBPASS,DBNAME) or die("Database not found!");

Итак, сначала я меняюсь:

$db = ADONewConnection('mysql');

в

$db = ADONewConnection('mysqli');

Это легкая часть, я думаю.

Теперь, когда я использую ADODB, мне также нужно изменить все экземпляры функций MySQL_ * на MySQLi_ * или ADODB позаботится об этом автоматически? Я думаю, что знаю ответ, но все равно должен спросить.

Мои самые распространенные функции MySQL_:

mysql_insert_id()
mysql_query()
mysql_fetch_array()
mysql_num_rows()
mysql_escape_string()
mysql_connect()
mysql_select_db()
mysql_error()

Наиболее распространенное использование, как $variable = mysql_insert_id(); или же $v1 = mysql_query($v);

Есть ли что-то еще, что я должен учитывать при переходе с MySQL на MySQLi для ADODB?

0

Решение

«Мне также нужно изменить все экземпляры функций MySQL_ * на MySQLi_ *?»

Ответ — да. Различные API / функции MySQL не смешиваются. Вы должны использовать один и тот же API / функции от соединения до запроса.

Вы можете использовать следующие функции, просто заменяя mysql_ от mysqli_при передаче соединения с базой данных в функциях, которые требуют этого, и в качестве первого параметра.

  • То есть mysqli_query($connection, $query),

Они отмечены звездочками *,

mysqli_insert_id() - *
mysqli_query() - *
mysqli_fetch_array()
mysqli_num_rows()
mysqli_escape_string() - *
mysqli_connect() - *
mysqli_select_db() - *
mysqli_error() - *
2

Другие решения

Других решений пока нет …