MySQL 如何處理超出範圍的數值?
對超出列資料型別允許範圍的MySQL 數值的處理取決於SQL 模式,如下-
(A) 啟用SQL 嚴格模式 - 啟用嚴格SQL 模式時,MySQL 在輸入範圍值時傳回錯誤。在這種情況下,部分或全部值的插入會失敗。
例如,我們建立了一個包含兩列的表,其資料類型為 TINYINT 和 UNSIGNED TINYINT。
mysql> Create table counting(Range1 Tinyint, Range2 Tinyint Unsigned); Query OK, 0 rows affected (0.14 sec)
登入後複製
現在藉助以下命令,我們啟用了嚴格的SQL 模式
mysql> Set SQL_MODE ='traditional'; Query OK, 0 rows affected (0.00 sec)
登入後複製
現在,如果我們嘗試將超出範圍的值插入到列中,MySQL 會反映錯誤,並且兩次插入都失敗,可以透過下面的查詢進行檢查-
mysql> Insert into Counting(Range1, Range2) Values(256,256); ERROR 1264 (22003): Out of range value for column 'Range1' at row 1 mysql> Select * from counting; Empty set (0.00 sec)
登入後複製
(B) 停用SQL 嚴格模式- 當限制限制性SQL 模式時,MySQL 將會將該數值剪裁到該列資料類型的適當端點,並且累積結果值。 MySQL 會反映警告,這些警告是由於剪裁而發生的列賦值轉換的結果。
例如,如果我們在停用 SQL 嚴格模式後將值插入列中,MySQL 將反映警告並將值修剪到適當的終點後儲存它們。可以透過下面的查詢來理解 -
mysql> Set SQL_MODE = ''; Query OK, 0 rows affected (0.00 sec) mysql> Insert Into Counting(Range1,Range2) values (256,256); Query OK, 1 row affected, 2 warnings (0.02 sec) mysql> Show Warnings; +---------+------+-------------------------------------------------+ | Level | Code | Message | +---------+------+-------------------------------------------------+ | Warning | 1264 | Out of range value for column 'Range1' at row 1 | | Warning | 1264 | Out of range value for column 'Range2' at row 1 | +---------+------+-------------------------------------------------+ 2 rows in set (0.00 sec) mysql> Select * from Counting; +--------+--------+ | Range1 | Range2 | +--------+--------+ | 127 | 255 | +--------+--------+ 1 row in set (0.00 sec)
登入後複製
以上是MySQL 如何處理超出範圍的數值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前
By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
擊敗分裂小說需要多長時間?
3 週前
By DDD
R.E.P.O.保存文件位置:在哪里以及如何保護它?
3 週前
By DDD

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

在 Linux 中運行 MySQl(有/沒有帶有 phpmyadmin 的 podman 容器)

哪些流行的MySQL GUI工具(例如MySQL Workbench,PhpMyAdmin)是什麼?
