存储过程:
 ALTER PROCEDURE dbo.myTran
ALTER PROCEDURE dbo.myTran  
     (
    ( @title varchar(50),
    @title varchar(50), @body varchar(500)
    @body varchar(500) )
    ) 
     AS
AS declare @id int
    declare @id int begin Transaction
    begin Transaction insert into guestbook(title,body) values(@title,@body)
    insert into guestbook(title,body) values(@title,@body) set @id=@@identity
    set @id=@@identity insert into guestbook(title,body) values(@id,@body)
    insert into guestbook(title,body) values(@id,@body) if @@error<>0--发生错误
    if @@error<>0--发生错误 begin
    begin rollback transaction
    rollback transaction return 0--执行失败
    return 0--执行失败 end
    end else
    else begin
    begin commit transaction
    commit transaction return 1--执行成功
    return 1--执行成功 end
    end RETURN
    RETURN
前台代码:
 <%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>
<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml" >
<html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">
<head runat="server"> <title>无标题页</title>
    <title>无标题页</title> </head>
</head> <body>
<body> <form id="form1" runat="server">
    <form id="form1" runat="server"> <div>
    <div> 标题:<asp:TextBox ID="txtTitle" runat="server"></asp:TextBox>
        标题:<asp:TextBox ID="txtTitle" runat="server"></asp:TextBox> <br />
        <br /> 内容:<asp:TextBox ID="txtBody" runat="server"></asp:TextBox><br />
        内容:<asp:TextBox ID="txtBody" runat="server"></asp:TextBox><br /> <asp:Button ID="Button1" runat="server" Text="提交并执行事务" OnClick="Button1_Click" /></div>
        <asp:Button ID="Button1" runat="server" Text="提交并执行事务" OnClick="Button1_Click" /></div> </form>
    </form> </body>
</body> </html>
</html>
 using System;
using System; using System.Data;
using System.Data; using System.Configuration;
using System.Configuration; using System.Web;
using System.Web; using System.Web.Security;
using System.Web.Security; using System.Web.UI;
using System.Web.UI; using System.Web.UI.WebControls;
using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts;
using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls;
using System.Web.UI.HtmlControls; using System.Data.SqlClient;
using System.Data.SqlClient;
 public partial class _Default : System.Web.UI.Page
public partial class _Default : System.Web.UI.Page  {
{ protected void Page_Load(object sender, EventArgs e)
    protected void Page_Load(object sender, EventArgs e) {
    {
 }
    } protected void Button1_Click(object sender, EventArgs e)
    protected void Button1_Click(object sender, EventArgs e) {
    { string connstr=ConfigurationManager.AppSettings["ConnectionString"].ToString();
        string connstr=ConfigurationManager.AppSettings["ConnectionString"].ToString(); SqlConnection con = new SqlConnection(connstr);
        SqlConnection con = new SqlConnection(connstr); if (con.State.Equals(ConnectionState.Closed))
        if (con.State.Equals(ConnectionState.Closed)) {
        { con.Open();
            con.Open(); }
        } string procName = "dbo.myTran";
        string procName = "dbo.myTran"; SqlCommand cmd = new SqlCommand(procName,con);
        SqlCommand cmd = new SqlCommand(procName,con); cmd.CommandType = CommandType.StoredProcedure;
        cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add("@title",SqlDbType.VarChar,50);
        cmd.Parameters.Add("@title",SqlDbType.VarChar,50); cmd.Parameters.Add("@body",SqlDbType.VarChar,500);
        cmd.Parameters.Add("@body",SqlDbType.VarChar,500); cmd.Parameters[0].Value = this.txtTitle.Text.Trim();
        cmd.Parameters[0].Value = this.txtTitle.Text.Trim(); cmd.Parameters[1].Value = this.txtBody.Text.Trim();
        cmd.Parameters[1].Value = this.txtBody.Text.Trim(); int intResult=Convert.ToInt32(cmd.ExecuteNonQuery());
        int intResult=Convert.ToInt32(cmd.ExecuteNonQuery()); if (intResult > 0)
        if (intResult > 0) {
        { Response.Write("事务执行成功");
            Response.Write("事务执行成功"); }
        } else
        else {
        { Response.Write("事务执行失败");
            Response.Write("事务执行失败"); }
        } }
    } }
}
 
                    
                     
                    
                 
                    
                 


 
     
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号