外部キーの変更(削除/更新時)でアクションを取得しようとしています。
INFORMATION_SCHEMA.key_column_usage を調べて確認しようとしました:
SELECT *
FROM `INFORMATION_SCHEMA`.`key_column_usage`
WHERE `referenced_table_schema` = '{$this->dbName}'
AND `referenced_table_name` IS NOT NULL
AND `table_name` = '{$this->tableName}'
次のように表示されます。
0 =>
array (size=12)
'CONSTRAINT_CATALOG' => string 'def' (length=3)
'CONSTRAINT_SCHEMA' => string 'test' (length=4)
'CONSTRAINT_NAME' => string 'profiles_ibfk_1' (length=15)
'TABLE_CATALOG' => string 'def' (length=3)
'TABLE_SCHEMA' => string 'test' (length=4)
'TABLE_NAME' => string 'profiles' (length=8)
'COLUMN_NAME' => string 'id' (length=2)
'ORDINAL_POSITION' => string '1' (length=1)
'POSITION_IN_UNIQUE_CONSTRAINT' => string '1' (length=1)
'REFERENCED_TABLE_SCHEMA' => string 'test' (length=4)
'REFERENCED_TABLE_NAME' => string 'users' (length=5)
'REFERENCED_COLUMN_NAME' => string 'id' (length=2)
....
INFORMATION_SCHEMA.TABLE_CONSTRAITS も試してみましたが、次のようになりました。
0 =>
array (size=6)
'CONSTRAINT_CATALOG' => string 'def' (length=3)
'CONSTRAINT_SCHEMA' => string 'test' (length=4)
'CONSTRAINT_NAME' => string 'PRIMARY' (length=7)
'TABLE_SCHEMA' => string 'test' (length=4)
'TABLE_NAME' => string 'profiles' (length=8)
'CONSTRAINT_TYPE' => string 'PRIMARY KEY' (length=11)
....
2 つのケースでの削除/更新時のアクションについては何もありません。
私はそれを得ることができますか?どのように?もちろんできれば。