3

私のストアドプロシージャは次のようになります。

CREATE PROCEDURE [dbo].[insertCompList_Employee]
   @Course_ID int, 
   @Employee_ID int, 
   @Project_ID int = NULL, 
   @LastUpdateDate datetime = NULL,  
   @LastUpdateBy int = NULL                     
AS 
BEGIN 
   SET NOCOUNT ON 

   INSERT INTO db_Competency_List(Course_ID, Employee_ID, Project_ID, LastUpdateDate, LastUpdateBy) 
   VALUES (@Course_ID, @Employee_ID, @Project_ID, @LastUpdateDate, @LastUpdateBy) 
END 

私のasp.net vbコードビハインドは次のとおりです。

    dc2.insertCompList_Employee(
    rdl_CompList_Course.SelectedValue, 
    RadListBox_CompList_Select.Items(i).Value.ToString, 
    "0",
    DateTime.Now, 
    HttpContext.Current.Session("UserID")
)

の代わりにnull値を挿入したいProject_ID0

試してみましたがNULL'NULL'エラーが返されます。

4

3 に答える 3

9

組み込みの値を使用します。DBNull.Value

http://msdn.microsoft.com/en-us/library/system.dbnull.value.aspx?cs-save-lang=1&cs-lang=vb#code-snippet-1

于 2013-06-18T10:24:54.507 に答える
1

最後に私は解決策を得ました...

project_id に Nullable Type を使用します。次のように宣言します。

Dim pid As System.Nullable(Of Integer)

次に、ストア プロシージャを介してデータを挿入するためのコード ビハインド

dc2.insertCompList_Employee(
rdl_CompList_Course.SelectedValue, 
RadListBox_CompList_Select.Items(i).Value.ToString, 
pid, 
DateTime.Now, 
HttpContext.Current.Session("UserID"))
于 2013-06-19T06:02:48.017 に答える