Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Berhijrah dari Fungsi MySQL ke PDO_MySQL?

Bagaimana untuk Berhijrah dari Fungsi MySQL ke PDO_MySQL?

Susan Sarandon
Lepaskan: 2024-11-26 08:54:10
asal
691 orang telah melayarinya

How to Migrate from MySQL Functions to PDO_MySQL?

Cara Menggantikan Fungsi MySQL dengan PDO

Fungsi MySQL kini tidak digunakan lagi dan akan dialih keluar dalam versi PHP akan datang. MySQLi atau PDO_MySQL hendaklah digunakan sebaliknya.

Pelaksanaan PDO

PDO menyediakan antara muka yang konsisten untuk menyambung ke pangkalan data yang berbeza, termasuk MySQL dan MSSQL.

Sambungan:

  • MySQL:

    $dsn = 'mysql:dbname=databasename;host=127.0.0.1';
    $dbh = new PDO($dsn, 'dbuser', 'dbpass');
    Salin selepas log masuk
  • MSSQL:

    $dsn = 'sqlsrv:Server=127.0.0.1;Database=databasename';
    $dbh = new PDO($dsn, 'dbuser', 'dbpass');
    Salin selepas log masuk

Melaksanakan Pertanyaan:

PDO menggunakan pernyataan yang disediakan, yang menghalang kelemahan suntikan SQL.

$SQL = 'SELECT ID, EMAIL FROM users WHERE user = :username';
Salin selepas log masuk

Melaksanakan Pertanyaan:

Gunakan sediakan dan laksanakan untuk pertanyaan berubah-ubah.

$query = $dbh->prepare($SQL);
$query->execute([':username' => 'someone']);
Salin selepas log masuk

Mengambil Keputusan:

Gunakan fetch atau fetchAll untuk mendapatkan semula hasil.

while ($row = $query->fetch()) {
    echo $row['ID'], $row['EMAIL'];
}
Salin selepas log masuk

Pengendalian Pengecualian:

Dayakan pengendalian pengecualian PDO.

$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
Salin selepas log masuk

Kemudahan Kelas:

class PDOConnection {
    function __construct($dsn, $username, $password) {
        $this->connection = new PDO($dsn, $username, $password);
        $this->connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        $this->connection->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
    }

    function query($SQL) { return $this->connection->query($SQL); }
    function prepare($SQL, $params = []) { return $this->connection->prepare($SQL)->execute($params); }
}
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Berhijrah dari Fungsi MySQL ke PDO_MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan