Blog Reader RSS LoveCherry 技术无极限 GEO MVP MS Project开源技术

关于入参为空时的处理

 1Entering NULL values into SQL Server 2000 using Parameterized Queries (including date columns) 
 2 Here's another often asked question :
 3(1) The first thing to do if you have datetime columns that can take NULLs is to import the name space SqlTypes. 
 4 
 5<%@ Import Namespace="System.Data.SqlTypes" %>
 6 
 7and then the actual code 
 8Dim myCommand As SqlCommand
 9
10Dim myParam As SqlParameter
11
12myCommand = New SqlCommand()
13
14myCommand.Connection = objcon
15
16myCommand.CommandText = "usp_testproc"
17
18myCommand.CommandType = CommandType.StoredProcedure
19
20myCommand.Parameters.Add(New SqlParameter("@ProductName",SqlDbType.VarChar,50)) 
21
22
23myCommand.Parameters("@ProductName").Value = "New Product"
24
25myCommand.Parameters.Add(New SqlParameter("@Quantity",SqlDbType.int))
26
27myCommand.Parameters("@Quantity").Value = 100
28
29myCommand.Parameters.Add(New SqlParameter("@ProductDescription",SqlDbType.VarChar,50)) 
30
31
32myCommand.Parameters("@ProductDescription").Value = DBNull.Value
33
34'Now here's a date column 
35
36myCommand.Parameters.Add(New SqlParameter("@OrderDate",SqlDbType.DateTime)) 
37
38
39If txtorderdate.Text.Trim.Length = 0 Then
40
41myCommand.Parameters("@OrderDate").Value = Sqldatetime.Null  
42
43Else
44
45myCommand.Parameters("@OrderDate").Value = Convert.ToDate(txtorderdate.Text)
46
47End If
48
49Try
50
51If objCon.State = 0 Then objCon.Open()
52
53mycommand.ExecuteNonQuery()
54
55Catch exc As Exception
56
57Response.Write(exc)
58
59Finally
60
61If objCon.State = ConnectionState.Open Then
62
63objCon.Close()
64
65End If
66
67End Try
68

69
posted @ 2008-05-14 14:44  大宋提刑官  阅读(391)  评论(0)    收藏  举报