数据库更新过程中,带参数@bianhao,代码如下:
private void button1_Click(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(nianji.Text) && !string.IsNullOrEmpty(banji.Text))
{
nianjibanji.Text = nianji.Text + banji.Text;
}
else
{
nianjibanji.Text= "";
}
SqlParameter parameter = new SqlParameter("@bianhao", SqlDbType.Char, 8);
parameter.Value = bianhao.Text;
mycmd.Parameters.Add(parameter);
int age =Convert.ToInt32(nianling.Text);
if (age<6&&age>20)
{
MessageBox.Show("请输入正确的年龄:");
//mycmd.Parameters.Clear();
return;
}
int bh = Convert.ToInt32(bianhao.Text);
string xxmingch = xuexiaomingcheng.Text;
string njbj = nianjibanji.Text;
string xsxm = xueshengxingming.Text;
string sex = xingbie.Text;
string mz = minzu.Text;
string csrq = chushengriq.Text;
string jtzz = jiatingzhuzhi.Text;
string jwbs = jiwangbingshi.Text;
string qtbm = qitabingming.Text;
string jwjzrq = jiwangjiuzhen.Text;
string sg = shengao.Text;
string tz = tizhong.Text;
string xtys1 = shengaoyish.Text;
string ssy = shousuoya.Text;
string szy = shuzhangya.Text;
string xtys2 = xueyayish.Text;
string x = xin.Text;
string f = fei.Text;
string g = gan.Text;
string p = pi.Text;
string nkys = neikeyish.Text;
string zy = zuoyan.Text;
string yy = youyan.Text;
string sy = shayan.Text;
string jmy = jiemoyan.Text;
string ykys = yankeyish.Text;
string tb = toubu.Text;
string jb = jingbu.Text;
string xb = xiongbu.Text;
string jz = jizhu.Text;
string sz = sizhi.Text;
string pf = pifu.Text;
string lbj = linbajie.Text;
string wkys = waikeyish.Text;
string qc = quchi.Text;
string yz = yahzou.Text;
string kqys = kouqiangyish.Text;
string fhl = feihuol.Text;
string ys = qitayish.Text;
string zc = zhengchang.Text;
string xfc = xufucha.Text;
string bm = bingming.Text;
string jcys = jielunyish.Text;
string zdyj = zhidaoyijian.Text;
if (!string.IsNullOrEmpty(bianhao.Text)&&!string.IsNullOrEmpty(xxmingch)&&!string.IsNullOrEmpty(njbj)&&!string.IsNullOrEmpty(xsxm)&&!string.IsNullOrEmpty(sex))
{
int newrow=0;
for (int i = 0; i < ds.Tables["dataTable"].Rows.Count; i++)
{
int datavalue = Convert.ToInt32( ds.Tables["dataTable"].Rows[i]["编号"]);
if (datavalue == bh )
{ //询问是否更新数据
if (MessageBox.Show("该编号信息已经存在,确定要修改吗?", "确认", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
{
StringBuilder sb1 = new StringBuilder();
sb1.AppendFormat("Update xsxxlr set 学校名称='{0}',班级='{1}',姓名='{2}',性别='{3}',民族='{4}',出生日期='{5}'," +
"年龄={6},家庭住址='{7}',既往病史='{8}',其他病名='{9}',既往就诊日期='{10}',身高='{11}',体重='{12}',形体医生1='{13}'," +
"收缩压='{14}',舒张压='{15}',形体医生2='{16}',心='{17}',肺='{18}',脾='{19}',内科医生='{20}',左眼='{21}',右眼='{22}',沙眼='{23}'," +
" 结膜炎='{24}',眼科医生='{25}',头部='{26}',颈部='{27}',胸部='{28}',脊柱='{29}',四肢='{30}',皮肤='{31}',淋巴结='{32}'," +
"外科医生='{33}',龋齿='{34}',牙周='{35}',口腔医生='{36}',肺活量='{37}',医生='{38}',正常='{39}',需复查='{40}',病名='{41}'," +
"检查医生='{42}',指导意见='{43}',肝='{44}' where 编号=@bianhao", xxmingch, njbj, xsxm, sex, mz, csrq, age, jtzz, jwbs, qtbm, jwjzrq, sg, tz, xtys1,
ssy, szy, xtys2, x, f, p, nkys, zy, yy, sy, jmy, ykys, tb, jb, xb, jz, sz, pf, lbj, wkys, qc, yz, kqys, fhl, ys, zc, xfc, bm, jcys, zdyj, g);
mycmd.CommandText = sb1.ToString();
cn.Open();
mycmd.ExecuteNonQuery();
cn.Close();
MessageBox.Show("保存成功");
mycmd.Parameters.Clear();
newrow =1;
chongzhi();
gengxin();
return;
}
else
//mycmd.Parameters.Clear();
return;
}
}
if (newrow == 0)
{
StringBuilder sb1 = new StringBuilder();
sb1.AppendFormat("insert into xsxxlr(学校名称,班级,姓名,性别,民族,出生日期," +
"年龄,家庭住址,既往病史,其他病名,既往就诊日期,身高,体重,形体医生1," +
"收缩压,舒张压,形体医生2,心,肺,脾,内科医生,左眼,右眼,沙眼," +
" 结膜炎,眼科医生,头部,颈部,胸部,脊柱,四肢,皮肤,淋巴结," +
"外科医生,龋齿,牙周,口腔医生,肺活量,医生,正常,需复查,病名," +
"检查医生,指导意见,肝,编号)");
sb1.AppendFormat("Values('{0}', '{1}','{2}','{3}','{4}','{5}',{6}," +
"'{7}','{8}','{9}','{10}','{11}','{12}','{13}','{14}','{15}','{16}','{17}'," +
"'{18}','{19}','{20}','{21}','{22}','{23}','{24}','{25}','{26}','{27}','{28}'," +
"'{29}','{30}','{31}','{32}','{33}','{34}','{35}','{36}','{37}','{38}','{39}'," +
"'{40}','{41}','{42}','{43}','{44}',{45})",xxmingch, njbj, xsxm, sex, mz, csrq,age, jtzz, jwbs, qtbm, jwjzrq, sg, tz, xtys1,ssy, szy, xtys2, x, f, p, nkys, zy,yy, sy, jmy, ykys, tb, jb, xb, jz, sz, pf, lbj, wkys, qc, yz, kqys, fhl, ys, zc,xfc, bm, jcys, zdyj, g,bh);
mycmd.CommandText = sb1.ToString();
cn.Open();
mycmd.ExecuteNonQuery();
cn.Close();
MessageBox.Show("保存成功");
chongzhi();
gengxin();
//mycmd.Parameters.Clear();
return;
}
}
else
{
MessageBox.Show("请输入基本信息!");
// mycmd.Parameters.Clear();
return;
}
}
在每个return前,加入参数列表的清空,
mycmd.Parameters.Clear();
return;
或者在数据更新前再装载参数@bianhao