我有一个名为FireTest
的表,我在此表中的标准插入是:
Dim ThisDay As Date = Date.Today
connection.Open()
command = New SqlCommand("Insert Into FireTest([Date],[Type],[Comments],[Completed By],[Trans Type]) Values (@Date,@Type,@Comments,@CompletedBy, @TransType)", connection)
command.Parameters.AddWithValue("@Date", ThisDay)
command.Parameters.AddWithValue("@Type", DropDownList1.SelectedValue)
command.Parameters.AddWithValue("@Comments", TextBox1.Text)
command.Parameters.AddWithValue("@CompletedBy", ThisUser)
command.Parameters.AddWithValue("@TransType", transType)
command.ExecuteNonQuery()
connection.Close()
所以我在SQL TABLE中添加一个新列,进行新的插入
Dim ThisDay As Date = Date.Today
connection.Open()
command = New SqlCommand("Insert Into FireTest([Date],[Due Date],[Type],[Comments],[Completed By],[Trans Type]) Values (@Date,@DueDate,@Type,@Comments,@CompletedBy, @TransType)", connection)
command.Parameters.AddWithValue("@Date", ThisDay)
command.Parameters.AddwithValue("@DueDate",???)
command.Parameters.AddWithValue("@Type", DropDownList1.SelectedValue)
command.Parameters.AddWithValue("@Comments", TextBox1.Text)
command.Parameters.AddWithValue("@CompletedBy", ThisUser)
command.Parameters.AddWithValue("@TransType", transType)
command.ExecuteNonQuery()
connection.Close()
我如何将此值插入数据库,但在ThisDay
上有+2天?示例:如果ThisDay = '22/04/2014'
那么@DueDate
的值将为'24/04/2014'
我知道它与DATEADD
的某些内容有关但我不确定,指导周围帮我实现这个目标?
答案 0 :(得分:1)
尝试:
command.Parameters.AddwithValue("@DueDate",DATEADD(day, 2, ThisDay));
答案 1 :(得分:1)
每个DateTime对象都有一个set of methods用于此类计算。
在您的情况下,您需要DateTime.AddDays(numberOfDays)
command.Parameters.AddwithValue("@DueDate",ThisDay.AddDays(2)));
这将在ThisDay的值处添加2天,并创建一个新的DateTime,您将其作为@DueDate的参数传递。尽管它的名称,如果你想从当前日期减去天数,你也应该使用这种方法。在这种情况下,传递的值应为负数。