ADO.NET基础巩固-----连接类和非连接类

      最近的一段时间自己的状态还是不错的,早上,跑步,上自习看书,下午宿舍里面编程实战,晚上要么练习代码,要么去打球(在不打就没机会了),生活还是挺丰富的。

关于C#的基础回顾就先到前面哪里,这些要自己在工作中慢慢的去体会,不是说看书就可以掌握的。我们都是从学生时代过来的知道每个人的学习情况是不一样的,所以找到自己的学习节奏是最好不过的。

下面是关于访问数据库[ADO.NET]的学习,之前刚开始学习的时候把这些基本的都过了一遍,但是长时间不使用,一些基本的用法还是会遗忘的。

    一:关于ADO.NET中基本名称的解释

     现在我才知道ADO.NET里面分为连接类和断开连接类两种,这些都是从一些基本的关键字(就先这么叫)来区分的。

     连接类:

                   Connection,  Command,  DataReader和 DataAdapter

     连接类可以提取和更新底层数据源中的数据。每个数据提供程序负责实现连接类。

  • Connection

          Connection对象表示与数据源的一次单独的会话,Connection类指定了连接到数据源必须的验证信息。

  • Command

          Command对象使用一个已建立的Connection对象,对数据源执行SQL语句和存储过程。CommandText属性包含了对数据源所执行的sql语句。

  • DataReader

          DataReader提供了对结果集的只前,只读的访问。DataReader对象提供了访问数据的最佳性能,避免了DataSet相关联的开销。可以通过执行Command类的ExecuteReader()方法创建一个DataReader对象。我们可以通过这个对象读取到里面具体的值。里面有个.reader()方法我们可以通过这个来得到。

  • DataAdapter

         DataAdapter通过从数据源提取数据,并填充一个(断开连接)的DataSet/DataTable,这个也可以进行更新,反着来。

     断开连接类:

                    DataSet, DataTable, DataColumn,DataRow, DataView, DataRelation和Constraint.

     断开连接类可以对于连接类提供的数据进行离线的访问和操作,以后在使用与底层的数据源进行同步。

  • DataSet

      DataSet是存储在内存中的一个断开连接的关系数据库(不和本地的有任何关系),提供高级浏览功能,作为其它对象的容器,包括DataTable,DataRows,DataColumn我们可以在代码中使用这些对象。

  • DataTable

      DataTable表示加载到内存中的数据的单个表,可以独立存在,也可以作为DataSet中的一部分。

  • DataRow

     DataRow表示DataTable中的一行数据

  • DataColumn

     DataRow表示DataTable中的一列数据

关于上面方法,属性的基本操作

    /// <summary>
    /// 关于ADO.NET中连接类和断开连接类的学习.
    /// </summary>
    class Program
    {
        static void Main(string[] args)
        {
            string connectionString = "";
            string sql = "";
            SqlConnection conn=new SqlConnection(connectionString);
            SqlCommand cmd=new SqlCommand(sql,conn);
            cmd.CommandType=CommandType.Text;   //这里可以修改,要是存储过程的话直接就修改了,这个是枚举类型。

            //  1  :使用SqlDataReader来操作
            conn.Open();
            SqlDataReader dr = cmd.ExecuteReader();      //返回结果: System.Data.SqlClient.SqlDataReader 对象。
            dr.Read();
            //下面就可以取出我们需要的数据了,要是需要多次while()来循环.
            string data1=dr.GetString(0); //一次出现一行数据。
            conn.Close();
            dr.Close();

            //  2 : 使用SqlDataApadter来操作
            conn.Open();
            //声明DataTable和DataSet它们是断开连接类,相当于本地的数据库一样。
            DataTable table = new DataTable();
            DataSet ds=new DataSet();
            SqlDataAdapter da=new SqlDataAdapter(cmd);
            da.Fill(table);       //把数据加载到DataTable中,
            da.Fill(ds);          //把数据加载到DataSet中,
            conn.Close();
            //我们可以在上面关闭的情况下,在DataTable和DataSet中找到数据来使用。

            // 3 :关于cmd的一些常用的方法。
            //    ExecuteScalar()+ 执行查询,并返回查询所返回的结果集中第一行的第一列。 忽略其他列或行。
            object rowColumn = cmd.ExecuteScalar();

            //    ExecuteNonQuery()  +对连接执行 Transact-SQL 语句并返回受影响的行数。
            int row=cmd.ExecuteNonQuery();

            //    ExecuteReader()   +将 CommandText 发送到 Connection并生成一个 SqlDataReader并返回。
            SqlDataReader sqa = cmd.ExecuteReader();
            conn.Close();
        }
    }
时间: 2024-12-11 07:23:19

ADO.NET基础巩固-----连接类和非连接类的相关文章

派生类地址比基类地址少4(子类与基类指针强行转换的时候,值居然会发生变化,不知道Delphi BCB是不是也这样) good

大家对虚表并不陌生,都知道每个含有虚函数的类对象都有1个虚指针,但是在现实使用中,却总是因为这而调试半天,才发现原来是虚指针惹的祸.我这几天在调试代码时候也中招了,我的问题是这样的,如下图,CTree是最底层基类(非虚类), CSamplerTree(虚类)派生自CTree,CMSamplerTree,CASamplerTree派生自CSamplerTree,                                                         CTree中包括两个成员

“ping”命令的原理就是向对方主机发送UDP数据包,HTTP在每次请求结束后都会主动释放连接,因此HTTP连接是一种“短连接”

Socket  是一套建立在TCP/IP协议上的接口不是一个协议 应用层:  HTTP  FTP  SMTP  Web 传输层:  在两个应用程序之间提供了逻辑而不是物理的通信(TCP  UDP) TCP  可靠的  面向连接的服务 UDP  不可靠的  无连接的服务 只要底层实现TCP IP协议  都可以用socket进行通信 1.TCP和UDP 1.1 TCP连接 TCP协议能为应用程序提供可靠的通信连接,使一台计算机发出的字节流无差错地发往网络上的其他计算机,对可靠性要求高的数据通信系统往

ADO.NET 非连接方式进行数据访问

1. 配置 DataAdapter 以检索信息 1.1. DataAdapter ? 数据适配器是数据集与数据源交互的桥梁 –使相当于数据源本地拷贝的数据集可以与数据源之间进行交互. ? 为数据库提供的主要两种数据适配器 – SqlDataAdapter:不经过OLEDB层直接与SQLServer交互,速度较OleDbDataAdapter快. – OleDbDataAdapter:适用于任何可以用OLEDB数据提供者访问的数据源. 1.2. XxxDataAdapter对象模型 ? Comma

如鹏网学习笔记(六)ADO.Net基础

ADO.Net基础 一.ADO.Net简介 1,程序要通过SQL语句自动化的操作数据库,必须要用一个类库, 类库要提供execute("insert into ...")/executeQuery("select * from ...")类似的方法 2,ADO.Net是.Net中提供的标准访问数据库的接口,访问不同的DBMS的底层方法是不一样的,ADO.Net把访问数据库的方法进行了统一, 访问MYSql.Oracle.SqlServer等不同数据库的方法几乎是一样

ADO.NET基础开发

ADO.NET是微软新一代.NET数据库的访问架构,ADO是ActiveX Data Objects的缩写.ADO.NET是数据库应用程序和数据源之间沟通的桥梁,主要提供了一个面向对象的数据访问架构,用来开发数据库应用程序. ADO.NET主要包括Connection.Command.DataReader.DataSet和DataAdapter对象.详细介绍如下:   对象名称 说明 Connection 主要提供与数据库的连接功能 Command 用于返回数据.修改数据.运行存储过程以及发送或

.Net Core 系列:2、ADO.Net 基础

目录: 1.环境搭建 2.ADO.Net 基础 3.ASP.Net Core 基础 4.MD5.Sha256.AES 加密 5.实现登录注册功能 6.实现目录管理功能 7.实现文章发布.编辑.阅览和删除功能 8.实现文章回复功能 9.实现文章点赞功能 10.正式发布文章系统 1.前言 因为本系列是.NET Core 系列,本文中所有叙述的是基于.NET Core 1.1版本的数据访问层接口.为什么需要强调是.Net Core 1.1呢?由于在2017年Q3发布的.NET Core 2.0中通过官

ADO.NET基础(增删改查)

ADO.NET是一种数据访问技术,就是将C#和MSSQL连接起来的一个纽带.可以通过ADO.NET将内存中的临时数据写入到数据库中,也可以将数据库中的数据提取到内存中供程序调用. ADO.NET是所有数据访问技术的基础. 一.连接数据库基本格式 两个类:1.数据库连接类 SqlConnection2.数据库操作类 SqlCommand 二.连接数据库基本步骤 (一)增.改.删 1.连接数据库写连接字符串,立马就要想到有4点要写完,1.连接哪台服务器,2.连接哪个数据库,3.连接用户名,4.密码s

java网络编程基础(五)—NIO非阻塞编程

本节讲点: NIO引入:分析普通Socket通信中存在的IO问题--阻塞通信,并分析传统的线程池的优缺点,进而引入NIO解决方案 NIO核心框架:讲解NIO的4个核心概念所对应的框架包,包括缓存Buffer.字符集Charset.通道Channel及选择器Selector 缓存Buffer:是包含数据且用于读写的线性表结构. 字符集Charset:提供Unicode字符串映射到字节序列及逆映射操作 通道Channel:包含Socket.File和Pipe3种管道,双向的 选择器Selector:

1.27 Java基础总结 ①访问修饰符访问权限②类和方法的基本声明和使用1.27 Java基础总结 ①访问修饰符访问权限②类和方法的基本声明和使用

1.27 Java基础总结 ①访问修饰符访问权限②类和方法的基本声明和使用 成员变量(属性)①类中添加成员变量 访问修饰符 类型 变量名 private String name ②实例化对象调用类的构造方法类构造对象,Teacher one = new Teacher(): 有static的可以直接调用,因为static是类级别的 ③JavaBean里边一般规则应该有公共的无参构造应该有符合命名规范的get/set方法 ④对象的回收:没有任何引用指向该对象时,GC会回收 主动回收:对象 = nu