-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Oci8 improvements #5
Conversation
…session_mode Charset is 4th parameter of oci_connect and cannot be specified as part of TNS string like in PDOOci. I've added session_mode param, because OCI_DEFAULT mode is insufficient when new user/database will be created and it is necessary to connect as OCI_SYSDBA. I saw some CREATE USER statements in schema manager, so this param is just in case. Fixed error handling in OCI8Connection. When oci_connect failed, $_dbh is boolean, so cannot be used in oci_error();
…me like OCI_NO_AUTO_COMMIT - therefor any changes that are made without transaction are rolled back. Now the OCI8 Driver act like any other driver - commit after execute by default, and starting transaction when invoked $conn->beginTransaction()
can you explain why you remove the autocommit of oci8? from my understanding it shouldn't produce any problems and is the preferred oracle way. Isn't charset already included? And what does OCI_SYSDBA do? |
I am not sure enough of the changes, can you open up issues on www.doctrine-project.org/jira for each of the different changes? That way i have a better way to analyze them. |
Hi Benjamin,
For a better understanding:
So If I want to use some extension/bundle/plugin that was written on *SQL, I will not be able to use it on Oracle through OCI8. |
correct sql expression in Types section
Update from master repository
Upd from HEAD
Hi!
I made some OCI8 improvements, that should be added into doctrine/master. I described them in commit logs.
Here they are:
Added new parameters into OCI8Connection constructor - $charset and $session_mode
Charset is 4th parameter of oci_connect and cannot be specified as part of TNS string like in PDOOci.
I've added session_mode param, because OCI_DEFAULT mode is insufficient when new user/database will be created and it is necessary to connect as OCI_SYSDBA. I saw some CREATE USER statements in schema manager, so this param is just in case.
Fixed error handling in OCI8Connection. When oci_connect failed, $_dbh is boolean, so cannot be used in oci_error();
OCI8Statement is using for all statements OCI_DEFAULT which is the same like OCI_NO_AUTO_COMMIT - therefor any changes that are made without transaction are rolled back.
Now the OCI8 Driver act like any other driver - commit after execute by default, and starting transaction when invoked $conn->beginTransaction()
Thank you for mergin the changes into core.