深圳市和谐美安:数据库问题

来源:百度文库 编辑:神马品牌网 时间:2024/04/26 03:34:16
53. Given the table T1 containing an INTEGER column:
C1
---
1
A multithreaded ODBC/CLI application successfully executes the following pseudocode in sequence:
Thread 1: SQLConnect( hDbc1, "CERTDB", SQL_NTS, "", NULL, "", NULL );
Thread 2: SQLConnect( hDbc2, "CERTDB", SQL_NTS, "", NULL, "", NULL );
Thread 1: SQLSetConnectAttr(hDbc1,SQL_ATTR_AUTOCOMMIT, SQL_AUTOCOMMIT_ON );
Thread 2: SQLSetConnectAttr(hDbc2,SQL_ATTR_AUTOCOMMIT, SQL_AUTOCOMMIT_OFF );
Thread 1: SQLAllocHandle( SQL_HANDLE_STMT, hDbc1, &hStmt1 );
Thread 2: SQLAllocHandle( SQL_HANDLE_STMT, hDbc2, &hStmt2 );
Thread 1: SQLExecDirect( hStmt1, "SAVEPOINT sp1 ON ROLLBACK RETAIN CURSORS", SQL_NTS );
Thread 1: SQLExecDirect( hStmt1, "INSERT INTO T1 VALUES (2)", SQL_NTS );
Thread 2: SQLExecDirect( hStmt2, "SAVEPOINT sp1 ON ROLLBACK RETAIN CURSORS", SQL_NTS );
Thread 2: SQLExecDirect( hStmt2, "INSERT INTO T1 VALUES (3)", SQL_NTS );
Thread 1: SQLExecDirect( hStmt1, "INSERT INTO T1 VALUES (4)", SQL_NTS );
Thread 2: SQLExecDirect( hStmt2, "ROLLBACK TO SAVEPOINT sp1", SQL_NTS );
Thread 2: SQLExecDirect( hStmt2, "INSERT INTO T1 VALUES (5)", SQL_NTS );
Thread 1: SQLEndTran( SQL_HANDLE_DBC, hDbc1, SQL_ROLLBACK );
Which result set would be returned by:
Thread 2: SQLExecDirect( hStmt2, "SELECT c1 FROM t1 ORDER BY C1", SQL_NTS );
请解释一下为什么,谢谢