Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 16040|Απάντηση: 0

[Πηγή] Το εύρος τιμών των BigInt, Int, MediumInt, SmallInt και Tinyint στη MySQL

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 2020-5-17 21:45:54 | | |
Ο σχεδιασμός της βάσης δεδομένων MySQL, μεταξύ των οποίων, για τη βελτιστοποίηση της απόδοσης δεδομένων, η εξέταση του τύπου πεδίου είναι πολύ σημαντική, συνέλεξε ορισμένες πληροφορίες, ταξινομήθηκε και κοινοποιήθηκε, αυτό το άρθρο αφορά την εισαγωγή σύνταξης των mysql integer bigint, int, mediumint, smallint και tinyint, ως εξής:
1, Μπιγκίντ

Από -2^63 (-9223372036854775808) έως 2^63-1 (9223372036854775807) ακέραια δεδομένα (όλοι οι αριθμοί), το ανυπόγραφο εύρος είναι 0 έως

18446744073709551615。 Ένα bit είναι 8 byte.

2, Int

Ένας ακέραιος κανονικού μεγέθους. Το προσημασμένο εύρος είναι -2^31 (-2.147.483.648) έως 2^31 - 1 (2.147.483.647) ακέραια δεδομένα (όλοι οι αριθμοί) και το ανυπόγραφο εύρος είναι 0 έως 4294967295. Ένα bit έχει μέγεθος 4 byte.
Το συνώνυμο του SQL-92 για το int είναι ακέραιος.

3, μεσαίο int

Ένας ακέραιος μεσαίου μεγέθους με προσημασμένο εύρος από -8388608 έως 8388607 και ανυπόγραφο εύρος από 0 έως 16777215. Ένα bit έχει μέγεθος 3 byte.

4, μικρό

Ένας μικρός ακέραιος αριθμός. Το προσημασμένο εύρος είναι -2^15 (-32.768) έως 2^15 - 1 (32.767) ακέραια δεδομένα και το ανυπόγραφο εύρος είναι 0 έως 65535. Ένα bit έχει μέγεθος 2 byte. Η MySQL προσφέρει περισσότερες από αρκετές δυνατότητες και επειδή η MySQL είναι λογισμικό ανοιχτού κώδικα, μπορεί να μειώσει σημαντικά το συνολικό κόστος ιδιοκτησίας.

5, Μικροσκοπικό

Το προσημασμένο εύρος είναι -128 - 127 και το ανυπόγραφο εύρος είναι ακέραια δεδομένα από 0 έως 255. Ένα bit έχει μέγεθος 1 byte.

Σημειώστε ότι όλες οι αριθμητικές πράξεις γίνονται με προσημασμένες τιμές BIGINT ή DOUBLE, επομένως δεν πρέπει να χρησιμοποιείτε προσημασμένους μεγάλους ακέραιους αριθμούς μεγαλύτερους από 9223372036854775807 (63 bit), εκτός από τις συναρτήσεις bit! Σημειώστε ότι όταν οι δύο παράμετροι είναι ΑΚΕΡΑΙΕΣ τιμές,-、 + και * θα χρησιμοποιήσουν τη λειτουργία BIGINT! Αυτό σημαίνει ότι εάν πολλαπλασιάσετε με 2 μεγάλους ακέραιους αριθμούς (ή από μια συνάρτηση που επιστρέφει έναν ακέραιο), μπορείτε να λάβετε απροσδόκητα αποτελέσματα εάν το αποτέλεσμα είναι μεγαλύτερο από 9223372036854775807. Ένας αριθμός κινητής υποδιαστολής δεν μπορεί να είναι ανυπόγραφος, για έναν αριθμό κινητής υποδιαστολής μονής ακρίβειας, η ακρίβειά του μπορεί να είναι <=24, για έναν αριθμό κινητής υποδιαστολής διπλής ακρίβειας, είναι μεταξύ 25 και 53, αυτοί οι τύποι όπως FLOAT και DOUBLE περιγράφονται παρακάτω. Το FLOAT(X) έχει το ίδιο εύρος με το FLOAT και το DOUBLE, αλλά το μέγεθος της οθόνης και ο αριθμός των δεκαδικών ψηφίων είναι απροσδιόριστα. Στη MySQL 3.23, αυτή είναι μια πραγματική τιμή κινητής υποδιαστολής. Σε προηγούμενες εκδόσεις της MySQL, το FLOAT(precision) είχε πάντα 2 δεκαδικά ψηφία. Αυτή η σύνταξη παρέχεται για συμβατότητα ODBC.



Το εύρος τιμών κάθε τύπου δεδομένων στη MySQL

ΜΙΚΡΟΣΚΟΠΙΚΟ
-128 - 127
TINYINT ΑΝΥΠΟΓΡΑΦΟ
0 - 255
ΜΙΚΡΟ
-32768 - 32767
SMALLINT ΑΝΥΠΟΓΡΑΦΟ
0 - 65535
ΜΕΣΑΙΑ
-8388608 - 8388607
MEDIUMINT ΑΝΥΠΟΓΡΑΦΟ
0 - 16777215
INT ή INTEGER
-2147483648 - 2147483647
INT UNSIGNED ή INTEGER UNSIGNED
0 - 4294967295
ΜΠΙΓΚΙΝΤ
-9223372036854775808 - 9223372036854775807
BIGINT ΑΝΥΠΟΓΡΑΦΟ
0 - 18446744073709551615
ΦΛΟΤΕΡ
-3.402823466E+38 - -1.175494351E-38,0,1.175494351E-38 - 3.402823466E+38
ΔΙΠΛΗ ή ΔΙΠΛΗ ΑΚΡΙΒΕΙΑ ή ΠΡΑΓΜΑΤΙΚΗ
-1.7976931348623157E+308 - -2.2250738585072014E-308,0,2.2250738585072014E-308 - 1.7976931348623157E+308
ΔΕΚΑΔΙΚΟΣ[(Μ,[Δ])] ή ΑΡΙΘΜΗΤΙΚΟΣ(Μ,Δ)
Καθορίζεται από το M (το μήκος ολόκληρου του αριθμού, συμπεριλαμβανομένης της υποδιαστολής, τον αριθμό των ψηφίων στα αριστερά της υποδιαστολής, τον αριθμό των ψηφίων στα δεξιά της υποδιαστολής, αλλά όχι το αρνητικό πρόσημο) και το D (τον αριθμό των ψηφίων στα δεξιά της υποδιαστολής), το M έχει από προεπιλογή το 10 και το D από προεπιλογή το 0
ΗΜΕΡΟΜΗΝΙΑ
1000-01-01 - 9999-12-31
ΗΜΕΡΟΜΗΝΙΑ/ΩΡΑ
1000-01-01 00:00:00 - 9999-12-31 23:59:59
ΧΡΟΝΙΚΗ ΣΗΜΑΝΣΗ
1970-01-01 00:00:00 - Μια μέρα το 2037 (δεν ξέρω ακριβώς ποια μέρα, χεχε)
ΏΡΑ
-838:59:59' έως 838:59:59
ΈΤΟΣ[(2|4)]
Η προεπιλεγμένη είναι η μορφή 4-bit, η μορφή 4-bit είναι 1901 - 2155.0000 και η μορφή 2-bit είναι 70-69 (1970-2069)
CHAR(M) [ΔΥΑΔΙΚΟ] ή NCHAR(M) [ΔΥΑΔΙΚΟ]
Το M κυμαίνεται από 1 έως 255 και εάν δεν υπάρχει BINARY στοιχείο, κάνει διάκριση πεζών-κεφαλαίων και NCHAR σημαίνει χρήση του προεπιλεγμένου συνόλου χαρακτήρων. Συμπληρώστε με κενά στη βάση δεδομένων, αλλά τα κενά στο τέλος θα αφαιρεθούν αυτόματα όταν τα αφαιρέσετε.
[ΕΘΝΙΚΌ] VARCHAR(M) [ΔΥΑΔΙΚΌ]
Το M κυμαίνεται από 1 έως 255. Τα κενά στο τέλος της βάσης δεδομένων θα αφαιρεθούν αυτόματα.
TINYBLOB ή TINYTEXT
255 (2^8-1) χαρακτήρες
BLOB ή TEXT
65535 (2^16-1) χαρακτήρες
MEDIUMBLOB ή MEDIUMTEXT
16777215 (2^24-1) χαρακτήρες
LONGBLOB ή LONGTEXT
4294967295 (2^32-1) χαρακτήρες
ENUM('τιμή1','τιμή2',...)
Μπορεί να υπάρχουν συνολικά 65.535 διαφορετικές τιμές
SET('τιμή1','τιμή2',...)
Υπάρχουν έως 64 μέλη




Προηγούμενος:Αλλαγή γραμμής PHP PHP_EOL
Επόμενος:Εντολή ενημέρωσης yum ενημέρωσης Linux
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com