提示空引用 求找错
for (int i = 1; i <= this.dataGridViewX1.RowCount; i++){
SqlConnection sqlinc = new SqlConnection(Login.Strsqlcon);
sqlinc.Open();
string sql =
string.Format("INSERT INTO [T_VIP] ([T_CCARDID],[T_CNAME],[T_PNAME],[T_VKSDATE],[T_VJSDATE],[T_VFDATE],[T_VSDATE],[T_VTDATE],[T_VLNAME],[T_VNUM]) VALUES('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}')", this.textBoxX1.Text.Trim(), this.comboBoxEx1.Text.Trim(), this.dataGridViewX1.Rows[i].Cells[0].Value.ToString(), this.dateTimeInput1.Text, this.dateTimeInput2.Text, this.dataGridViewX1.Rows[i].Cells[1].Value.ToString(), this.dataGridViewX1.Rows[i].Cells[2].Value.ToString(), this.dataGridViewX1.Rows[i].Cells[3].Value.ToString(), Login.M_str_name, i.ToString());
SqlCommand sqlincm;
sqlincm = new SqlCommand(sql,sqlinc);
sqlincm.ExecuteNonQuery();
sqlincm.Dispose();
sqlinc.Close();
sqlinc.Dispose();
} 空引用 --------------------编程问答-------------------- string sql =
string.Format("INSERT INTO [T_VIP] ([T_CCARDID],[T_CNAME],[T_PNAME],[T_VKSDATE],[T_VJSDATE],[T_VFDATE],[T_VSDATE],[T_VTDATE],[T_VLNAME],[T_VNUM]) VALUES('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}')", this.textBoxX1.Text.Trim(), this.comboBoxEx1.Text.Trim(), this.dataGridViewX1.Rows[i].Cells[0].Value.ToString(), this.dateTimeInput1.Text, this.dateTimeInput2.Text, this.dataGridViewX1.Rows[i].Cells[1].Value.ToString(), this.dataGridViewX1.Rows[i].Cells[2].Value.ToString(), this.dataGridViewX1.Rows[i].Cells[3].Value.ToString(), Login.M_str_name, i.ToString());
下断点,一个变量一个变量地监视,就知道了。问人,神仙才知道。 --------------------编程问答-------------------- 这里面空引用的可能性太多了,还是打断点一步步的看下吧!
这代码看的蛋疼,在循环里面反复打开关闭数据库,这性能几差啊?
--------------------编程问答-------------------- 参数个数不投,, --------------------编程问答-------------------- 空引用都会抛出异常的,异常信息中会指出发生在哪一行,以及堆栈调用的详细信息,你把异常堆栈贴出来,或许能帮你找到,
要不然你就断点跟踪了,一个一个变量看, --------------------编程问答-------------------- 除 --------------------编程问答-------------------- 除 --------------------编程问答-------------------- 在能进入循环的情况下,出现空引用的只能是sql语句里面的参数. --------------------编程问答-------------------- 大概可能出错的地方是
1)链接字符串出错;
2)数据库指定为空的 结果赋值为空;
--------------------编程问答--------------------
第二点极有可能 你把sql 拷贝出来单独看看
补充:.NET技术 , C#