在YII中插入两张表的最佳实践

Iam使用POSTGRES在Yii中开发一个网站。在YII中插入两张表的最佳实践

在那里有2个表table1, table2。当我插入一行到table1我只需要在table2中的同一行。

我该怎么做?

如果没有为任何的最佳做法......

或存储过程将是合适的吗?

在这个新的IAM ..

这是table1的插入代码:

$connection = Yii::app() -> db; 

$sql = 'INSERT query here';

$command = $connection -> createCommand($sql);

$command -> execute();

回答:

你有两种方式 1.要么你table1中使用trigger,经过插入将数据插入到表2 或 2.您可以编写一个商店procedure or function,它将插入值作为输入并将数据插入到两个表中。

这是一个触发器的例子。

CREATE OR REPLACE FUNCTION fn_data_ins_TRIGGER() 

RETURNS TRIGGER AS $$

BEGIN

insert into table2(table_fields) values(NEW.FIELD1,NEW.FIELD2);

RETURN OLD;

END;

$$

LANGUAGE plpgsql;

CREATE TRIGGER trig_fn_data_ins_TRIGGER

BEFORE INSERT ON table1

FOR EACH ROW EXECUTE PROCEDURE fn_data_ins_TRIGGER();

以上是 在YII中插入两张表的最佳实践 的全部内容, 来源链接: utcz.com/qa/263634.html

回到顶部