我写了个程序需要在datagridview中增加记录。运行时候报错,代码如下:
if ((dataGridView1.SelectedCells[0].Value.ToString() != "")||(dataGridView1.SelectedCells[1].Value.ToString() != ""))
{
string mvalue = "'" + dataGridView1.SelectedCells[0].Value.ToString() ;
SqlConnection objconn = new SqlConnection("server=CAO-FED8A28F5E5;database=yangzhouguwei;uid=sa;pwd=hansys");
string inscmd = "insert into sales_inform(用户名";
if (dataGridView1.SelectedCells[1].Value.ToString()!="")
{
inscmd += ",密码";
mvalue = mvalue + "','" + dataGridView1.SelectedCells[1].Value.ToString();
}
if (dataGridView1.SelectedCells[2].Value.ToString().Length>0)
{
inscmd += ",产品";
mvalue = mvalue + "','" + dataGridView1.SelectedCells[2].Value.ToString();
}
运行到if (dataGridView1.SelectedCells[1].Value.ToString()!="")这句的时候报错:索引超出范围。必须为非负值并小于集合大小。
是什么问题?正确的代码应该如何写?
请各位大侠赐招!!!!!!!!!!!
if ((dataGridView1.SelectedCells[0].Value.ToString() != "")||(dataGridView1.SelectedCells[1].Value.ToString() != ""))
{
string mvalue = "'" + dataGridView1.SelectedCells[0].Value.ToString() ;
SqlConnection objconn = new SqlConnection("server=CAO-FED8A28F5E5;database=yangzhouguwei;uid=sa;pwd=hansys");
string inscmd = "insert into sales_inform(用户名";
if (dataGridView1.SelectedCells[1].Value.ToString()!="")
{
inscmd += ",密码";
mvalue = mvalue + "','" + dataGridView1.SelectedCells[1].Value.ToString();
}
if (dataGridView1.SelectedCells[2].Value.ToString().Length>0)
{
inscmd += ",产品";
mvalue = mvalue + "','" + dataGridView1.SelectedCells[2].Value.ToString();
}
运行到if (dataGridView1.SelectedCells[1].Value.ToString()!="")这句的时候报错:索引超出范围。必须为非负值并小于集合大小。
是什么问题?正确的代码应该如何写?
请各位大侠赐招!!!!!!!!!!!
string inscmd = "Insert into 表名 values(@参数名)";
objsqlData.InsertCommand = new SqlCommand(inscmd,objsqlconn);
SqlParameter objsqlPara = new SqlParameter();
objsqlPara = objsqlData.InsertCommand.Parameters.Add("@参数名", SqlDbType.Char);
objsqlPara.SourceColumn = "字段名";
objsqlPara.SourceVersion = DataRowVersion.Current;