Desain database MySQL, di antaranya, untuk optimasi kinerja data, pertimbangan jenis bidang sangat penting, mengumpulkan beberapa informasi, disortir dan dibagikan, artikel ini membahas tentang pengenalan sintaks mysql integer bigint, int, mediumint, smallint dan tinyint, sebagai berikut:
1 、 bigint
Dari -2^63 (-9223372036854775808) hingga 2^63-1 (9223372036854775807) data bilangan bulat (semua angka), rentang yang tidak ditandatangani adalah 0 hingga
18446744073709551615。 Satu bit adalah 8 byte.
2 、 int
Bilangan bulat berukuran normal. Rentang yang ditandatangani adalah -2^31 (-2,147,483,648) hingga 2^31 - 1 (2,147,483,647) data bilangan bulat (semua angka), dan rentang yang tidak ditandatangani adalah 0 hingga 4294967295. Bit berukuran 4 byte. Sinonim SQL-92 untuk int adalah bilangan bulat.
3 、 mediumint
Bilangan bulat berukuran sedang dengan rentang bertanda -8388608 hingga 8388607 dan rentang tidak ditandatangani dari 0 hingga 16777215. Bit berukuran 3 byte.
4 、 smallint
Bilangan bulat kecil. Rentang yang ditandatangani adalah -2^15 (-32.768) hingga 2^15 - 1 (32.767) data bilangan bulat, dan rentang yang tidak ditandatangani adalah 0 hingga 65535. Bit berukuran 2 byte. MySQL menawarkan lebih dari cukup fitur, dan karena MySQL adalah perangkat lunak sumber terbuka, MySQL dapat secara signifikan mengurangi total biaya kepemilikan.
5 、 tinyint
Rentang yang ditandatangani adalah -128 - 127, dan rentang yang tidak ditandatangani adalah data bilangan bulat dari 0 hingga 255. Bit berukuran 1 byte.
Perhatikan bahwa semua operasi aritmatika dilakukan dengan nilai BIGINT atau DOUBLE yang ditandatangani, jadi Anda tidak boleh menggunakan bilangan bulat besar yang ditandatangani lebih besar dari 9223372036854775807 (63 bit), kecuali untuk fungsi bit! Perhatikan bahwa ketika kedua parameter tersebut adalah nilai INTEGER,-、 + dan * akan menggunakan operasi BIGINT! Ini berarti bahwa jika Anda mengalikan dengan 2 bilangan bulat besar (atau dari fungsi yang mengembalikan bilangan bulat), Anda bisa mendapatkan hasil yang tidak terduga jika hasilnya lebih besar dari 9223372036854775807. Angka floating-point tidak dapat ditandatangani, untuk nomor floating-point presisi tunggal, presisinya bisa <=24, untuk angka floating-point presisi ganda, antara 25 dan 53, jenis ini seperti FLOAT dan DOUBLE dijelaskan di bawah ini. FLOAT(X) memiliki rentang yang sama dengan FLOAT dan DOUBLE, tetapi ukuran tampilan dan jumlah tempat desimal tidak ditentukan. Di MySQL 3.23, ini adalah nilai floating-point yang sebenarnya. Dalam versi MySQL sebelumnya, FLOAT (presisi) selalu memiliki 2 tempat desimal. Sintaks ini disediakan untuk kompatibilitas ODBC.
Rentang nilai setiap tipe data di MySQL
TINYINT -128 - 127 TINYINT TIDAK DITANDATANGANI 0 - 255 SMALLINT -32768 - 32767 SMALLINT TIDAK DITANDATANGANI 0 - 65535 MEDIUMINT -8388608 - 8388607 MEDIUMINT TIDAK DITANDATANGANI 0 - 16777215 INT atau BILANGAN BULAT -2147483648 - 2147483647 INT TIDAK DITANDATANGANI atau INTEGER TIDAK DITANDATANGANI 0 - 4294967295 BIGINT -9223372036854775808 - 9223372036854775807 BIGINT TIDAK DITANDATANGANI 0 - 18446744073709551615 MENGAPUNG -3.402823466E+38 - -1.175494351E-38,0,1.175494351E-38 - 3.402823466E+38 DOUBLE atau DOUBLE PRECISION atau REAL -1.7976931348623157E+308 - -2.2250738585072014E-308,0,2.2250738585072014E-308 - 1.7976931348623157E+308 DESIMAL [(M,[D])] atau NUMERIK(M,D) Ditentukan oleh M (panjang seluruh angka, termasuk titik desimal, jumlah digit di sebelah kiri titik desimal, jumlah digit di sebelah kanan titik desimal, tetapi bukan tanda negatif) dan D (jumlah digit di sebelah kanan titik desimal), M default ke 10 dan D default ke 0 TANGGAL 1000-01-01 - 9999-12-31 TANGGALWAKTU 1000-01-01 00:00:00 - 9999-12-31 23:59:59 STEMPEL WAKTU 1970-01-01 00:00:00 - Suatu hari di tahun 2037 (Saya tidak tahu persis hari berapa, hehe) WAKTU -838:59:59' hingga 838:59:59 TAHUN[(2|4)] Defaultnya adalah format 4-bit, format 4-bit adalah 1901 - 2155.0000, dan format 2-bit adalah 70-69 (1970-2069) CHAR(M) [BINER] atau NCHAR(M) [BINER] M berkisar dari 1 - 255, dan jika tidak ada item BINER, itu peka huruf besar/kecil, dan NCHAR berarti menggunakan set karakter default. Isi dengan spasi di database, tetapi spasi di akhir akan secara otomatis dihapus saat Anda mengeluarkannya. [NASIONAL] VARCHAR(M) [BINER] M berkisar dari 1 hingga 255. Spasi di akhir database akan dihapus secara otomatis. TINYBLOB atau TINYTEXT 255 (2^8-1) karakter BLOB atau TEKS 65535 (2^16-1) karakter MEDIUMBLOB atau MEDIUMTEXT 16777215 (2^24-1) karakter LONGBLOB atau LONGTEXT 4294967295 (2^32-1) karakter ENUM('nilai1','nilai2',...) Mungkin ada total 65.535 nilai yang berbeda SET('nilai1','nilai2',...) Ada hingga 64 anggota
|