mysql の sql_mode 設定を修正するコツを教えます
sql_mode は見落とされやすい変数です。デフォルト値は null です。この設定では、不正なデータの挿入を許可するなど、一部の不正な操作が許可される可能性があります。この値は実稼働環境では厳密モードに設定する必要があるため、開発およびテスト段階で問題を発見できるように、開発およびテスト環境のデータベースも設定する必要があります。
1、SQL を実行して
select @@session.sql_mode;
グローバル レベルを表示します: 表示
select @@global.sql_mode;
2、修正
set @@session.sql_mode='xx_mode' set session sql_mode='xx_mode'
グローバル レベル: 修正
set global sql_mode='xx_mode'; set @@global.sql_mode='xx_mode';
session は省略できます。デフォルトのセッションは現在のセッションでのみ有効です。
グローバルに変更する場合は、高度な権限が必要です。これは次の接続でのみ有効になり、現在のセッションには影響しません。 MySQL の再起動後は設定ファイル内の対応する値を再読み込みするため無効になります。永続的にする必要がある場合は、設定ファイル内の値を変更する必要があります。
vi /etc/my.cnf
保存して終了し、サーバーを再起動すると、永続的に有効になります
sql_mode の一般的な値は次のとおりです:
ONLY_FULL_GROUP_BY
GROUP BY 集計操作の場合、SELECT の列が GROUP BY に現れない場合、その列が GROUP BY 句にないため、この SQL は無効になります
NO_AUTO_VALUE_ON_ZERO
この値は、自動拡張列の挿入に影響します。デフォルト設定では、0 または NULL を挿入すると、次の自動増加値が生成されます。このオプションは、ユーザーが値 0 を挿入する必要があり、列が自動増加する場合に便利です。
STRICT_TRANS_TABLES
このモードでは、トランザクション テーブルに値を挿入できない場合、現在の操作は中断され、非トランザクションに対する制限はありません。 tables
NO_ZERO_IN_DATE
厳密モードでは、日付または月をゼロにすることはできません。日付の月または日が 0 の値を含む限り、エラーが報告されますが、'0000-00-00 '例外
NO_ZERO_DATE
この値を設定すると、mysql データベースはゼロ日付の挿入を許可しません。ゼロの日付を挿入すると、警告ではなくエラーがスローされます。 0 以外の年、月、日のいずれかが要件を満たします。「0000-00-00」のみがエラー
ERROR_FOR_pISION_BY_ZERO
を報告します。 INSERT または UPDATE プロセス (データをゼロで除算すると、警告ではなくエラーが生成される場合)。モードが指定されていない場合、データがゼロで除算されると MySQL は NULL を返します
update table set num = 5 / 0; モードの設定後にエラーが報告されます。設定されていない場合、変更は次のようになります。成功すると、num の値は null
NO_AUTO_CREATE_USER
GRANT による空のパスワードを持つユーザーの作成を禁止します
#NO_ENGINE_SUBSTITUTION
必要なストレージ エンジンが無効になっているかコンパイルされていない場合、エラーがスローされます。この値が設定されていない場合、代わりにデフォルトのストレージ エンジンが使用され、例外がスローされます。
PIPES_AS_CONCAT
「||」を文字列接続演算子として扱う代わりにOR 演算子。これは Oracle データベースと同じであり、文字列スプライシング関数 Concat に似ています。
ANSI_QUOTES
ANSI_QUOTES を有効にした後は、二重引用符を使用できません。識別子として解釈されるため、文字列を引用符で囲むマーク
関連する推奨事項: "mysql チュートリアル "
以上がmysql の sql_mode 設定を修正するコツを教えますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











この記事では、DockerのMySQLメモリ使用量を最適化することを調査します。 監視手法(Docker統計、パフォーマンススキーマ、外部ツール)および構成戦略について説明します。 これらには、Dockerメモリの制限、スワッピング、およびcgroupsが含まれます

この記事では、MySQLの「共有ライブラリを開くことができない」エラーについて説明します。 この問題は、必要な共有ライブラリ(.so/.dllファイル)を見つけることができないMySQLの障害に起因しています。ソリューションには、システムのパッケージMを介してライブラリのインストールを確認することが含まれます。

この記事では、MySQLのAlter Tableステートメントを使用して、列の追加/ドロップ、テーブル/列の名前の変更、列データ型の変更など、テーブルを変更することについて説明します。

この記事では、PHPMyAdminの有無にかかわらず、LinuxにMySQLを直接インストールするのとPodmanコンテナを使用します。 それは、各方法のインストール手順を詳述し、孤立、携帯性、再現性におけるポッドマンの利点を強調しますが、

この記事では、自己完結型のサーバーレスリレーショナルデータベースであるSQLiteの包括的な概要を説明します。 SQLiteの利点(シンプルさ、移植性、使いやすさ)と短所(同時性の制限、スケーラビリティの課題)を詳しく説明しています。 c

このガイドは、HomeBrewを使用してMacOSに複数のMySQLバージョンをインストールおよび管理することを示しています。 Homebrewを使用して設置を分離し、紛争を防ぐことを強調しています。 この記事では、インストール、開始/停止サービス、および最高のPRAを詳述しています

記事では、証明書の生成と検証を含むMySQL用のSSL/TLS暗号化の構成について説明します。主な問題は、セルフ署名証明書のセキュリティへの影響を使用することです。[文字カウント:159]

記事では、MySQLワークベンチやPHPMyAdminなどの人気のあるMySQL GUIツールについて説明し、初心者と上級ユーザーの機能と適合性を比較します。[159文字]
