joomla2.5 アプリケーション用に MAMP を使用して mysql トリガーを作成しようとしています。私のトリガー:
CREATE TRIGGER `getDivision` BEFORE INSERT ON `encex_autoschedGames`
FOR EACH ROW BEGIN
select division into @div_a from encex_autoschedTeams where team_name = new.team_a;
set new.division = @div_a;
END
次のエラーが発生し続けます。
Column 'division' cannot be null
物語:
2 つのテーブルがあります: 1) ゲーム 2) チーム。チームには列「team_name」と「division」があります ゲームには列「team_a」、「team_b」、および「division」があります
サンプル テーブル:
Teams table:
Team_name, Division
"team1","A"
"Team2","A"
"Team3","A"
"Team4","A"
"Team5","B"
"Team6","B"
"Team7","B"
"Team8","B"
ゲームテーブルの場合、チームテーブルからディビジョンを取得したい..だから、Team1 Vs Team2 を挿入すると、ディビジョンが A として自動的に埋められる.
Games Table:
Team_a, Team_b, Division
"Team1", "Team2", "A"
ゲームテーブルに行が作成されたときに、team_name = team_a である「Teams」テーブルからの「division」で部門列を埋めるように、トリガーを作成したいと思います。
理想的には、team_a と team_b の両方でディビジョンが同じになるようにビルドしますが、ここでは小さなステップが最適であると考えています。
いくつかのデバッグの後、私のエラーは次の部分にあると思います。
何らかの理由で、where 句が null を返しています。いくつかのコマンドラインテストの後、そうではありません。たぶん、New.team_a が間違っていますか?