请问,我用以下代码,从表格数据,插入数据库,但导入时,弹出导入成功的提示时,有多少行数据,就要点多少次确定按钮,请问需要怎么完善一下代码,只点一下,就可保存成功呢,谢谢;
private void btnsave_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=192.168.100.247;database=Whmesinfo;user=sa;password=whyy@2021");
conn.Open();
try
{
System.Data.DataTable dt = new System.Data.DataTable();
System.Data.DataTable dtTemp = dtTempImport; //导入的模板
for (int i = 0; i < dtTemp.Rows.Count; i++)
{
//if (i == 0)
//continue;
if (string.IsNullOrEmpty(dtTemp.Rows[i][0].ToString()))
{
log = false;
MessageBox.Show("请检查一下取样日期,再保存");
break;
}
else
{
string strsql = @"INSERT INTO [dbo].[w_Qctableg]
([sampledate],[reportdate],[name],[batchNo],[samplepoint],[samplelocation],[checkno],[region],[AIT],[MOULD],[CACLY],[SFM],[SLM],[ABM],[result],[note])
values
(@sampledate,@reportdate, @name, @batchNo, @samplepoint, @samplelocation,@checkno,@region,@AIT, @MOULD,@CACLY, @SFM, @SLM, @ABM,@result, @note)";
SqlCommand comm = new SqlCommand(strsql, conn);
comm.Parameters.AddWithValue("@sampledate", dtTemp.Rows[i][0]);
comm.Parameters.AddWithValue("@reportdate", dtTemp.Rows[i][1]);
comm.Parameters.AddWithValue("@name", dtTemp.Rows[i][2]);
comm.Parameters.AddWithValue("@batchNo", dtTemp.Rows[i][3]);
comm.Parameters.AddWithValue("@samplepoint", dtTemp.Rows[i][4]);
comm.Parameters.AddWithValue("@samplelocation", dtTemp.Rows[i][5]);
comm.Parameters.AddWithValue("@checkno", dtTemp.Rows[i][6]);
comm.Parameters.AddWithValue("@region", dtTemp.Rows[i][7]);
comm.Parameters.AddWithValue("@AIT", dtTemp.Rows[i][8]);
comm.Parameters.AddWithValue("@MOULD", dtTemp.Rows[i][9]);
comm.Parameters.AddWithValue("@CACLY", dtTemp.Rows[i][10]);
comm.Parameters.AddWithValue("@SFM", dtTemp.Rows[i][11]);
comm.Parameters.AddWithValue("@SLM", dtTemp.Rows[i][12]);
comm.Parameters.AddWithValue("@ABM", dtTemp.Rows[i][13]);
comm.Parameters.AddWithValue("@result", dtTemp.Rows[i][14]);
comm.Parameters.AddWithValue("@note", dtTemp.Rows[i][15]);
comm.ExecuteNonQuery();
SqlCommand cmd = new SqlCommand(SqlString, conn);
SqlDataAdapter sda = new SqlDataAdapter(cmd);
MessageBox.Show("导入成功");
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
MessageBox.Show("请导入内容后,再保存");
}
finally
{
conn.Close();
}
}
MessageBox.Show("导入成功");
这一行,放在for循环外面,也就是剪切下来,放在下面那个 } 后面去
前提:为数据库连接建立一个缓冲池。
1:从连接池获取或创建可用连接
2:使用完毕之后,把连接返回给连接池
3:在系统关闭前,断开所有连接并释放连接占用的系统资源
4:能够处理无效连接,限制连接池中的连接总数不低于或者不超过某个限定值