首页 > 代码库 > ADO.NET之9-非连接模式,内存中的数据库DataSet,DataTable---ShinePans
ADO.NET之9-非连接模式,内存中的数据库DataSet,DataTable---ShinePans
DataSet被称作数据集,可以比作内存中的数据库,DataSet为ADO.NET核心,支持ADO.NET断开式,分布式数据方案的核心对象也是实现基于非连接的数据查询核心组件
DataTable常用属性:
属性 | 说明 |
Columns | 获取属于该表的列的集合 |
Rows | 获取属于该表的行的集合 |
TableName | 获取或设置DataTable的名称 |
DataTable方法:
方法 | 说明 |
AcceptChanges | 提交自上次调用AcceptChanges以来对该表进行的所有更改 |
Clear | 清除DataTable内的所有数据 |
NewRow | 创建与该表具有相同架构的新DataRow |
using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Linq; using System.Text; using System.Threading.Tasks; namespace SQLTest { class Program { static void Main(string[] args) { ///连接数据库 DataSet ds = new DataSet(); //创建数据库DataSet对象 DataTable dt = new DataTable(); //创建数据库DataTable对象 ds.Tables.Add(dt); //将数据表对象加入数据集对象集合中 dt.Columns.Add("name", typeof(string)); //向DataTable中添加列 dt.Columns.Add("address", typeof(string));//向DataTable中添加列 DataRow dr = dt.NewRow(); //得到数据表,行对象 dr[0] = "潘潘"; dr[1] = "武汉"; //向行对象中添加数据 dt.Rows.Add(dr); dt.Rows.Add(new object[] { "潘潘潘", "北京" }); //向数据行中添加新的对象 foreach(DataRow v in dt.Rows) { Console.WriteLine("{0} {1}", v[0], v[1]); } string connection = "server=潘尚\\SQLEXPRESS;database=db_test;Trusted_Connection=true"; SqlConnection sc = new SqlConnection(connection); // sc.ConnectionString = connection; try { sc.Open(); //打开数据库连接 Console.WriteLine("已经打开数据库连接!"); //START:5.导出数据库中的记录////////////////////////////////////////////////////////// /* SqlCommand cmd = new SqlCommand("SELECT * FROM db_student", sc); SqlDataReader sdr = cmd.ExecuteReader(); //执行查找记录命令 while(sdr.Read()) { Console.WriteLine("{0}{1}{2}{3}", sdr[0], sdr[1], sdr[2], sdr[3]); } */ //END:5.导出数据库中的记录//////////////////////////////////////////////////////////// //START:4.查询数据库记录////////////////////////////////////////////////////////////// /* SqlCommand cmd = new SqlCommand("SELECT count(*) FROM db_student", sc); int i = (int)cmd.ExecuteScalar();//执行查找记录的命令 Console.WriteLine("表中共有{0}条数据", i.ToString()); */ //END:4.查询数据库记录//////////////////////////////////////////////////////////////// //START:3.修改数据库数据的代码//////////////////////////////////////////////////////// /* SqlCommand cmd = new SqlCommand("UPDATE db_student SET student_grade=99 where student_name=@name", sc); //创建SqlCommand对象 cmd.Parameters.Add("@name", SqlDbType.VarChar).Value = http://www.mamicode.com/"潘";>结果:
在未打开数据库连接之前,在内存中处理数据
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。