难道你想用 ("INSERT INTO Inventory" +
"(CarID, Make, Color, PetName) VALUES" +
"('"+TextBox1.Text+"', ...)  形式?  那还得去过滤特殊字符

解决方案 »

  1.   

    个人感觉,
    用SqlDataAdapter和SqlCommand没什么大的区别
    看你自己怎么用。。
      

  2.   

    不同意maotin(liu);/
    如果是在视图下用SqlCommand好过SqlDataAdapter,在其它地方区别不大
      

  3.   

    我一般都是用("INSERT INTO Inventory" +
    "(CarID, Make, Color, PetName) VALUES" +
    "('"+TextBox1.Text+"', ...) 
    这种形式没感觉有什么区别
      

  4.   

    TO:这是为什么啊?为什么要创建 Inventory表的每一列呢?这不是创建每一列,这是添加参数..因为你上面命令用的是参数的形式:"..(@CarID, @Make, @Color, @PetName)..",所以后面得增加参数,不然它怎么知道要插入什么数据呢?具体这种添加参数方式有什么好处,我认为有两点:一方面增加易读性,这样也不容易犯一些低级错误,当然查找错误也更加方便;另一方面,可以防止sql注入,提高安全性...
    具体为什么有时用SqlDataAdapter,而有时则直接写SqlCommand,本人觉得还是看具体情况,哪个用着方便,就用哪个...以上意见仅供参考...