日期:2014-05-17  浏览次数:21064 次

c# access 标准表达式中数据类型不匹配。
 

//下面是保存按钮的代码

private void save_button_Click(object sender, EventArgs e)
        {

               dataGridView1.EndEdit();
                  string sqlText ="select ckid,步序,程控时间,[01],[02],[03],[04],[05],[06]    from ckasd  where ckid= 1  order by 步序";

            ds = new ConnDb().updataDs(ds, "ckasd",sqlText);



           dataGridView1.DataSource = ds.Tables["ckasd"];
  

            //不显示新增行
            dataGridView1.AllowUserToAddRows = false;
            //显示各列
            dataGridView1.AutoGenerateColumns = true;
      

        }



        public DataSet updataDs(DataSet changedDs, string tablename,string sql)
        {
            try
            {
                OleDbDataAdapter da = new OleDbDataAdapter(sql, connection);
                this.cmdbuilder = new OleDbCommandBuilder(da);
                da.Update(changedDs, tablename);
                changedDs.AcceptChanges();
                connection.Close();
                MessageBox.Show("数据更新成功");
                return changedDs;//返回更新了的数据表

                   
            }

            catch
            {
                connection.Close();
                MessageBox.Show( "数据更新失败");
                throw;
            }


        }



数据库为access,字段01,02,03,04,05,06均为文本型,字段大小为1,默认值设置为" ";当填充" "空格的时候,能正常保存。字段01,02,03,04,05,06填充"+",不包括引号的+的时候,出现错误,提示是“标准表达式中数据类型不匹配.”