MySQLは数値式の評価中にオーバーフローをどのように処理しますか?
数式の評価中にオーバーフローが発生した場合、MySQLはエラーを生成することがわかっています。たとえば、最大の符号付きBIGNTは9223372036854775807であるため、次の式はエラーを生成します-
mysql> Select 9223372036854775807 + 1; ERROR 1690 (22003): BIGINT value is out of range in '(9223372036854775807+1)'
MySQLは、次の方法でこの種のオーバーフローを処理できます。
MySQLは、次のように値をunsignedに変換することにより、このような種類の操作を可能にします-
mysql> Select CAST(9223372036854775807 AS UNSIGNED) +1; +------------------------------------------+ | CAST(9223372036854775807 AS UNSIGNED) +1 | +------------------------------------------+ | 9223372036854775808 | +------------------------------------------+ 1 row in set (0.07 sec)
MySQLは、正確な値の算術を使用して、先行する式を処理できます。オーバーフローが発生するのは、オペランドの範囲によって異なるためです。たとえば、上記の計算は、次のようにDECIMAL値を使用して実行できます-
mysql> Select 9223372036854775807.0 + 1; +---------------------------+ | 9223372036854775807.0 + 1 | +---------------------------+ | 9223372036854775808.0 | +---------------------------+ 1 row in set (0.01 sec)
-
スプリングブートはローカルホストMySQLにどのように接続しますか
これには、application.properties-を使用します spring.datasource.username=yourMySQLUserName spring.datasource.password=yourMySQLPassword spring.datasource.url=jdbc:mysql://localhost:3306/yoruDatabaseName spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver 上記の構文を理解するために、テーブルを作成しましょう- mysql> create t
-
レールは宝石をどのように処理しますか?
数週間前、RubyGemsがRubyのロードパスを管理する方法について書きました。ただし、RailsはRubyGemsを直接使用せず、Bundlerを使用してgemを管理します。 Bundlerがどのように機能するかわからない場合、宝石がRailsに引き込まれる方法は少しに思えるかもしれません。 魔法の。 Gemfileに行を追加するにはどうすればよいですか アプリにコードを入れますか? Bundler、Rails、RubyGemsがどのように連携して、依存関係の処理を容易にしますか? なぜBundlerなのか? Bundlerは厳密な宝石マネージャーだと思います。つまり、 Bundler