'GetDBConn()自定義的包含connectstring的oracle db連接
Dim conn As OracleConnection = GetDBConn()
'判斷是否打開
If conn.State <> ConnectionState.Open Then
Return Nothing
End If
' 參數
Dim para1 As New OracleParameter("fields", OracleDbType.Varchar2, ParameterDirection.Input)
para1.Value = fields
Dim para2 As New OracleParameter("viewname", OracleDbType.Varchar2, ParameterDirection.Input)
para2.Value = viewname
Dim para3 As New OracleParameter("whereclause", OracleDbType.Varchar2, ParameterDirection.Input)
para3.Value = whereclause
Dim para4 As New OracleParameter("orderby", OracleDbType.Varchar2, ParameterDirection.Input)
para4.Value = orderby
Dim para5 As New OracleParameter("userid", OracleDbType.Int32, ParameterDirection.Input)
para5.Value = intWorkID
'選擇command類型為StoredProcedure以及Procedure名
Dim command As New OracleCommand
command.Connection = conn
command.CommandText = "pkgcursor.getcur"
command.CommandType = CommandType.StoredProcedure
'參數輸入
command.Parameters.Add(para1)
command.Parameters.Add(para2)
command.Parameters.Add(para3)
command.Parameters.Add(para4)
command.Parameters.Add(para5)
'outpara是procedure內定義的輸出函數
Dim outpara As New OracleParameter("cur", OracleDbType.RefCursor, Data.ParameterDirection.Output)
command.Parameters.Add(outpara)
'接受輸出值
Dim dr As OracleDataReader
dr = command.ExecuteReader()
'用datatable裝輸出值
Dim dt As New DataTable
dt.Load(dr)
Return dt
Dim conn As OracleConnection = GetDBConn()
'判斷是否打開
If conn.State <> ConnectionState.Open Then
Return Nothing
End If
' 參數
Dim para1 As New OracleParameter("fields", OracleDbType.Varchar2, ParameterDirection.Input)
para1.Value = fields
Dim para2 As New OracleParameter("viewname", OracleDbType.Varchar2, ParameterDirection.Input)
para2.Value = viewname
Dim para3 As New OracleParameter("whereclause", OracleDbType.Varchar2, ParameterDirection.Input)
para3.Value = whereclause
Dim para4 As New OracleParameter("orderby", OracleDbType.Varchar2, ParameterDirection.Input)
para4.Value = orderby
Dim para5 As New OracleParameter("userid", OracleDbType.Int32, ParameterDirection.Input)
para5.Value = intWorkID
'選擇command類型為StoredProcedure以及Procedure名
Dim command As New OracleCommand
command.Connection = conn
command.CommandText = "pkgcursor.getcur"
command.CommandType = CommandType.StoredProcedure
'參數輸入
command.Parameters.Add(para1)
command.Parameters.Add(para2)
command.Parameters.Add(para3)
command.Parameters.Add(para4)
command.Parameters.Add(para5)
'outpara是procedure內定義的輸出函數
Dim outpara As New OracleParameter("cur", OracleDbType.RefCursor, Data.ParameterDirection.Output)
command.Parameters.Add(outpara)
'接受輸出值
Dim dr As OracleDataReader
dr = command.ExecuteReader()
'用datatable裝輸出值
Dim dt As New DataTable
dt.Load(dr)
Return dt