.NET开发

本类阅读TOP10

·NHibernate快速指南(翻译)
·vs.net 2005中文版下载地址收藏
·【小技巧】一个判断session是否过期的小技巧
·VB/ASP 调用 SQL Server 的存储过程
·?dos下编译.net程序找不到csc.exe文件
·通过Web Services上传和下载文件
·学习笔记(补)《.NET框架程序设计(修订版)》--目录
·VB.NET实现DirectDraw9 (2) 动画
·VB.NET实现DirectDraw9 (1) 托管的DDraw
·建站框架规范书之——文件命名

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
使用存储过程的一个小例子

作者:未知 来源:月光软件站 加入时间:2005-5-13 月光软件站

Public Overloads Sub Update(ByVal authorityArr As IList)
            log.Debug("Update a record in table TBL_M_AUTHORITY")

            Dim connection As OracleConnection = New OracleConnection(OraHelper.CONN_STRING_LOCAL)
            Dim command As OracleCommand = New OracleCommand(PLSQL_UPDATE, connection)
            command.CommandType = CommandType.StoredProcedure
            Dim txn As OracleTransaction

            Dim updateParms() As OracleParameter = {New OracleParameter(PARM_AUTH_CD, OracleDbType.Varchar2) _
                                                  , New OracleParameter(PARM_AUTH_NAME, OracleDbType.Varchar2) _
                                                  , New OracleParameter(PARM_SHORI_STAFF_CD, OracleDbType.Decimal) _
                                                  , New OracleParameter(PARM_VOID_FLG, OracleDbType.Varchar2) _
                                                  , New OracleParameter(PARM_DISP_ORDER, OracleDbType.Decimal)}
            Dim authInfo As AuthorityInfo


            Try
                connection.Open()

                txn = connection.BeginTransaction(IsolationLevel.ReadCommitted)

                For Each authInfo In authorityArr
                    updateParms(0).Value = authInfo.auth_cd
                    updateParms(1).Value = authInfo.auth_name
                    updateParms(2).Value = authInfo.shori_staff_cd
                    updateParms(3).Value = authInfo.void_flg
                    If authInfo.disp_order_str Is Nothing Or authInfo.disp_order_str.Trim = "" Then
                        updateParms(4).Value = DBNull.Value
                    Else
                        updateParms(4).Value = Decimal.Parse(authInfo.disp_order_str)
                    End If

                    Dim params As OracleParameter
                    command.Parameters.Clear()

                    For Each params In updateParms
                        command.Parameters.Add(params)
                    Next
                    command.ExecuteNonQuery()
                Next
                txn.Commit()
            Catch ex As Exception
                txn.Rollback()
                log.Debug(ex.Message)
                log.Debug(ex.StackTrace)
                Throw ex
            Finally
                If Not connection Is Nothing Then
                    connection.Close()
                    connection.Dispose()
                End If
                If Not command Is Nothing Then
                    command.Dispose()
                End If
            End Try
        End Sub




相关文章

相关软件