Memahami Perbezaan Antara Tinyint(2) dan Tinyint(1) dalam MySql
Walaupun diketahui bahawa jenis data boolean dalam MySql diwakili sebagai tinyint(1), anda mungkin pernah menemui jadual di mana integer ditakrifkan sebagai tinyint(2), atau variasi lain seperti int(4), int(6), dan sebagainya. Artikel ini bertujuan untuk menjelaskan kepentingan nombor ini dalam konteks jenis data integer dan tinyint.
Nombor (m) mengikut nama jenis, seperti tinyint(m), menunjukkan lebar paparan lajur. Nilai ini digunakan terutamanya oleh aplikasi seperti klien MySQL untuk menentukan pemformatan dan padding hasil yang dipaparkan.
Sebagai contoh, pertimbangkan struktur jadual berikut:
| v (tinyint(1)) | a (tinyint(2)) | b (tinyint(3)) | c (tinyint(4)) |
Lebar paparan bagi nilai dalam lajur ini adalah seperti berikut:
| v | a | b | c | +-----+-----+-----+-----+ | 1 | 1 | 1 | 1 | | 10 | 10 | 10 | 10 | | 100 | 100 | 100 | 100 |
Seperti yang anda boleh lihat, nilai itu dipadatkan dengan ruang di sebelah kiri untuk sepadan dengan lebar paparan yang ditentukan.
Ia adalah penting untuk ambil perhatian bahawa lebar paparan tidak menjejaskan julat nilai yang diterima untuk jenis data. Contohnya, lajur tinyint(1) masih akan menerima nilai antara -128 dan 127, tanpa mengira lebar paparannya.
Ringkasnya, nombor yang mengikuti jenis data tinyint atau int dalam MySql (m) mewakili lebar paparan lajur, yang mempengaruhi cara nilai diformat dan dipadatkan apabila dipaparkan dalam aplikasi. Ia tidak memberi kesan kepada julat nilai yang sah untuk jenis data tertentu itu.
Atas ialah kandungan terperinci Apakah Tujuan Nombor dalam Jenis Data seperti `tinyint(2)` dan `int(4)` dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!