Re: [PHPLIB] db_oci8 and open cursor (statements) From: Alexander Aulbach (ssilk <email protected>)
Date: 01/24/00

On Mon, 24 Jan 2000, Jesse Swensen wrote:

}I am using the oci8 to access an Oracle database. I have a number of rows
}to process (400+). The processing includes select several groups of related
}records and working with them as well. After processing several rows (maybe
}100) I will get an error message about too many open cursors. I looked into

I solved this problem already in db_oracle.inc. Please feel free to adapt
the sources. If you have problems I will of course help you.

}the code and modified the query function to first check if $this->Parse
}already was set and if it was to call OCIFreeStatement for the value in
}Parse and then continue with the query. This seems to have taken care of
}the error message.
}
}Now I need to add a Commit and Rollback function to db_oci8 as part of the
}processing will delete some of the records and I only want to commit the
}delete under certain conditions. So, I added a var $commit = 1 to the class
}(commit is still the default). I programmed the simple commit and rollback
}functions.
}
}Now to the question. I want to know what happens to the statement when the
}Link_ID is committed or rolled back? Does the freeing of the statement
}nullify the action (say, the deleting of a row) of the statement (either by
}rollback or commit)? Or will the action still exist and the rollback or
}commit will work as designed?

For the first thought I mean, that freeing a statement would mean, that
Oracle never sees the statement and does not do anything.

But I have problems to understand, what you mean. Could you give an
example?

}I poked around in the source code, oci8.c, and don't have enough C
}experience to glean anything from it, one way or the other.
}
}Does anyone understand enough of oci8 (and this rambling) to give a
}definitive answer? I can test it myself, but once you delete this data, it
}is a hassle to re-create it. So, any help would be welcome.

-- 

SSilk - Alexander Aulbach - Herbipolis/Frankonia Minoris - (0931)22032

- PHP3 Base Library Mailing List. Send messages to <phplib <email protected>>. To unsubscribe, send "unsubscribe" to <phplib-request <email protected>> in the body, not the subject, of your message.