ホームページ >バックエンド開発 >PHPチュートリアル >データベースの int フィールド型に関連する問題について考えたこともありませんでした。
データベースの int フィールド型の問題について考えたこともありませんでした。 ! ! !
データベース内の int(4) と int(10) には違いがありますか?
phpのtime()の場合、タイムスタンプはint(?)で書くべきでしょうか?
なぜなら
の出力が実際には
2147483647
であることを偶然発見したからです。これは、前の知識ポイントを少し覆すものです。SQL インジェクションを防ぐすべての方法で intval を追加できるわけではありません。
誰がそれを説明できますか?
-----解決策----------------------
データベースint(4) と int(10) の間に定性的な違いはありません。 UNSIGNED ZEROFILL 属性がある場合、出力幅を制御できます (先頭に 0 を付けます)
---- --解決策-------
何も持っていない場合は、公式マニュアルで非常にわかりやすく説明されています。そのためには、公式マニュアルをよく読み、盲目的に結論を出さないでください。
最大値はオペレーティング システムによって異なります。 32 ビット システムでの符号付き整数の最大範囲は、-2147483648 ~ 2147483647 です。たとえば、このようなシステムでは、intval('1000000000000') は 2147483647 を返します。64 ビット システムでは、符号付き整数値の最大値は 9223372036854775807 です。