For i = 0 To DataGridView2.Rows.Count - 1 Step +1
Dim cmd As New SqlCommand("Insert into Installation_Report(From_Date,To_Date,Branch_Code,Branch_Name,Sector_Name,Region_Name,Same_Day,Next_Day,After_Two_Days,Same_Week,Not_Installed_Yet) values (@From_Date,@To_Date,@Branch_Code,@Branch_Name,@Sector_Name,@Region_Name,@Same_Day,@Next_Day,@After_Two_Days,@Same_Week,@Not_Installed_Yet)", connsqlserver)
cmd.Parameters.Add("From_Date", SqlDbType.Date).Value = DateTimePicker1.Value
cmd.Parameters.Add("To_Date", SqlDbType.Date).Value = DateTimePicker2.Value
cmd.Parameters.Add("Branch_Code", SqlDbType.Int).Value = DataGridView2.Rows(i).Cells(0).Value
cmd.Parameters.Add("Branch_Name", SqlDbType.NVarChar).Value = DataGridView2.Rows(i).Cells(1).Value
cmd.Parameters.Add("Sector_Name", SqlDbType.NVarChar).Value = DataGridView2.Rows(i).Cells(2).Value
cmd.Parameters.Add("Region_Name", SqlDbType.NVarChar).Value = DataGridView2.Rows(i).Cells(3).Value
cmd.Parameters.Add("Same_Day", SqlDbType.Int).Value = DataGridView2.Rows(i).Cells(4).Value
cmd.Parameters.Add("Next_Day", SqlDbType.Int).Value = DataGridView2.Rows(i).Cells(5).Value
cmd.Parametersstrong text.Add("After_Two_Days", SqlDbType.Int).Value = DataGridView2.Rows(i).Cells(6).Value
cmd.Parameters.Add("Same_Week", SqlDbType.Int).Value = DataGridView2.Rows(i).Cells(7).Value
cmd.Parameters.Add("Not_Installed_Yet", SqlDbType.Int).Value = DataGridView2.Rows(i).Cells(8).Value
connsqlserver.Open()
cmd.ExecuteNonQuery()
connsqlserver.Close()
cmd = Nothing
我遇到了这段代码的问题,因为它给了我以下信息
参数化查询'(@From_Date date,@ To_Date date,@ Branch_Code int,@ Branch_Name nva'需要参数'@Branch_Code',这是未提供的。
答案 0 :(得分:0)
您应该考虑参数的可能空值;
cmd.Parameters.Add("Branch_Code", SqlDbType.Int).Value =
DataGridView2.Rows(i).Cells(0).Value ?? DBNull.Value;
也检查其他参数。