• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 536
  • Last Modified:

Binding Arrays of Parameters in ADO and ODBC

In ODBC there was possibility to bind array of values to parameter.
In ODBC documentation we read:

When an application uses array of parameters, there are two different ways this can be executed. One way is for the driver to rely on the array-processing capabilities of the back end, in which case the entire statement with the array of parameters is treated as one atomic unit. Oracle is an example of a data source that supports array processing capabilities.

This is what we really need and we always use for Oracle.
But now we deal with ADO and we find no similar features.
We can create Parameter object and assign a value for it. But how array of values can be assigned?
0
Kirill_
Asked:
Kirill_
1 Solution
 
kretzschmarCommented:
what is the purpose for doing such?
0
 
Kirill_Author Commented:
We need to insert a huge number of rows into a table.
This is the most effective method since only one statement is executed for many rows, this method eliminates most network overheads, internal Oracle overheads and so on.
Native Oracle SQL*Loader tool use this method (using OCI directly of course)

Another way to make bulky inserts was described in ODBC. This is SQLBulkOperations function. It's work not well with available ODBC drivers, but in theory it should work as follows.
First make select and get recordset, then bind array and make SQLBulkOperations with parameter SQL_ADD.
In ADO it's similar(we suppose) to open Recordset, add records to it and then make Update for Recordset. But the results is dreadful: ADO makes insert for every row, moreover it parse this statement every time before execute it.
0
 
nico5038Commented:

No comment has been added lately, so it's time to clean up this TA.
I will leave a recommendation in the Cleanup topic area that this question is:
 - PAQ'd and pts refunded
Please leave any comments here within the
next seven days.

PLEASE DO NOT ACCEPT THIS COMMENT AS AN ANSWER !

Nic;o)
0
 
NetminderCommented:
Per recommendation, points refunded and question closed.

Netminder
CS Moderator
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now