Re: Prepared statements and INSERT INTO ... SELECT statements

2018-04-06 Thread Ransom Briggs
That worked perfectly!  Thank you!

On Friday, April 6, 2018 at 4:22:57 PM UTC-5, Jeremy Evans wrote:
>
> On Friday, April 6, 2018 at 1:44:55 PM UTC-7, Ransom Briggs wrote:
>>
>> Hello,
>>
>> I have an insert statement that is inserting values selected from another 
>> table based on some filters.  I am trying to convert this to a prepared 
>> statement, but from what I can tell, the prepared statement version of 
>> insert 
>> 
>>  
>> only works for inserts of the the type "INSERT INTO ... VALUES.  Is there 
>> an easy way that I could turn an insert like the following into a prepared 
>> statement?
>>
>> DB[:bar].insert([:foo_id], DB[:foo].select(:id).where(biz: true)) 
>> # INSERT INTO "bar" ("foo_id") SELECT "id" FROM "foo" WHERE ("biz" IS TRUE)
>>
>> Thanks,
>> Ransom
>>
>
> Bound variables:
>
> DB[:bar].call(:insert, {:biz=>1}, [:foo_id], 
> DB[:foo].select(:id).where(biz: :$biz))
>
> Prepared statements:
>
> ps = DB[:bar].prepare(:insert, :insert_foo, [:foo_id], 
> DB[:foo].select(:id).where(biz: :$biz))
> ps.call(:biz=>true)
> DB.call(:insert_foo, :biz=>true)
>
> Thanks,
> Jeremy
>

-- 
You received this message because you are subscribed to the Google Groups 
"sequel-talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sequel-talk+unsubscr...@googlegroups.com.
To post to this group, send email to sequel-talk@googlegroups.com.
Visit this group at https://groups.google.com/group/sequel-talk.
For more options, visit https://groups.google.com/d/optout.


Re: Prepared statements and INSERT INTO ... SELECT statements

2018-04-06 Thread Jeremy Evans
On Friday, April 6, 2018 at 1:44:55 PM UTC-7, Ransom Briggs wrote:
>
> Hello,
>
> I have an insert statement that is inserting values selected from another 
> table based on some filters.  I am trying to convert this to a prepared 
> statement, but from what I can tell, the prepared statement version of 
> insert 
> 
>  
> only works for inserts of the the type "INSERT INTO ... VALUES.  Is there 
> an easy way that I could turn an insert like the following into a prepared 
> statement?
>
> DB[:bar].insert([:foo_id], DB[:foo].select(:id).where(biz: true)) # INSERT 
> INTO "bar" ("foo_id") SELECT "id" FROM "foo" WHERE ("biz" IS TRUE)
>
> Thanks,
> Ransom
>

Bound variables:

DB[:bar].call(:insert, {:biz=>1}, [:foo_id], 
DB[:foo].select(:id).where(biz: :$biz))

Prepared statements:

ps = DB[:bar].prepare(:insert, :insert_foo, [:foo_id], 
DB[:foo].select(:id).where(biz: :$biz))
ps.call(:biz=>true)
DB.call(:insert_foo, :biz=>true)

Thanks,
Jeremy

-- 
You received this message because you are subscribed to the Google Groups 
"sequel-talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sequel-talk+unsubscr...@googlegroups.com.
To post to this group, send email to sequel-talk@googlegroups.com.
Visit this group at https://groups.google.com/group/sequel-talk.
For more options, visit https://groups.google.com/d/optout.


Prepared statements and INSERT INTO ... SELECT statements

2018-04-06 Thread Ransom Briggs
Hello,

I have an insert statement that is inserting values selected from another 
table based on some filters.  I am trying to convert this to a prepared 
statement, but from what I can tell, the prepared statement version of 
insert 

 
only works for inserts of the the type "INSERT INTO ... VALUES.  Is there 
an easy way that I could turn an insert like the following into a prepared 
statement?

DB[:bar].insert([:foo_id], DB[:foo].select(:id).where(biz: true)) # INSERT 
INTO "bar" ("foo_id") SELECT "id" FROM "foo" WHERE ("biz" IS TRUE)

Thanks,
Ransom

-- 
You received this message because you are subscribed to the Google Groups 
"sequel-talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sequel-talk+unsubscr...@googlegroups.com.
To post to this group, send email to sequel-talk@googlegroups.com.
Visit this group at https://groups.google.com/group/sequel-talk.
For more options, visit https://groups.google.com/d/optout.