Rumah  >  Artikel  >  pangkalan data  >  Apakah perbezaan antara tinyint(1) dan tinyint(4) dalam Mysql

Apakah perbezaan antara tinyint(1) dan tinyint(4) dalam Mysql

WBOY
WBOYke hadapan
2023-05-30 10:55:192067semak imbas

1. Perbezaan antara varchar(M) dan jenis berangka tinyint(M)

Jenis rentetan: varchar(M), M ialah aksara maksimum yang boleh disimpan dalam String medan, iaitu panjang medan. Bergantung pada tetapan, apabila nilai yang anda masukkan melebihi panjang tetapan medan, anda berkemungkinan menerima gesaan ralat Jika anda tidak menerima gesaan, data yang dimasukkan juga mungkin dipotong secara automatik agar sesuai dengan panjang yang telah ditetapkan. padang. Semuanya seperti varchar(5) bermakna panjang rentetan yang disimpan tidak boleh melebihi 5.

Jenis lajur angka: Pengubah suai panjang menunjukkan lebar maksimum dan tiada kaitan dengan storan fizikal medan, iaitu tinyint(1) dan tinyint(4) ditandatangani. Julat storan ialah -128 hingga 127 (tanpa tanda, ia adalah 0 hingga 255).

Nota: Julat lalai yang ditandatangani ialah (-128~127), dan panjang lalai ialah 4. >Jika zerofill digunakan, apabila panjang sebenar tidak mencapai panjang paparan yang ditentukan, ia akan dipadatkan dengan 0 di hadapan.

Dalam jenis data MySQL, tinyin berkaitan sama ada ia tidak ditandatangani atau tidak Julat nilai yang ditandatangani ialah -128~127 Julat nilai yang tidak ditandatangani ialah 0~255. Nombor dalam kurungan tiada kaitan dengan nilai yang disimpan, hanya lebar paparan dalam beberapa kes.

2 Ujian

Apakah perbezaan antara tinyint(1) dan tinyint(4) dalam Mysql

Apa yang berlaku apabila medan nama jenis rentetan ditetapkan kepada panjang melebihi 5 ?Apakah perbezaan antara tinyint(1) dan tinyint(4) dalam Mysql

Apakah yang berlaku apabila medan umur jenis tinyint (ditandatangani) ditetapkan di luar julat (-128~127)?

Apakah perbezaan antara tinyint(1) dan tinyint(4) dalam Mysql

Apakah perbezaan antara tinyint(1) dan tinyint(4) dalam Mysql

1 bait = 8 bit, panjang data maksimum yang boleh diwakili oleh satu bait ialah 2 hingga kuasa ke-8 11111111 dalam komputer Ia adalah

Apakah perbezaan antara tinyint(1) dan tinyint(4) dalam Mysql-128 hingga 127

1.BIT[M]

jenis medan bit, M mewakili bilangan bit dalam setiap nilai, antara 1 hingga 64, jika M Diabaikan, lalainya ialah 1

2.TINYINT[(M)] [TIDAK TANDA] [ZEROFILL] M lalai kepada 4

Integer kecil. Julat yang ditandatangani ialah -128 hingga 127. Julat yang tidak ditandatangani ialah 0 hingga 255.

3. BOOL, BOOLEAN

ialah sinonim untuk TINYINT(1). Nilai sifar dianggap palsu. Nilai bukan sifar dianggap benar.

4.KECIL[(M)] [TIDAK TANDA] [ZEROFILL] M lalai kepada 6

integer kecil. Julat yang ditandatangani ialah -32768 hingga 32767. Julat yang tidak ditandatangani ialah 0 hingga 65535.

5.MEDIUMINT[(M)] [UNTANDATANGAN] [ZEROFILL] M lalai kepada 9

Integer bersaiz sederhana. Julat yang ditandatangani ialah -8388608 hingga 8388607. Julat yang tidak ditandatangani ialah 0 hingga 16777215.

6. INT[(M)] [TIDAK TANDA] [ZEROFILL] M lalai kepada 11

Integer bersaiz normal. Julat yang ditandatangani ialah -2147483648 hingga 2147483647. Julat yang tidak ditandatangani ialah 0 hingga 4294967295.

7.BIGINT[(M)] [TIDAK TANDA] [ZEROFILL] M lalai kepada 20

integer besar. Selang simbolik ialah -9223372036854775808 hingga 9223372036854775807. Julat yang tidak ditandatangani ialah 0 hingga 18446744073709551615.

Nota: M di sini tidak mewakili panjang khusus yang disimpan dalam pangkalan data Saya pernah tersilap berfikir bahawa int(3) hanya boleh menyimpan nombor 3-panjang, int(11) akan menyimpan 11. -nombor panjang, yang sama sekali salah.

Atas ialah kandungan terperinci Apakah perbezaan antara tinyint(1) dan tinyint(4) dalam Mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam