#24987 [Opn->Bgs]: autocommit
| From: | sniper@php.net | Date: | Fri, 08 Aug 2003 22:17:03 +0000 |
| Subject: | #24987 [Opn->Bgs]: autocommit | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-45599@lists.php.net to get a copy of this message | ||
ID: 24987
Updated by: sniper@php.net
Reported By: zotyo at srk dot ro
-Status: Open
+Status: Bogus
Bug Type: MSSQL related
Operating System: Win2K
PHP Version: 4.3.2
New Comment:
Sorry, but your problem does not imply a bug in PHP itself. For a
list of more appropriate places to ask for help using PHP, please
visit http://www.php.net/support.php as this bug system
is not the
appropriate forum for asking support questions.
Thank you for your interest in PHP.
Support questions belong elsewhere.
Previous Comments:
------------------------------------------------------------------------
[2003-08-08 10:41:18] zotyo at srk dot ro
Description:
------------
Hi,
MSSQL 2000 is using autocommit. Normally I can turn this off by
entering BEGIN TRANSACTION and can decide later to COMMIT or ROLLBACK
the transaction. My problem is that I have the following code:
MSSQL_PCONNECT($hostname,$username,$password) or DIE("DATABASE FAILED
TO RESPOND.");
mssql_select_db($dbName) or DIE("Table unavailable");
mssql_query('BEGIN TRANSACTION');
while($query = fgets($fp))
{
mssql_query($query);
}
mssql_query('ROLLBACK');
---
Errormsg in browser:
Warning: mssql_query(): message: The ROLLBACK TRANSACTION request has
no corresponding BEGIN TRANSACTION. (severity 16) in
c:\inetpub\wwwroot\php\restoredb.php on line 22
Is there something I didn't understand related to PHP or is this is a
bug? Pls. answer me, because i try to fix this problem since a week and
tried a lot of things to trick this out and I have no ideea of what
shall I do next... This would solve a huge problem of mine. A
transaction from my page can contain over 2K of insert into -s and I
have to rollback the transaction if one of the rows cannot be inserted.
Thank you for your time, Zoltan Papp.
Reproduce code:
---------------
MSSQL_PCONNECT($hostname,$username,$password) or DIE("DATABASE FAILED
TO RESPOND.");
mssql_select_db($dbName) or DIE("Table unavailable");
mssql_query('BEGIN TRANSACTION');
while($query = fgets($fp))
{
mssql_query($query);
}
mssql_query('ROLLBACK');
Expected result:
----------------
Transaction Rolled Back.
Actual result:
--------------
Warning: mssql_query(): message: The ROLLBACK TRANSACTION request has
no corresponding BEGIN TRANSACTION. (severity 16) in
c:\inetpub\wwwroot\php\restoredb.php on line 22
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=24987&edit=1