如何同时将多条记录插入到一个表中? [英] How do you insert multiple records into a table at the same time?
本文介绍了如何同时将多条记录插入到一个表中?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有两个表 Accommodation
和 Facility
,它们与第三个表 Accommodation_facility
以多对多关系连接.
I have two tables Accommodation
and Facility
, which are connected in a many-to-many relationship with a third table, Accommodation_facility
.
- 住宿(accommodation_id、住宿类型、名称)
- 设施(facility_id、facility_name)
- Accommodation_facility(accommodation_id、facility_id)
- Accommodation (accommodation_id, accommodation_type, name)
- Facility (facility_id, facility_name)
- Accommodation_facility (accommodation_id, facility_id)
使用 Yii,如何在 Accomodation_facility
表中插入多条数据记录?
Using Yii, how can you insert multiple records of data into the Accomodation_facility
table?
推荐答案
使用循环插入非常慢.假设您有 5000 行要插入,这样大约需要 6 分钟(为每条记录单独插入).最好使用单个查询插入数据:
Inserting using a loop is very slow. Let's say you have 5000 rows to insert, it's going to take around 6 minutes that way (separate insert for each record). It's better to insert the data with a single query:
$values = '(null, "your string"), (null, "next string"), (null, "third string")';
$sql = 'INSERT INTO table_data (id, data) VALUES ' . $values;
$command = Yii::app()->db->createCommand($sql);
$command->execute();
这将花费 1/10 的时间.
That will take 1/10 of the time.
这篇关于如何同时将多条记录插入到一个表中?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文