データベーステーブルA: テーブル task_desc_tab を作成します ( id INT(11) PRIMARY KEY NOT NULL COMMENT '自動増分主キー' AUTO_INCREMENT, <strong>taskname</strong> VARCHAR(200) NOT NULL COMMENT 'タスク名', sqlname VARCHAR(20) NOT NULL COMMENT 'sqlファイル名', params VARCHAR(5000) NOT NULL COMMENT 'タスクパラメータ(JSON文字列形式)', updatetime TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '更新時刻', 詳細 VARCHAR(3000) COMMENT 'タスクの説明情報(メモ用)' ) エンジン = InnoDB デフォルト文字セット = utf8; データベースB: テーブル exec_plan_tab を作成する ( id INT(11) 主キー NOT NULL AUTO_INCREMENT, <strong>タスク名</strong> VARCHAR(200) NOT NULL、 開始日 DATE NOT NULL、 終了日 DATE NOT NULL、 updatetime TIMESTAMP デフォルト CURRENT_TIMESTAMP、 制約 exec_plan_tab_task_desc_tab_taskname_fk 外部キー (taskname) 参照 task_desc_tab (taskname) ) エンジン = InnoDB デフォルト文字セット = utf8; 目標: テーブル B の taskname が外部キーとなるようにテーブルを作成します。テーブル A の taskname フィールドを参照してください。テーブルを作成すると、次のエラーが報告されます。
トラブルシューティングの結果、問題の原因が判明しました。テーブル A の taskname は、レコードの一意性を確保し、テーブル B で参照されるときに曖昧さを避けるために、UNIQUE フィールドを使用して変更する必要があります。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
背景この記事では主に、MySQL が更新ステートメントを実行するときに、元のデータと同一の (つまり...
目次1. 動的型付けとは何ですか? 2. データ型2.1 プリミティブ型 (6 つのプリミティブ型、...
誰もが色にとても敏感だと思います。私たちの目が見るところにはどこにでも色があります。では、CSS で...
序文今日は、聖杯レイアウトとダブルウィングレイアウト、そしてそれらの違いについてお話しします。この2...
誰もがこんな気持ちになったことがあると思います。30 秒の広告が入った動画を見ると、とても不快に感じ...
目次1. サーバーの状態を確認します。 2. ルートパスワードを変更します。 3. mysqlser...
序文MySQL は、クライアント/サーバー構造に基づく、高速、高性能、マルチスレッドのオープン ソー...
以前は、ほとんどすべての Web サイトに、すべてのページをリストしたサイトマップ ページがありまし...
<a href="https://www.jb51.net/" title...
ミニネットMininet は軽量のソフトウェア定義ネットワークおよびテスト プラットフォームです。軽...
システムバージョン [root@ ~]# cat /etc/redhat-release CentO...
目次1 バージョンと計画1.1 バージョン情報: 1.2 クラスター計画2. 展開1. ファイアウォ...
1. コマンドの紹介tac (cat の逆順) コマンドは、ファイルの内容を行単位で逆順に出力します...
コマンド: mysqlhotcopyこのコマンドは、ファイルをコピーする前にテーブルをロックし、不完...
ある達人がかつて、自分の妻のことを知るのと同じくらい、自分が管理するデータベースのことを知るべきだと...