0

Ifの前にステートメントを実行してINSERT、日付が入力されているかどうかを比較しています。値が入力されている場合は、この値を変数 (パラメーター値として使用) に割り当てていますが、値が入力されていない場合は、文字通り何も入力する必要がないため、データをロードするときにフォーマットはそのままです。 __ /__ /__

ただし、挿入するdatevar = Nothing場合は 2001/01/01 として挿入しています。DBNull.Value も使用してみましたが、これは言い続けましたDBNull.Value cannot be converted to type 'Date'

__ /__/ __を返すように、何も/nullを挿入するクエリを取得するにはどうすればよいですか?

Dim delDate As Date

If dr.Item("Goods_Delivered") = False Then
    delivVal = 0
    delivVol = 0
    sino = ""
    delDate = DBNull.Value
Else
    Try
        delivVal = dr.Item("deliveryVal")
        delivVol = dr.Item("deliveryVol")
        sino = dr.Item("Supplier_Invoice_Number")
        delDate = dr.Item("Final_Delivery")
    Catch ex As Exception
        delivVal = 0
        delivVol = 0
        sino = 0
    End Try
End If
4

1 に答える 1

0

delDate を DateTime.MinValue に初期化する

Dim delDate as Date = #1/1/0001 12:00:00 AM#

次に、insert ステートメントを作成するときに、delDate = DateTime.MinValue かどうかを確認します。その場合は、NULL を挿入します。それ以外の場合は、delDate を挿入します。

于 2016-09-17T12:57:55.250 に答える