用SQLDATAADAPTER的UPDATE方法提交更改的时候,是不是要求DATATABLE的列数和数据库中对应表的列数相等?
如果DATATABLE的列数比数据库中对应表的列数少,能成功提交更改保存到数据库吗?

解决方案 »

  1.   

    可以的啊 
    定义
    sqlDataAdapter1.UpdateCommand时将SqlCommand定义为仅更新指定字段就行了
      

  2.   

    那我在更新数据库时候用到的几个字段,在数据库里表有,在DATATABLE里面没有,用sqlDataAdapter更新DATATABLE的时候会把它们落下吗?
      

  3.   

    还是不大明白.在更新的时候仅设置那些需要更新到数据库的字段就可以了吗?那些在检索过程中用到的字段需要设参数吗?
    (我指的是 SqlParameterCollection 和 SqlDbParameter这些参数的设置 )
      

  4.   

    检索?向数据库更新是需要一个条件,假设为ID,那么你在SqlParameter里面指定ID的值就行了,那样UpdateCommand将会自动根据你设置的ID来更新数据库中ID与你提交的条件ID对应的行数据。
      

  5.   

    很不好意思我实在是太菜了,最近下载了好多本.NET参考书看,都看了十几本了,越看越迷糊.
    好多书都是兜了好大一个圈子跟你说了一通大道理,结果里面真正要用的例程还是解决不了你的任何问题.
    我现在看了那么多资料,还没看到有哪一本好好教你设置SQLDATAADAPTER参数的
    到现在为止我都不会设置那3个参数UPDATECOMMAND\INSERTCOMMAND\DELETECOMMAND里面自带的SQL语句;希望朋友们能给我VB.NET代码,小弟在这里发自内心的感谢各位!!!!还有郁闷的是,单位里做的任务是根据DATATABLE的变化来写入数据库表,最要命的是数据来源除了DATATABLE,还有页面元素....都迷糊了
    苦啊!! 
      

  6.   

    只要DATATABLE的 数据是来源于一张数据表,而且源表有主键就行
      

  7.   

    可以的,你在aspx里面找到UpdateCommand的相关字段,改一下~
      

  8.   

    最令小弟郁闷的是公司给我们的aspx里没有任何关于UpdateCommand设定的相关字段,这块东西的教程资料本来就少.公司上级把一个空壳子一堆控件的页面丢给我们做,数据库表也是事先做好的,不允许我们半点更改,苦啊.网上看了许多教程,看下来模棱两可,至今不知道如何在代码里设置UPDATECOMMAND、INSERTCOMMAND、DELETECOMMAND
    希望朋友们给我这方面的代码,谢谢!!!
      

  9.   

    看起来你没有专门学习过SQL Server的T-SQL。很遗憾!你不是一个专业使用sql server编程者。我翻了一下我几年以前的书目,找出两本t-sql入门书:1. 《SQL Server 2000高级编程技术》 by Dejan Sunderic & Tom Woodhead,熊桂喜 等译,清华大学出版社,2002年2月第一版。
    2. 《Transact-SQL 权威指南》 by Ken Handerson & Joe Celko,健莲科技 译,中国电力出版社,2002年8月第一版。这些书译名比较邪乎,其实只是专业的SQL Server程序员的入门工具书。
    数据库T-SQL确实是很多中小型软件的看家法宝,业务逻辑都用数据库来完成。你们公司能够给你这样的非专业程序员提供程序员职位,你应该庆幸,少一些埋怨。
      

  10.   

    使用DataAdapter,需要自己能够写出含有参数变量的T-SQL语句,变量会自动匹配你的.net程序提交的数据。并且往往需要你会熟练写出存储过程的能力。另外csdn有SQL Server数据库论坛,我记得至少2年前它也是最热门的论坛,有很多你用几百行普通3GL代码也难以解决的问题可以用一行或者几行T-SQL代码在那个论坛得到解决。学习T-SQL可以主要到数据库论坛上去问。