MySQL CAST はオーバーフローをどのように処理しますか?

WBOY
リリース: 2023-09-07 22:17:11
転載
946 人が閲覧しました

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)'
ログイン後にコピー

さて、MySQL は CAST の助けを借りて、これを次のように処理します。オーバーフロー:

mysql> Select CAST(9223372036854775807 AS UNSIGNED) +1;

+------------------------------------------+
| CAST(9223372036854775807 AS UNSIGNED) +1 |
+------------------------------------------+
| 9223372036854775808                      |
+------------------------------------------+
1 row in set (0.07 sec)
ログイン後にコピー

以上がMySQL CAST はオーバーフローをどのように処理しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート