CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  MS-SQL Server >  基础类

【新手上路】求教DataGrid问题

楼主yancan(小毛驴)2004-05-03 21:57:03 在 MS-SQL Server / 基础类 提问

将sql的示范数据库northwind中Employees表的EmployeeID,LastName等属性显示到DataGrid1中,但是怎么才能够支持鼠标在网页中修改DataGrid1中的属性值,在返回到数据库中去啊!?  
   
  SqlDataAdapter   myDS   =   new   SqlDataAdapter(strSQL,   myConn);  
  DataSet   ds   =   new   DataSet();  
  myDS.Fill(ds,"Employees");  
  DataGrid1.DataSource   =ds.Tables["Employees"];  
  DataGrid1.DataBind();  
   
  谢谢! 问题点数:20、回复次数:4Top

1 楼koskinen(因果关系)回复于 2004-05-03 23:23:28 得分 0

c#代码?  
  Top

2 楼koskinen(因果关系)回复于 2004-05-03 23:38:22 得分 20

DataAdapter   的   Update   方法可调用来将   DataSet   中的更改解析回数据源。与   Fill   方法类似,Update   方法将   DataSet   的实例和可选的   DataTable   对象或   DataTable   名称用作参数。DataSet   实例是包含已作出的更改的   DataSet,而   DataTable   标识从其中检索更改的表。  
   
  当调用   Update   方法时,DataAdapter   将分析已作出的更改并执行相应的命令(INSERT、UPDATE   或   DELETE)。当   DataAdapter   遇到对   DataRow   的更改时,它将使用   InsertCommand、UpdateCommand   或   DeleteCommand   来处理该更改。这样,您就可以通过在设计时指定命令语法并在可能时通过使用存储过程来尽量提高   ADO.NET   应用程序的性能。在调用   Update   之前,必须显式设置这些命令。如果调用了   Update   但不存在用于特定更新的相应命令(例如,不存在用于已删除行的   DeleteCommand),则将引发异常。  
   
  Command   参数可用于为   DataSet   中每个已修改行的   SQL   语句或存储过程指定输入和输出值。有关更多信息,请参见将参数用于   DataAdapter。  
   
  如果   DataTable   映射到单个数据库表或从单个数据库表生成,则可以利用   CommandBuilder   对象自动生成   DataAdapter   的   DeleteCommand、InsertCommand   和   UpdateCommand。有关更多信息,请参见自动生成的命令。  
   
  Update   方法会将更改解析回数据源,但是自上次填充   DataSet   以来,其他客户端可能已修改了数据源中的数据。若要使用当前数据刷新   DataSet,请再次使用   DataAdapter   填充   (Fill)   DataSet。新行将添加到该表中,更新的信息将并入现有行。Fill   方法通过检查   DataSet   中行的主键值及   SelectCommand   返回的行来确定是否要添加一个新行或更新现有行。如果   Fill   方法发现   DataSet   中某行的主键值与   SelectCommand   返回结果中某行的主键值相匹配,则它将用   SelectCommand   返回的行中的信息更新现有行,并将现有行的   RowState   设置为   Unchanged。如果   SelectCommand   返回的行所具有的主键值与   DataSet   中行的任何主键值都不匹配,则   Fill   方法将添加   RowState   为   Unchanged   的新行。  
   
  Top

3 楼koskinen(因果关系)回复于 2004-05-03 23:40:15 得分 0

[C#]  
  SqlDataAdapter   catDA   =   new   SqlDataAdapter("SELECT   CategoryID,   CategoryName   FROM   Categories",   nwindConn);                
   
  catDA.UpdateCommand   =   new   SqlCommand("UPDATE   Categories   SET   CategoryName   =   @CategoryName   "   +  
                                                                            "WHERE   CategoryID   =   @CategoryID"   ,   nwindConn);  
   
  catDA.UpdateCommand.Parameters.Add("@CategoryName",   SqlDbType.NVarChar,   15,   "CategoryName");  
   
  SqlParameter   workParm   =   catDA.UpdateCommand.Parameters.Add("@CategoryID",   SqlDbType.Int);  
  workParm.SourceColumn   =   "CategoryID";  
  workParm.SourceVersion   =   DataRowVersion.Original;  
   
  DataSet   catDS   =   new   DataSet();  
  catDA.Fill(catDS,   "Categories");        
   
  DataRow   cRow   =   catDS.Tables["Categories"].Rows[0];  
  cRow["CategoryName"]   =   "New   Category";  
   
  catDA.Update(catDS);  
  Top

4 楼playyuer(退休干部 卧鼠藏虫)回复于 2004-05-04 00:41:08 得分 0

人家是在   Browse   端更改  
   
  postbackTop

相关问题

  • 关于DataGrid(新手上路)
  • 新手上路,关于datagrid控件
  • 新手上路:DataGrid组件的应用
  • 新手上路:datagrid中的模板column有什么用?
  • 我用DataGrid为什么不能实现分页(新手上路)
  • 新手上路:在datagrid中如何把某一列设成超链接?
  • 新手上路!!!!!!!!!!!!!
  • 新手上路
  • 新手上路
  • 新手上路

关键词

  • 数据库
  • datagrid
  • 数据
  • 修改
  • catda
  • catds
  • 更改
  • categoryname
  • workparm
  • 主键值

得分解答快速导航

  • 帖主:yancan
  • koskinen

相关链接

  • SQL Server类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo