Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Dapatkan Jenis Data Berangka daripada MySQL Menggunakan PDO Tanpa Penukaran Rentetan?

Bagaimanakah Saya Boleh Dapatkan Jenis Data Berangka daripada MySQL Menggunakan PDO Tanpa Penukaran Rentetan?

Patricia Arquette
Lepaskan: 2024-12-22 14:09:10
asal
368 orang telah melayarinya

How Can I Retrieve Numeric Data Types from MySQL Using PDO Without String Conversion?

Mengambil Jenis Data Berangka daripada MySQL Menggunakan PDO

Apabila menggunakan PDO dan MySQL, anda mungkin menghadapi keadaan di mana nilai angka yang diambil daripada pangkalan data adalah dikembalikan sebagai rentetan dan bukannya jenis data berangka. Perbezaan ini boleh timbul disebabkan oleh gelagat lalai sambungan PHP Database Objects (PDO).

Mengapa Rentetan Daripada Nombor?

Malangnya, ia adalah perkara biasa untuk terima rentetan dan bukannya nombor apabila menanyakan pangkalan data. Ini berlaku kerana sambungan PDO biasanya menukar nilai berangka daripada pangkalan data kepada rentetan untuk memastikan keserasian dengan semua pemacu pangkalan data yang disokong.

Melumpuhkan Penukaran Rentetan

Untuk mengelakkan PDO daripada melakukan rentetan nilai angka, anda boleh mengubah suai atribut PDO PDO::ATTR_EMULATE_PREPARES. Dengan menetapkan atribut ini kepada palsu, anda boleh melumpuhkan emulasi pernyataan yang disediakan dan membenarkan MySQL mengembalikan jenis data asli, termasuk jenis angka.

$dsn = 'mysql:dbname=database;host=localhost';
$pdo = new PDO($dsn, $user, $pass, array(
    PDO::ATTR_EMULATE_PREPARES => false
));
Salin selepas log masuk

PDO::ATTR_STRINGIFY_FETCHES

Atribut PDO::ATTR_STRINGIFY_FETCHES tidak boleh digunakan pada pemacu MySQL PDO. Atribut ini bertujuan untuk pemacu pangkalan data lain yang menyokong rentetan pengembalian dan bukannya jenis data asli.

Oleh itu, dengan melumpuhkan emulasi pernyataan yang disediakan oleh PDO, anda boleh memastikan bahawa nilai berangka dikembalikan sebagai jenis data asli, menghalang rentetan dan membenarkan anda untuk bekerja dengan data dengan betul.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Dapatkan Jenis Data Berangka daripada MySQL Menggunakan PDO Tanpa Penukaran Rentetan?. 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