# Create 1000 items in DB

**URL:** <https://www.ruby-forum.com/t/create-1000-items-in-db/172275>\
**Category:** Rails\
**Created:** [July 18, 2009, 10:00am UTC](https://www.ruby-forum.com/t/create-1000-items-in-db/172275 "2009-07-18T10:00:10Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![remco](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/9d8465/32.png) [@remco](https://www.ruby-forum.com/u/remco)\
**Post date:** [July 18, 2009, 10:00am UTC](https://www.ruby-forum.com/t/create-1000-items-in-db/172275/1 "2009-07-18T10:00:10Z")

</div>

Hi,

I want to create 1000 items at once(vouchers) in my db. My class name is  
Voucher. How can ik realize this…?

remco

---

<div class="post-metadata">

**Author:** ![remco](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/9d8465/32.png) [@remco](https://www.ruby-forum.com/u/remco)\
**Post date:** [July 18, 2009, 1:24pm UTC](https://www.ruby-forum.com/t/create-1000-items-in-db/172275/2 "2009-07-18T13:24:28Z")

</div>

and there is always the obvious solution:

1000.times do  
Voucher.create(:attribute1 =\> ‘value1’)  
end

---

<div class="post-metadata">

**Author:** ![remco](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/9d8465/32.png) [@remco](https://www.ruby-forum.com/u/remco)\
**Post date:** [July 18, 2009, 4:28pm UTC](https://www.ruby-forum.com/t/create-1000-items-in-db/172275/3 "2009-07-18T16:28:13Z")

</div>

MaD wrote:

> and there is always the obvious solution:
> 
> 1000.times do  
> Voucher.create(:attribute1 =\> ‘value1’)  
> end

In this case, however, the obvious solution is not the best: each call  
to Voucher.create is a separate DB query. It’s far better to create one  
query to insert all the objects; unfortunately, Rails makes this  
somewhat difficult. You can either use a plugin such as ar-extensions  
or build the SQL yourself.

## Best,

Marnen Laibow-Koser  
[http://www.marnen.org](http://www.marnen.org)  
removed\_email\_address@domain.invalid

---

<div class="post-metadata">

**Author:** ![remco](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/9d8465/32.png) [@remco](https://www.ruby-forum.com/u/remco)\
**Post date:** [July 19, 2009, 3:30am UTC](https://www.ruby-forum.com/t/create-1000-items-in-db/172275/4 "2009-07-19T03:30:31Z")

</div>

Hey Remco,

What format is your input data in?  
Will this happen regularly or is this a one-time insert?

It sounds like you might want to look at ActiveRecord Extensions:

> **[GitHub - zdennis/ar-extensions: ActiveRecord::Extension (aka ar-extensions) is a...](https://github.com/zdennis/ar-extensions/tree/master)**
>
> master

Regards,  
Gustav P.
