数据适配:DataAdapter对象概述
DataAdapter对象可用于执行数据库的命令操作,含有四个不同的操作命令,分别如下:
- SelectCommand:用来选取数据源中的记录:
- InsertCommand:用来向数据源中新插入一条记录:
- UpdateCommand:用来更新数据源中的数据:
- DeleteCommand:用来删除数据源中的记录
实例:
更新数据源DataAdapter的update方法可用来将dataset中的更改解析回数据源
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Data; namespace DataAdapter
{
class Program
{
public static void outvalus(DataSet ds)
{
foreach (DataTable outtb in ds.Tables)
{
foreach (DataRow outrow in outtb.Rows)
{
foreach (DataColumn outcl in outtb.Columns)
{
Console.Write(outrow[outcl] + "\t");
}
Console.WriteLine();
}
} }
static void Main(string[] args)
{
string constr = "server=192.168.100.222;user=sa;pwd=p@ssw1rd;database=pwd1";
SqlConnection mycon = new SqlConnection(constr);
try
{
mycon.Open();
SqlDataAdapter my = new SqlDataAdapter("select * from book", mycon); //离线访问数据集dataset需要用到DataAdapter 它起到一个适配的作用
//(比如电脑的适配器 把交流电适配成直流的) DataSet ds = new DataSet(); //创建数据集 my.Fill(ds, "book"); //DataAdapter填充方法 把数据库原表填充到DataSet数据集中
Console.WriteLine("修改前的数据");
foreach (DataTable outtable in ds.Tables)
{
foreach (DataColumn outcolu in outtable.Columns)
{
Console.Write(outcolu.ColumnName + "\t\t"); //输出DataSet中列的名称
}
Console.WriteLine();
} outvalus(ds);
Console.WriteLine("修改后的数据");
foreach (DataTable outtable in ds.Tables)
{
foreach (DataColumn outcolu in outtable.Columns)
{
Console.Write(outcolu.ColumnName + "\t\t"); //输出DataSet中列的名称
}
Console.WriteLine();
}
string sqlupdate = "update book set shuoming='K3账套备份' where bid=10001 ";//声明一个更新的字符串 my.UpdateCommand = new SqlCommand(sqlupdate,mycon); //利用dataadapter适配中的updatecommand属性来获取SqlCommand(更新字符串,数据库连接) DataRow row = ds.Tables[].Rows[]; //定义一个datarow row=dataset中第一个表第一行;
row["shuoming"]="K3账套备份"; //行shuoming列=k3账套备份;
my.Update(ds, "book"); //dataadapter中update方法来更新数据集中的book数据源
outvalus(ds); }
catch (Exception ex)
{ Console.WriteLine(ex.Message.ToString());
}
finally
{
mycon.Close(); }
Console.ReadKey();
}
}
}
数据适配:DataAdapter对象概述的更多相关文章
- 数据适配 DataAdapter对象
DataAdapter对象是DataSet和数据源之间的桥梁,可以建立并初始化数据表(即DataTable) 对数据源执行SQL指令,与DataSet对象结合,提供DataSet对象存取数据,可视为D ...
- C#与数据库访问技术总结(十五)之 DataAdapter对象代码示例
DataAdapter对象代码示例 下面的代码将说明如何利用DataAdapter对象填充DataSet对象. private static string strConnect=" data ...
- C#与数据库访问技术总结(十四)之DataAdapter对象
DataAdapter对象 DataAdapter对象主要用来承接Connection和DataSet对象. DataSet对象只关心访问操作数据,而不关心自身包含的数据信息来自哪个Connectio ...
- Asp.net内置对象之Request对象(概述及应用)
Request对象主要用于获取来自客户端的数据,如用户填入表单的数据.保存在客户端的Cookie等,本文将围绕Request对象,讲解其的主要作用:读取窗体变量.读取查询字符串变量.取得Web服务器端 ...
- .NET 并行(多核)编程系列之七 共享数据问题和解决概述
原文:.NET 并行(多核)编程系列之七 共享数据问题和解决概述 .NET 并行(多核)编程系列之七 共享数据问题和解决概述 前言:之前的文章介绍了了并行编程的一些基础的知识,从本篇开始,将会讲述并行 ...
- ADO.NET系列之DataAdapter对象
ADO.NET系列之Connection对象 ADO.NET系列之Command对象 ADO.NET系列之DataAdapter对象 ADO.NET系列之事务和调用存储过程 我们前两篇文章介绍了ADO ...
- Unit06: 外部对象概述 、 window 对象 、 document 对象
Unit06: 外部对象概述 . window 对象 . document 对象 小代码演示: <!DOCTYPE html> <html> <head> < ...
- Unit05: JavaScript对象概述 、 常用内置对象一 、 常用内置对象二 、 常用内置对象三
Unit05: JavaScript对象概述 . 常用内置对象一 . 常用内置对象二 . 常用内置对象三 常用内置对象使用演示: <!DOCTYPE html> <html> ...
- DataAdapter对象
DataAdapter对象在物理数据库表和内存数据表(结果集)之间起着桥梁的作用.它通常与DataTable对象或DataSet对象配合来实现对数据库的操作. DataAdapter对象是一个双向通道 ...
随机推荐
- ES6学习之let声明变量的学习
1.let和var类似, (1)let与var不同的点:let没有预编译,变量提升这个过程,let声明的变量只能在当前作用域内访问到(一个{}可以看做是一个作用域),在全局var声明的变量属于wind ...
- JVM垃圾收集器(2)
此文已由作者赵计刚薪授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 1.G1 说明: 从上图来看,G1与CMS相比,仅在最后的"筛选回收"部分不同(CMS ...
- Neutorn LBaaS 原理
Load Balance as a Service(LBaaS)是 Neutron 提供的一项高级网络服务.LBaaS 允许租户在自己的网络中创建和管理 load balancer. load bal ...
- java中继承的关系
当有父子关系的两个类(继承关系),当子类实例化对象的时候 会默认调用父类的无参构造方法,如果有 super()的话,调用的是父类有参的构造方法! 也就是说 父类必须有 有参构造 没有的话super ...
- C# RDLC报表不出现预览窗体直接输出到打印机
#region 直接打印区域 /// <summary> /// 直接打印到打印机 /// </summary> /// <param name="report ...
- MysqliDb 库的一些使用简单技巧(php)
一.分页功能 假设接口要接受输入:page, page_limit,key,value,table 来查询 table 中 key like value 的元组中以 page_limit 为 page ...
- 洛谷P4250 [SCOI2015]小凸想跑步(半平面交)
题面 传送门 题解 设\(p\)点坐标为\(x_p,y_p\),那么根据叉积可以算出它与\((i,i+1)\)构成的三角形的面积 为了保证\(p\)与\((0,1)\)构成的面积最小,就相当于它比其它 ...
- Prufer codes与Generalized Cayley's Formula学习笔记
\(Prufer\)序列 在一棵\(n\)个点带标号无根树里,我们定义这棵树的\(Prufer\)序列为执行以下操作后得到的序列 1.若当前树中只剩下两个节点,退出,否则执行\(2\) 2.令\(u\ ...
- Markdown入门简介
参考 http://sspai.com/25137 作者: Te_Lee 文章来源: 少数派 Markdown入门简介(使用工具Haroopad) 一.使用的工具----haroopad(http:/ ...
- Oracle递归查询(start with)
写代码时碰到要弄清楚Oracle的role之间的传递关系,就是有role A的话,可以通过grant A to B,把A赋予给B,又通过grant B to C .那我想知道所有role中,有哪些ro ...