MySQL-databaseontwerp, onder andere, voor optimalisatie van dataprestaties, veldtype-overweging is erg belangrijk; er is informatie verzameld, gesorteerd en gedeeld, dit artikel gaat over de syntaxis van mysql integer bigint, int, mediumint, smallint en tinyint, als volgt:
1、bigint
Van -2^63 (-9223372036854775808) tot 2^63-1 (9223372036854775807) gehele getalgegevens (alle getallen) is het onondertekende bereik 0 tot
18446744073709551615。 Eén bit is 8 bytes.
2、int
Een geheel getal van normale grootte. Het ondertekende bereik is -2^31 (-2.147.483.648) tot 2^31 - 1 (2.147.483.647) gehele data (alle getallen), en het ongetekende bereik is 0 tot 4294967295. Een bit is 4 bytes groot. Het SQL-92-synoniem voor int is integer.
3、mediumint
Een middelgroot geheel getal met een getekend bereik van -8388608 tot 8388607 en een ongetekend bereik van 0 tot 16777215. Een bit is 3 bytes groot.
4、smallint
Een klein geheel getal. Het ondertekende bereik is -2^15 (-32.768) tot 2^15 - 1 (32.767) gehele data, en het ongetekende bereik is 0 tot 65535. Een bit is 2 bytes groot. MySQL biedt meer dan genoeg functies, en omdat MySQL open source software is, kan het de totale eigendomskosten aanzienlijk verlagen.
5、tinyint
Het ondertekende bereik is -128 - 127, en het onondertekende bereik is gehele getalgegevens van 0 tot 255. Een bit is 1 byte groot.
Let op dat alle rekenkundige bewerkingen worden uitgevoerd met getekende BIGINT- of DOUBLE-waarden, dus je moet geen ondertekende grote gehele getallen groter dan 9223372036854775807 gebruiken (63 bits), behalve voor bitfuncties! Let op dat wanneer de twee parameters INTEGER-waarden zijn,-、 + en * de BEWERKINGEN BIGGINT gebruiken! Dit betekent dat als je vermenigvuldigt met 2 grote gehele getallen (of van een functie die een geheel getal teruggeeft), je onverwachte resultaten kunt krijgen als het resultaat groter is dan 9223372036854775807. Een floating-point getal kan niet onondertekend zijn; voor een single-precision floating-point getal kan de precisie <=24 zijn, voor een double-precision floating-point getal ligt het tussen 25 en 53, deze typen zoals FLOAT en DOUBLE worden hieronder beschreven. FLOAT(X) heeft hetzelfde bereik als FLOAT en DOUBLE, maar de schermgrootte en het aantal decimalen zijn niet gedefinieerd. In MySQL 3.23 is dit een echte floating-point waarde. In eerdere versies van MySQL had FLOAT(precision) altijd 2 decimalen. Deze syntaxis is beschikbaar voor ODBC-compatibiliteit.
Het waardebereik van elk datatype in MySQL
TINYINT -128 - 127 TINYINT ONONDERTEKEND 0 - 255 SMALLINT -32768 - 32767 SMALLINT ONONDERTEKEND 0 - 65535 MEDIUMINT -8388608 - 8388607 MEDIUMINT ONONDERTEKEND 0 - 16777215 INT of INTEGER -2147483648 - 2147483647 INT ONONDERTEKEND of GEHEEL GETAL ONONDERTEKEND 0 - 4294967295 BIGINT -9223372036854775808 - 9223372036854775807 BIGINT ONGETEKEND 0 - 18446744073709551615 DRIJVER -3.402823466E+38 - -1.175494351E-38,0,1.175494351E-38 - 3.402823466E+38 DUBBELE of DUBBELE PRECISIE of ECHT -1.7976931348623157E+308 - -2.2250738585072014E-308,0,2.2250738585072014E-308 - 1.7976931348623157E+308 DECIMAAL[(M,[D])] of NUMERIEK(M,D) Bepaald door M (de lengte van het gehele getal, inclusief het decimale punt, het aantal cijfers links van het decimale punt, het aantal cijfers rechts van het decimale punt, maar niet het negatieve teken) en D (het aantal cijfers rechts van het decimale punt), staat M standaard op 10 en D op 0 DATUM 1000-01-01 - 9999-12-31 DATUM 1000-01-01 00:00:00 - 9999-12-31 23:59:59 TIJDSTEMPEL 1970-01-01 00:00:00 - Eén dag in 2037 (ik weet niet precies welke dag, hehe) TIJD -838:59:59' tot 838:59:59 JAAR[(2|4)] De standaard is 4-bit formaat, het 4-bit formaat is 1901 - 2155.0000, en het 2-bit formaat is 70-69 (1970-2069) CHAR(M) [BINAIR] of NCHAR(M) [BINAIR] M varieert van 1 tot 255, en als er geen BINAIR item is, is het hoofdlettergevoelig en betekent NCHAR het gebruik van de standaard tekenset. Vul in met spaties in de database, maar de spaties aan het einde worden automatisch verwijderd als je ze eruit haalt. [NATIONAAL] VARCHAR(M) [BINAIR] M varieert van 1 tot 255. De ruimtes aan het einde van de database worden automatisch verwijderd. TINYBLOB of TINYTEXT 255 (2^8-1) tekens BLOB of TEKST 65535 (2^16-1) tekens MEDIUMBLOB of MEDIUMTEXT 16777215 (2^24-1) personages LONGBLOB of LONGTEXT 4294967295 (2^32-1) personages ENUM('value1','value2',...) Er kunnen in totaal 65.535 verschillende waarden zijn SET('value1','value2',...) Er zijn tot 64 leden
|