sql >> データベース >  >> RDS >> Mysql

MySQLで厳密なsql_modeを有効にするにはどうすればよいですか?

    基本的に、SQLコマンドを使用する方法と構成ファイルを変更する方法の2つの方法があります。 SQLコマンドを使用して設定した場合、サーバーの再起動後に元に戻ります。

    SQLで行う:

    SET GLOBAL sql_mode='STRICT_TRANS_TABLES';

    設定ファイルで行う:

    [mysqld] sql_mode="STRICT_TRANS_TABLES"

    ファイルの場所はオペレーティングシステムによって異なります。ここでファイルを見つける場所の詳細: https://dev.mysql.com/doc/refman/5.7/en/option-files.html

    複数のモードを指定できることに注意してください:

    sql_mode="STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION"

    これは、SQLステートメントを使用する場合に特に重要です。これは、モード文字列全体を上書きする可能性があるためです。

    SQLモードの詳細については、 https://devを参照してください。 mysql.com/doc/refman/5.7/en/sql-mode.html



    1. Mysqliロールバックが機能していません

    2. SQLDeveloperでシーケンストリガーからPKを作成する方法を学ぶ

    3. エラー:SQLSTATE[HY000][2002]そのようなファイルまたはディレクトリはありません

    4. PHPコードの速度が低下している場所を特定する(パフォーマンスの問題)