MySQL CAST 如何處理溢位?
MySQL CAST 可以處理數字表達式評估期間發生的溢位。假設數字表達式評估產生溢位,則 MySQL 會顯示錯誤訊息。現在,為了處理此溢位,我們可以藉助 CAST 將該數字值更改為 UNSIGNED。
例如,向 BIGINT 最大值新增 1 時,MySQL 會因溢位而產生錯誤,如下所示:
mysql> Select 9223372036854775807 + 1; ERROR 1690 (22003): BIGINT value is out of range in '(9223372036854775807+1)'
現在,藉助 CAST,MySQL 會處理此類溢位,如下所示:
mysql> Select CAST(9223372036854775807 AS UNSIGNED) +1; +------------------------------------------+ | CAST(9223372036854775807 AS UNSIGNED) +1 | +------------------------------------------+ | 9223372036854775808 | +------------------------------------------+ 1 row in set (0.07 sec)
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP