在MySQL中,當您將負值設置給UNSIGNED列時,會出現錯誤。例如,讓我們首先創建一個帶有一個UNSIGNED字段的表 ?
mysql> create table UnsignedDemo -> ( -> Id int UNSIGNED -> ); Query OK, 0 rows affected (0.79 sec)
登錄后復制
每當您向聲明為 UNSIGNED 的列 Id 插入負值時,錯誤如下 –
mysql> INSERT INTO UnsignedDemo VALUES(-100); ERROR 1264 (22003): Out of range value for column 'Id' at row 1
登錄后復制
Example
然而,對于無符號的情況,正值效果很好。下面的示例中也是如此。使用插入命令在上述表中插入一些記錄。查詢如下 −
mysql> INSERT INTO UnsignedDemo VALUES(100); Query OK, 1 row affected (0.15 sec) mysql> INSERT INTO UnsignedDemo VALUES(1000); Query OK, 1 row affected (0.15 sec) mysql> INSERT INTO UnsignedDemo VALUES(0); Query OK, 1 row affected (0.11 sec) mysql> INSERT INTO UnsignedDemo VALUES(100000000); Query OK, 1 row affected (0.27 sec)
登錄后復制
使用 select 語句顯示表中的所有記錄。查詢如下 –
mysql> SELECT *FROM UnsignedDemo;
登錄后復制
輸出
+-----------+ | Id | +-----------+ | 100 | | 1000 | | 0 | | 100000000 | +-----------+ 4 rows in set (0.00 sec)
登錄后復制
以上就是當向 MySQL 中的 UNSIGNED 列插入負值時會發生什么?的詳細內容,更多請關注www.92cms.cn其它相關文章!