Rumah >pembangunan bahagian belakang >tutorial php >Mengapa Sisipan Integer MySQL Saya Tidak Betul, dan Bagaimana Saya Boleh Membetulkannya?

Mengapa Sisipan Integer MySQL Saya Tidak Betul, dan Bagaimana Saya Boleh Membetulkannya?

Barbara Streisand
Barbara Streisandasal
2024-11-25 00:22:16169semak imbas

Why is My MySQL Integer Insertion Incorrect, and How Can I Fix It?

Pemasukan Integer Salah MySQL: Mengenalpasti Punca dan Penyelesaian

Apabila cuba memasukkan integer ke dalam pangkalan data MySQL, anda mungkin menghadapi keadaan di mana nilai yang dimasukkan secara tidak dijangka berbeza daripada input yang dimaksudkan. Percanggahan ini boleh berlaku apabila nilai yang dimaksudkan melebihi saiz integer maksimum yang disokong oleh MySQL.

Dalam senario khusus yang dibentangkan, pengguna cuba memasukkan ID Steam64 (yang dikenal pasti oleh pembolehubah $steam64) ke dalam lajur steam64 daripada jadual MySQL. Selepas pelaksanaan, mereka mendapati integer yang dimasukkan adalah tidak betul.

Punca Punca:

Punca isu ini terletak pada had saiz integer maksimum MySQL. Jenis integer lalai MySQL, INT, mempunyai nilai maksimum 2,147,483,647. Mana-mana integer yang lebih besar daripada ini akan dipotong dan dimasukkan sebagai nilai maksimum.

Penyelesaian:

Untuk menyelesaikan isu ini, anda harus mengubah suai jenis data lajur steam64 kepada BIGINT. BIGINT menyokong integer dengan nilai maksimum 9,223,372,036,854,775,807, yang mencukupi untuk menyimpan ID Steam64 tanpa pemotongan. Pertanyaan SQL yang diubah suai akan menyerupai yang berikut:

$sql_query = "INSERT INTO users_info (steam64) VALUES ($steam64)";

Atas ialah kandungan terperinci Mengapa Sisipan Integer MySQL Saya Tidak Betul, dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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