对DataTable(或者DataSet)修改后,提交修改到数据库

http://blog.csdn.net/nidexuanzhe/article/details/8228832

 

 

 

说明:通常我们在做数据库交互时,并不一定要使用特定的SQL语句来更新数据,.NET Framwork为我们提供了自动更新的功能

[csharp] view plain copy
  1. public static void UpdateTable()  
  2.         {  
  3.             SqlConnection conn = null;  
  4.             string sql = "select *From Course";  
  5.   
  6.             DataTable dt = null;  
  7.             DataSet ds = new DataSet();  
  8.   
  9.             try  
  10.             {     
  11.                 conn = new SqlConnection(connectionString);  
  12.                 SqlDataAdapter sda = new SqlDataAdapter();  
  13.                 sda.SelectCommand = new SqlCommand(sql, conn);  
  14.                 SqlCommandBuilder cb = new SqlCommandBuilder(sda);//自动生成相应的命令,这句很重要  
  15.   
  16.                 conn.Open();  
  17.   
  18.                 sda.Fill(ds);  
  19.                 dt = ds.Tables[0];  
  20.   
  21.                 DataRow dr = dt.NewRow();  
  22.                 dr["ID"] = 1006;  
  23.                 dr["Name"] = "面向对象编程";  
  24.                 dr["Grade"] = "10004";  
  25.                 dt.Rows.Add(dr);  
  26.   
  27.                 sda.Update(dt);//对表的更新提交到数据库  
  28.                 //DataRow[] drs = dt.Select(null, null, DataViewRowState.Added);//或者搜索之后再更新  
  29.                 //sda.Update(drs);  
  30.   
  31.                 dt.AcceptChanges();  
  32.             }  
  33.             catch (SqlException ex)  
  34.             { }  
  35.             finally  
  36.             {  
  37.                 conn.Close();  
  38.             }  
  39.         } 
posted @   LuoCore  阅读(237)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示