[英]Parsing DateTime From VB.NET to Oracle Stored Procedure
我一直在努力使用Oracle的日期時間功能。
我的存儲過程可以正常運行並且運行良好,但是我不知道如何解析VB.net的日期,以便存儲過程可以從VB.net接收值?
有誰知道如何從VB.net解析值,在這種情況下,我談論的是日期時間,因此它將是一小時,一秒鍾和一分鍾。
非常感謝
這是.NET代碼
Try
Dim conn As New OracleConnection(connectionString(data(0), data(1), data(2)))
conn.Open()
Dim cmd As New OracleCommand
cmd.Connection = conn
cmd.CommandType = CommandType.StoredProcedure
cmd.CommandText = "transactionme"
Dim p1 As OracleParameter
Dim p2 As OracleParameter
Dim p3 As OracleParameter
Dim p4 As OracleParameter
Dim p5 As OracleParameter
Dim p6 As OracleParameter
Dim p7 As OracleParameter
Dim p8 As OracleParameter
Dim p9 As OracleParameter
Dim p10 As OracleParameter
p1 = cmd.Parameters.Add("param1", OracleDbType.NChar)
p1.Value = ""
p2 = cmd.Parameters.Add("param2", OracleDbType.NChar)
p2.Value = "STD2"
p3 = cmd.Parameters.Add("param3", OracleDbType.NChar)
p3.Value = "RK001"
p4 = cmd.Parameters.Add("param4", OracleDbType.NChar)
p4.Value = "EK001"
p5 = cmd.Parameters.Add("param5", OracleDbType.Date)
p5.Value = "here is the problem"
p6 = cmd.Parameters.Add("param6", OracleDbType.Date)
p6.Value = "here is the problem"
p7 = cmd.Parameters.Add("param7", OracleDbType.Date)
p7.Value = "here is the problem"
p8 = cmd.Parameters.Add("param8", OracleDbType.NChar)
p8.Value = "Master Card"
p9 = cmd.Parameters.Add("param9", OracleDbType.Int32)
p9.Value = 30000
Dim n As Integer
n = cmd.ExecuteNonQuery()
MessageBox.Show(n.ToString)
conn.Close()
Catch ex As Exception
MessageBox.Show(ex.ToString)
End Try
參數應該是這樣的,已經嘗試了很多類似concat等的東西
to_date('2012-01-23 22:00', 'YYYY-MM-DD hh24:mi')
根據此MSDN論壇 ,Oracle Date數據類型與.Net Date數據類型相對應。
從上方鏈接:
參數值應該是日期數據值,而不是字符串。 由於基礎表示形式是數字,因此在將日期作為參數傳遞時,無需格式化日期。
即
p5 = cmd.Parameters.Add("param5", OracleDbType.Date)
p5.Value = Convert.ToDateTime("Your Date here")
編輯嘗試此操作以解析您的日期/時間信息並轉換您的字符串。
Private Function GetDateTime(dateFormat As String) As Date
Dim split() As String = New String() {","}
Return Convert.ToDateTime(dateFormat.Split(split, 2, StringSplitOptions.None)(0))
End Function
用法:
p5.Value = GetDateTime("2012-01-23 22:00, YYYY-MM-DD hh24:mi") 'or what ever your string variable is.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.