Dear all,
This is the Bionic Fysh again. I have two quick questions:
1- when writing shell scripts, how does one allow the tilda ~ into the script ?
e.g
ls ~;
ls ~me;
user=you;
ls ~$user (N.B I think that for this one you need: ls `~$user`)
2- In FreeBSD 4.0, I would like for a... (6 Replies)
Hello All,
I am starting with UNIX. Any help is highly appreciated.
How to extract data using UNIX shell script? And how do you export data using UNIX shell scripts into Microsoft Excel format?
Thank you. (3 Replies)
Hi All,
I have written 4 sql queries . Now I want to write one SHELL SCRIPTING program for all these queries...
i.e
1.select * from head;
2. select * from detail;
3. delete from head;
4. delete from detail;
Please let me know how to write a shell script...
Thank you (1 Reply)
Hello,
Below is my input file's content ( in HP-UX platform ):
ABCD120672-B21 1
ABCD142257-002 1
ABCD142257-003 1
ABCD142257-006 1
From the above, I just want to get the field of 13 characters that comes after 'ABCD' i.e '120672-B21'... . Could... (2 Replies)
Hi guys,
i know how to run a single query using mysql embedded in a shell script as follows:
`mysql -umyuser -pmypass --host myhost database<<SQL
${query};
quit
SQL`
However, how would i be able to run several queries within the same connection?
The reason for this is i am creating... (3 Replies)
Hi,
Would someone know if I can fire nested sql queries in a shell script? Basically what I am trying to do is as follows:
my_sql=$(sqlplus -s /nolog<<EOF|sed -e "s/Connected. *//g"
connect... (2 Replies)
Hi All,
I tried executing set of queries from shell script but not able to capture the input query in the log file. The code looks something similar to below
sqlplus user/pwd@dbname << EOF > output.log
$(<inputfile.txt)
EOF
The above code is capturing the output of queries into... (9 Replies)
hi
i am trying to execute db2 queries through shell script. it's working fine but for few queries is not working ( those queries are taking time so the script is not waiting to get the complete the execution of that query )
could you please any one help me on this
is there any wait... (1 Reply)
Discussion started by: bhaskar v
1 Replies
LEARN ABOUT PHP
oci_rollback
OCI_ROLLBACK(3)OCI_ROLLBACK(3)oci_rollback - Rolls back the outstanding database transactionSYNOPSIS
bool oci_rollback (resource $connection)
DESCRIPTION
Reverts all uncommitted changes for the Oracle $connection and ends the transaction. It releases all locks held. All Oracle SAVEPOINTS are
erased.
A transaction begins when the first SQL statement that changes data is executed with oci_execute(3) using the OCI_NO_AUTO_COMMIT flag.
Further data changes made by other statements become part of the same transaction. Data changes made in a transaction are temporary until
the transaction is committed or rolled back. Other users of the database will not see the changes until they are committed.
When inserting or updating data, using transactions is recommended for relational data consistency and for performance reasons.
PARAMETERS
o $connection
- An Oracle connection identifier, returned by oci_connect(3), oci_pconnect(3) or oci_new_connect(3).
RETURN VALUES
Returns TRUE on success or FALSE on failure.
EXAMPLES
Example #1
oci_rollback(3) example
<?php
// Insert into several tables, rolling back the changes if an error occurs
$conn = oci_connect('hr', 'welcome', 'localhost/XE');
$stid = oci_parse($conn, "INSERT INTO mysalary (id, name) VALUES (1, 'Chris')");
// The OCI_NO_AUTO_COMMIT flag tells Oracle not to commit the INSERT immediately
// Use OCI_DEFAULT as the flag for PHP <= 5.3.1. The two flags are equivalent
$r = oci_execute($stid, OCI_NO_AUTO_COMMIT);
if (!$r) {
$e = oci_error($stid);
trigger_error(htmlentities($e['message']), E_USER_ERROR);
}
$stid = oci_parse($conn, 'INSERT INTO myschedule (startday) VALUES (12)');
$r = oci_execute($stid, OCI_NO_AUTO_COMMIT);
if (!$r) {
$e = oci_error($stid);
oci_rollback($conn); // rollback changes to both tables
trigger_error(htmlentities($e['message']), E_USER_ERROR);
}
// Commit the changes to both tables
$r = oci_commit($conn);
if (!r) {
$e = oci_error($conn);
trigger_error(htmlentities($e['message']), E_USER_ERROR);
}
?>
Example #2
Rolling back to a SAVEPOINT example
<?php
$stid = oci_parse($conn, 'UPDATE mytab SET id = 1111');
oci_execute($stid, OCI_NO_AUTO_COMMIT);
// Create the savepoint
$stid = oci_parse($conn, 'SAVEPOINT mysavepoint');
oci_execute($stid, OCI_NO_AUTO_COMMIT);
$stid = oci_parse($conn, 'UPDATE mytab SET id = 2222');
oci_execute($stid, OCI_NO_AUTO_COMMIT);
// Use an explicit SQL statement to rollback to the savepoint
$stid = oci_parse($conn, 'ROLLBACK TO SAVEPOINT mysavepoint');
oci_execute($stid, OCI_NO_AUTO_COMMIT);
oci_commit($conn); // mytab now has id of 1111
?>
NOTES
Note
Transactions are automatically rolled back when you close the connection, or when the script ends, whichever is soonest. You need
to explicitly call oci_commit(3) to commit the transaction.
Any call to oci_execute(3) that uses OCI_COMMIT_ON_SUCCESS mode explicitly or by default will commit any previous uncommitted
transaction.
Any Oracle DDL statement such as CREATE or DROP will automatically commit any uncommitted transaction.
SEE ALSO oci_commit(3), oci_execute(3).
PHP Documentation Group OCI_ROLLBACK(3)