比如从数据库中查询到一些数据,存入datatable中,
当程序对datatalbe中一些记录进行修改后,被修改的记录存入另一个UpdataDataTable中此时将UpdataDataTable传入后台方法,后台方法根据中的记录生成相应UPDATE语句,应该怎样实现呢?我现在是通过循环UpdataDataTable中每一行,第一列来构建SQL语句,但是这样的方法不够通用比如update tb1 set name = 'zhangsan', age = '19' where id = 'x'如果age字段类型为整型,则SQL语句就会报错.

解决方案 »

  1.   

    age为整型当然报错了,datatable里面的列不是有类型的吗?你可以根据类型来生成sql语句啊
      

  2.   

    SqlCommand类有个SqlParameters属性,这是一个参数集合,在命令文本中指定参数,将参数添加到此参数集合中。因为参数可以指定类型,这个问题就完全不是问题了。
      

  3.   

    这样说可能比较抽象,可以到MSDN中查看SqlCommand类、SqlParameterCollection类(就是SqlCommand类中Parameters属性的类型,上面写错了)和SqlParameter类(每一个参数的具体类型)的说明,有例子代码的。
      

  4.   


    如果是使用oledb或ORACLEclient的话,又应该怎么做呢?
      

  5.   

    STRING SQL ="update tb1 set name = '"+TEXTBOX1.TEXT+"', age = "+TEXTBOX2.TEXT+" where id = 1" ;...最后弄成这种效果应该可以了
      

  6.   

    有对应的OracleCommand类、OracleParameterCollection和OracelParameter类。