在asp.net中使用SQLSERVER的高级用法

类别:.NET开发 点击:0 评论:0 推荐:
1.简单的数据操作可以写单条带参数的sql语句,然后用mycm.parameters.add
(   “  @  vname“,value ) 加上参数 ,
也可写成存储过程 ,在过程中可以传递进入参数或返回参数, 这样编程更加对象化,
返回参数可以如下得到
...
vRt=mycm.parameters.add(“Returnvalues“, sqlDbType.Int)
vRt.Direction = mycm.parameters.returnvalus
...
cm.execute NoneQuery()
returnvalue=mycm.parameters(“Returnvalues“).value
' 如果是传出参数  则用以下语法:
vOt=mycm.parameters.add(“@ Outp“,sqlDbType......)
vOt.Direction=mycm.parameters.output
...cm.executeNoneQuery()

otvalue=mycm.parameters(“@Outp“).value
...

-------对应使用下面结构的存储过程
create procedur namep
(@v1 nvarchar(88),
@mon money
@Outp nvarchar(..)  output
)
AS
........

Return (select count(*) from ....)

--注意 : 存储过程返回值 只能为Integer 类型,每个SQLSERVER过程实际上都返回一个值0



2.  利用链接缓冲改进性能

在SQLSERVER连接字符串中添加缓冲选项:
Connection Lifetime
Connection ...
...

3. 事务处理
可以三种方式 启用事务处理:
 一:  数据库事务   指在数据库端代码理启用事务, 如
create produce testTrans
AS
Being TRANSACTION
update taba set ...
update tabb set ...
COMMIT TRANSACTION
....
exception
ROLLBACK TRANSACTION
....


二:  ADO.NET 事务

...
cma= new sqlcommand(““ ,con )
cmb=new sqlcommand(““,con)
con.open
objTransaction=con.BeginTransaction
cma.Transaction =objTransaction
cmb.Transaction=objTransaction
try
cma.exec....
cmb.exec.....
objTransaction.Commit
catch ex as exception
objTransaction.RollBack
...
finally
con.close()
....


三:   asp.net页面事务

本文地址:http://com.8s8s.com/it/it42748.htm