zoukankan
html css js c++ java
个人学习代码保存:例8.在存储过程中使用简单的事务处理
存储过程:
ALTER
PROCEDURE
dbo.myTran
(
@title
varchar
(
50
),
@body
varchar
(
500
)
)
AS
declare
@id
int
begin
Transaction
insert
into
guestbook(title,body)
values
(
@title
,
@body
)
set
@id
=
@@identity
insert
into
guestbook(title,body)
values
(
@id
,
@body
)
if
@@error
<>
0
--
发生错误
begin
rollback
transaction
return
0
--
执行失败
end
else
begin
commit
transaction
return
1
--
执行成功
end
RETURN
前台代码:
<%
@ 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"
>
<
html
xmlns
="http://www.w3.org/1999/xhtml"
>
<
head
runat
="server"
>
<
title
>
无标题页
</
title
>
</
head
>
<
body
>
<
form
id
="form1"
runat
="server"
>
<
div
>
标题:
<
asp:TextBox
ID
="txtTitle"
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
>
</
form
>
</
body
>
</
html
>
后台代码:
using
System;
using
System.Data;
using
System.Configuration;
using
System.Web;
using
System.Web.Security;
using
System.Web.UI;
using
System.Web.UI.WebControls;
using
System.Web.UI.WebControls.WebParts;
using
System.Web.UI.HtmlControls;
using
System.Data.SqlClient;
public
partial
class
_Default : System.Web.UI.Page
{
protected
void
Page_Load(
object
sender, EventArgs e)
{
}
protected
void
Button1_Click(
object
sender, EventArgs e)
{
string
connstr
=
ConfigurationManager.AppSettings[
"
ConnectionString
"
].ToString();
SqlConnection con
=
new
SqlConnection(connstr);
if
(con.State.Equals(ConnectionState.Closed))
{
con.Open();
}
string
procName
=
"
dbo.myTran
"
;
SqlCommand cmd
=
new
SqlCommand(procName,con);
cmd.CommandType
=
CommandType.StoredProcedure;
cmd.Parameters.Add(
"
@title
"
,SqlDbType.VarChar,
50
);
cmd.Parameters.Add(
"
@body
"
,SqlDbType.VarChar,
500
);
cmd.Parameters[
0
].Value
=
this
.txtTitle.Text.Trim();
cmd.Parameters[
1
].Value
=
this
.txtBody.Text.Trim();
int
intResult
=
Convert.ToInt32(cmd.ExecuteNonQuery());
if
(intResult
>
0
)
{
Response.Write(
"
事务执行成功
"
);
}
else
{
Response.Write(
"
事务执行失败
"
);
}
}
}
查看全文
相关阅读:
改进的延时函数Delay(使用MsgWaitForMultipleObjects等待消息或超时的到来)
罗斯福新政
保存网页为图片——滚动截取IE(WebBrowse)
Linux LVM硬盘管理及LVM分区扩容
visual leak dector内存泄漏检测方法
小智慧30
函数调用的原理
HTTP协议漫谈
Boost源码剖析之:泛型指针类any
扩展C++ string类
原文地址:https://www.cnblogs.com/wbcms/p/1037561.html
最新文章
要不要用STL的问题——真理是越辩越明的~
mpi和cuda混合编程的正确编译
别卖产品卖需求——书如其名
firemonkey打开子窗体
什么是情商——情商就是知道自己要干什么
SendMessage基本认识
SelectDirectory使用方法以及EnableTaskWindows
小智慧29
Delphi跨平台Socket通讯库
快速美眉(FastMM)使用手记
热门文章
C/C++中各种类型int、long、double、char表示范围(最大最小值)
Delphi在StatusBar上绘制ProgressBar
Delphi下TLabel鼠标MouseEnter、MouseLeave更改颜色失灵
Python学习入门基础教程(learning Python)--5.6 Python读文件操作高级
无标题窗体的移动及其简单美化
简易对象垃圾回收框架 for Delphi
计算机视觉牛人博客和代码汇总(全)
Delphi 的接口机制——接口操作的编译器实现过程(2)
Delphi 的接口机制——接口操作的编译器实现过程(1)
子PID namespace中获取父namespace中pid的方法
Copyright © 2011-2022 走看看