谢谢

解决方案 »

  1.   

    ①.Asp内嵌的事务支持 例子: 
    use_transaction_1.asp 
    <% 
    'Asp中使用事务 
    Set conn=Server.CreateObject("ADODB.Connection") 
    conn.Open "course_dsn","course_user","course_password" 
    conn.begintrans '开始事务 sql="delete from user_info" 
    set rs=server.createobject("adodb.recordset") 
    rs.open sql,conn,3,3 
    if conn.errors.count>0 then '有错误发生 
    conn.rollbacktrans '回滚 
    set rs=nothing 
    conn.close 
    set conn=nothing 
    response.write "交易失败,回滚至修改前的状态!" 
    response.end 
    else 
    conn.committrans '提交事务 
    set rs=nothing 
    conn.close 
    set conn=nothing 
    response.write "交易成功!" 
    response.end 
    end if 
    %> ②.数据库级的事务 i.创建存储过程 CREATE PROCEDURE [user_info_2] 
    (@user_name varchar(40),@password varchar(20)) 
    AS 
    SET XACT_ABORT ON 
    BEGIN TRANSACTION 
    delete from user_info where user_name=@user_name and password=@password 
    COMMIT TRANSACTION 
    SET XACT_ABORT OFF ii.在Asp中调用 use_transaction_2.asp 
    <% 
    Set conn=Server.CreateObject("ADODB.Connection") 
    conn.Open "course_dsn","course_user","course_password" sql="user_info_2 '"&request.querystring("user_name")&"','"&request.querystring("password")&"'" set rs=server.createobject("adodb.recordset") 
    rs.open sql,conn,1,1 
    set rs=nothing 
    conn.close 
    set conn=nothing 
    %> 
      

  2.   

    那么,这句:"INSERT INTO xxx....;SELECT @@identity as 'identity';"是一个事务吗???
      

  3.   

    应该不是..以前用批量update跟新recordset是单记录触发起,照样可以用..
    那么应该是一个个来的,,具体没有看过是怎么样
      

  4.   

    SQL Server的事务必须显式定义