新しいレコードを TableB に挿入するトランザクションがあり、TableA に適切なサポート レコードがない場合は、TableA にも挿入し、その主キーを TableB への外部キー エントリとして使用します。
$transaction=$connection->beginTransaction();
try
{
$tableA->IsActive = 'Y';
$tableA->save();
$model->TableAId = $tableA->TableAId; //not sure what to put here for $tableA->TableAId
$model->save();
$transaction->commit();
}
この状況では、次のように使用できYii::app()->db->getLastInsertId();
ます$tableA->TableAId;
ここでは明らかに精度が非常に重要なので、適切なレコードが TableA と TableB の間で一致することを保証する必要があります。