While we're kicking array binding around, I've got a couple ideas/issues to address...
1) I'm wondering about the desirability of an add'l status code to indicate a parameter tuple could not be sent to the server ? E.g., in my case, there's a limit to the size of message I can send to the server, so if an app binds more tuples than can be sent, the driver must either A) retain some state so it can pick up where the prior request left off (which may open the window to hell if things go wrong) B) flag the whole execution as failed (which is kindof a pain for the app) C) send as many tuples as possible, then mark the remainder as "unsent" and the app can then resubmit as needed, thereby alleviating the burden on the driver. I'll be doing (C) for DBD::Teradata using a status code of -2, but thought it might be generally useful to reserve a status code for that purpose ? 2) I've got a version issue: newer versions of Teradata support bulk operations, but older versions don't, and I need to support both. If I implement execute_array() in my driver, but discover the DBMS is an older version, how can I safely throw the call back up to the DBI default implementation ? (Its probably something very simple and obvious, but its got me stumped...) Dean Arnold Presicient Corp.
