Heim  >  Artikel  >  Datenbank  >  Was bedeutet „unsigned“ in MySQL und wann wird es verwendet?

Was bedeutet „unsigned“ in MySQL und wann wird es verwendet?

王林
王林nach vorne
2023-09-17 15:29:021525Durchsuche

MySQL 中的“unsigned”是什么意思以及何时使用它?

„Unsigned“ ist in MySQL ein Datentyp. Immer wenn wir eine vorzeichenlose Zahl in eine Spalte schreiben, bedeutet das, dass Sie keine negativen Zahlen einfügen können. Angenommen, Sie können für sehr große Zahlen den vorzeichenlosen Typ verwenden.

Der maximale Bereich für unsigned int beträgt 4294967295.

Note: If you insert negative value you will get a MySQL error.

Hier ist eine Beispieldemonstration für vorzeichenlose Typen. Erstellen wir zunächst eine Tabelle mit einer „unsigned“-Spalte. Unten ist die Abfrage, die die Tabelle erstellt:

mysql> create table UnsignedDemoWithPositiveValue
   -> (
   -> Distance int unsigned
   -> );
Query OK, 0 rows affected (0.86 sec)

Wenn Sie versuchen, einen vorzeichenlosen oberen Grenzwert von 4294967295 einzufügen, wird ein Fehler generiert, da der Wert außerhalb des Bereichs liegt.

Fügen Sie Werte ein, die außerhalb des Bereichs liegen.

mysql> insert into UnsignedDemoWithPositiveValue values(4294967296);
ERROR 1264 (22003): Out of range value for column 'Distance' at row 1

Im obigen Beispiel habe ich 4294967296 eingegeben, was außerhalb des Bereichs liegt und daher einen Fehler generiert.

Jetzt füge ich einen weiteren Wert 4294967295 in die Tabelle ein.

mysql> insert into UnsignedDemoWithPositiveValue values(4294967295);
Query OK, 1 row affected (0.30 sec)

Oben können Sie sehen, dass die Abfrage erfolgreich ausgeführt wurde.

Schauen wir uns nun ein weiteres Beispiel an. Wenn ich negative Datensätze einfüge, erhalte ich die folgende Fehlermeldung -

mysql> insert into UnsignedDemoWithPositiveValue values(-124);
ERROR 1264 (22003): Out of range value for column 'Distance' at row 1

Ich werde jetzt nur noch positive Werte mit dem Wert 124 einfügen. Die Abfrage lautet wie folgt: -

mysql> insert into UnsignedDemoWithPositiveValue values(124);
Query OK, 1 row affected (0.86 sec)

Wie oben gezeigt, wurde die Abfrage erfolgreich ausgeführt.

Lassen Sie uns die Select-Anweisung verwenden, um Datensätze anzuzeigen. Die Abfrage lautet wie folgt: -

mysql> select *from UnsignedDemoWithPositiveValue;

Dies ist die Ausgabe -

+------------+
| Distance   |
+------------+
| 4294967295 |
| 124        |
+------------+
2 rows in set (0.00 sec)

Das obige ist der detaillierte Inhalt vonWas bedeutet „unsigned“ in MySQL und wann wird es verwendet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen