热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

adonet五大对象是什么

本文主要介绍关于的知识点,对【ADO.NET】和【adonet五大对象是什么】有兴趣的朋友可以看下由【前路漫漫其修远兮】投稿的技术文章,希望该技术和经验能帮到你解决你所遇的【MYSQL】相关技术问题。

本文主要介绍关于的知识点,对【ADO.NET】和【adonet五大对象是什么】有兴趣的朋友可以看下由【前路漫漫其修远兮】投稿的技术文章,希望该技术和经验能帮到你解决你所遇的【MYSQL】相关技术问题。

adonet五大对象是什么

ADO.NET是微软 . NET数据库的访问构建,主要提供一个面向对象的数据库访问构建,用来开发数据库应用程序。
ADO.NET主要包括;

Connection:主要用来提供数据库的连接功能Command 对象用于返回数据,修改数据,运行存储过程以及发送或检索参数信息的数据库命令。DataReader对象通过 Command对象提供从数据库检索信息的功能,它以一种只读的,向前的,快速的,方式访问数据库。DataAdapter 对象提供连接DataSet对象和数据源的桥梁,它主要使用Command对象在数据源中执行SQL命令,以便将数据加载到DataSet数据集中,并确保DataSet数据集中数据的更改与数据源保持一致。DataSet对象是一个数据库容器,可以把它当作是存在与内存中的数据库,无论数据源是什么,它都会提供一致的关系编程模型。DataTable对象表示内存中数据的一个表。 Connection对象
微软公司提供了4种数据提供程序的连接对象
以 SQL Server数据库为例,引入命名空间System.Data.SqlClient/System.Data.Server.Client
SQL Server数据提供程序的SqlConnection连接对象。
连接SQL Server数据库,语法格式如下:
string cOnnectionString=“Server=【本地为localhost,服务器为IP】 ;User Id=用户;Pwd= 密码;DataBase=数据库名称”;
调用Connection对象的open方法或者close方法可以打开或者关闭数据库。数据库联机资源是有限的,因此在需要的时候才打开连接,且一旦使用完就应该尽早的关闭连接,把资源还给系统。
private void From1_Load(object sender,EventArgs e)
{
//创建数据库连接字符串
string SqlStr = "Server=XIAOKE ;User Id=sa;Pwd= 123;DataBase=db_EMS";
SqlConnection con = new SqlConnection(SqlStr);//创建数据库连接对象
con.Open();
if(con.State==connectionState.Open)
{
label1.Text="数据库连接成功!";
con.Close();
}
if(con.State==connectionState.Closed)
{
label2.Text="数据库连接关闭!";
}

2.Command对象
使用command对象对数据源执行查询,添加,删除和修改各种操作,操作实现的方式可以使用SQL语句,也可以使用存储过程。command对象分成4种,分别是SqlCommand,OleDbCommand、OdbcCommand、OCommand,在实际的编程过程中应该根据访问的数据源不同,选择对应的Command对象。

CommandType 获取或设置Command对象执行命令的类型CommandText 获取或设置要对数据源执行的SQL语句或存储过程名或表名CommandTimeOut 获取或设置在终止对执行命令的尝试并生成错误之前的等待时间Connection获取或设置Command对象使用的Connection对象的名称Parameters获取Command对象需要使用的参数集合
例如使用SqlCommand对象对SQL Sever数据库执行查询操作
//创建数据库连接
string cOnn= "Server=XIAOKE ;User Id=sa;Pwd= 123;DataBase=db_EMS";
qlConnection comm = new SqlConnection();
comm.COnnection= conn;//创建数据库连接对象
comm.CommandType=CommandType.Text;//设置要执行的类型
comm.CommandText="select * from tb_stock";//设置要执行的语句

Command对象常用方法及说明如下所示
ExecuteNonQuery:用于执行非SELECT命令,你如INSERT\DELETE\UPDATE,并返回3个命令所影响的数据行数;另外也可以执行一些数据定义命令,比如新建、更新、删除数据库对象(如表,索引)
ExecuteScalar:用于执行SELECT查询命令,返回数据中第一行第一列的值,该方法通常用来执行那些用到COUNT或SUM函数的SELECT命令
ExecuteReader:,并返回一个DataReader对象,这个DataReader对象是一个只读向前的数据集。
例:向数据表中添加编程词典信息

 private void button1_Click(object sender, EventArgs e)
        {
            SqlConnection cOnn= new SqlConnection("Server=YXZ-PC;User Id=sa;Pwd=yanxianze01;DataBase=E_Market");
            String strsql = "insert into tb_PDic (Name,Money)values(1,'"+textBox1.Text+"',"+Convert.ToDecimal(textBox2.Text)+")";
            SqlCommand comm = new SqlCommand(strsql,conn);
            if (conn.State == ConnectionState.Closed)
            {
                conn.Open();
            }
            //判断ExecuteNonQuery返回的参数是否大于0,大于0表示添加成功
            if (Convert.ToInt32(comm.ExecuteNonQuery()) > 0)
            {
                label1.Text = "添加成功";
            }
            else
            {
                label1.Text = "添加失败";
            }
            conn.Close();

应用Command对象调用存储过程
参考:https://www.codeproject.com/Articles/126898/Sql-Server-How-to-write-a-Stored-procedure-in-Sql

DataReader对象
DataReader对象是一个简单的数据集,它主要用于从数据源中读取只读的数据集,其常用于检索大量数据。根据.NET Framnework 数据提供的程序不同,DataReader可以分为sqlDReader、、、、。
说明:DataReader对象时一个轻量级的数据对象,如果只需将数据读出并显示,那么他是最合适的工具,应为它的读取速度比dataset对象要快,占用的资源也更少;但是datareader对象在读取数据时,要求数据库一直保持连接状态,只有在读取完之后才能断开连接。
DataReader对象常用属性及说明
(1)HasRows:判断数据库中是否有数据;
(2)FileCount :获取当前的行数;
(3)RecordAffected :获取执行SQL语句所更改,添加或删除的行数
DataReader对象常用方法及说明
Read:使用DataReader对象前进行到下一条记录
Close:关闭DataReader对象
Get:用来读取数据集的当前行的某一列的数据
使用DataReader对象检索数据
使用DataReader对象读取数据时,首先使用HasRows属性判断是否有数据可读,如果有数据,返回Ture;然后仔使用DataReader对象的Read方法来循环读取数据表中的数据;最后通过访问DataReader对象的索引来读取到的值。
例:在默认窗口添加一个RichTextBox控件,用来显示使用sqlDataReader对象读取到的数据表中的数据。代码如下:
 private void Form1_Load(object sender, EventArgs e)
        {
            SqlConnection sqlcon = new SqlConnection("Server=YXZ-PC;User Id=sa;Pwd=yanxianze01;DataBase=E_Market");//创建数据库连接对象
            SqlCommand sqlcmd = new SqlCommand("select * from tb_PDic order by ID asc",sqlcon);//创建sqlcommand对象
            if (sqlcon.State == ConnectionState.Closed)
            {
                sqlcon.Open();
            }
            SqlDataReader sqldr = sqlcmd.ExecuteReader();
            richTextBox1.Text = "编号     版本     价格\n";
            try
            {
                if (sqldr.HasRows)               //判断sqldatareader对象中是否有数据
                {
                    while (sqldr.Read())         //循环读取sqldatareader对象中的数据
                    {
                        richTextBox1.Text += "" + sqldr["ID"] + "       " + sqldr["Name"] + "       " + sqldr["Money"] + "\n";//显示读取的详细信息
                    }
                }
            }
            catch (SqlException ex)                        //捕获数据库异常
            {
                MessageBox.Show(ex.ToString());            //输出详细信息
            }
            finally
            {
                sqldr.Close();
                sqlcon.Close();
            }
            }

adonet五大对象是什么


4. DataSet 对象
DataSet对象是ADO.NET的核心成员,他是支持ADO.NET断开式、分布式数据方案的核心对象,也是实现基于非连接的数据查询的核心组件。DataSet对象时建在内存中的集合对象,它可以包含任意数量的数据表以及所有表的约束、索引和关系等。它实质上相当于在内存中的一个小型关系数据库。
一个DataSet对象包含一组DataTable对象和DataRelation对象,其中每个DataTable对象都由DataColum\DataROW\CONSTRAINT集合对象组成。
DataSet对象将数据库中的数据复制了一份放在了用户本地的内存中,供用户在不连接数据库的情况下读取数据,以便充分利用客户端资源,降低数据库的压力。
DataAdepter对象
DataAdepter对象是一种用来充当dataset对象与实际数据源之间桥梁的对象,只要由dataset对象就有dataadepter对象,它的工作步骤:一种时通过command对象执行sql语句,从数据源中检索数据,并将检索到的结果填充到dataset对象中。另一种时把用户对dataset对象作出的更改写入到数据源中。
填充dataset数据集
FILL方法的3种重载形式
int Fill(DataSet dataset):添加或更新参数所指定的dataset数据集,返回值时受影响的行数。
int Fill(DataTable datable):将数据填充到一个数据表中。
int Fill(DataSet dataset,string tableName):填充指定的Dataset数据集中的指定表。
例:添加一个DataGridView控件,用来显示使用dataadepter对象填充后的dataset数据集中的数据。

      private void Form1_Load(object sender, EventArgs e)
        {
            string strcon = "Server=YXZ-PC;User Id=sa;Pwd=yanxianze01;Database=E_Market";//定义数据库连接字符串
            SqlConnection sqlcon = new SqlConnection(strcon);//创建数据库连接对象
            SqlDataAdapter sqlda = new SqlDataAdapter("select * from tb_PDic",sqlcon);
            DataSet myds = new DataSet();//创建数据集对象
            sqlda.Fill(myds, "tabName");//填充数据集中的指定表
            dataGridView1.DataSource = myds.Tables["tabName"];//为 dataGridView1指定数据源

        }

本文《ADO.NET》版权归前路漫漫其修远兮所有,引用ADO.NET需遵循CC 4.0 BY-SA版权协议。


推荐阅读
  • 利用Visual Basic开发SAP接口程序初探的方法与原理
    本文介绍了利用Visual Basic开发SAP接口程序的方法与原理,以及SAP R/3系统的特点和二次开发平台ABAP的使用。通过程序接口自动读取SAP R/3的数据表或视图,在外部进行处理和利用水晶报表等工具生成符合中国人习惯的报表样式。具体介绍了RFC调用的原理和模型,并强调本文主要不讨论SAP R/3函数的开发,而是针对使用SAP的公司的非ABAP开发人员提供了初步的接口程序开发指导。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • Java容器中的compareto方法排序原理解析
    本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ... [详细]
  • 阿,里,云,物,联网,net,core,客户端,czgl,aliiotclient, ... [详细]
  • 原文地址:https:www.cnblogs.combaoyipSpringBoot_YML.html1.在springboot中,有两种配置文件,一种 ... [详细]
  • 不同优化算法的比较分析及实验验证
    本文介绍了神经网络优化中常用的优化方法,包括学习率调整和梯度估计修正,并通过实验验证了不同优化算法的效果。实验结果表明,Adam算法在综合考虑学习率调整和梯度估计修正方面表现较好。该研究对于优化神经网络的训练过程具有指导意义。 ... [详细]
  • ASP.NET2.0数据教程之十四:使用FormView的模板
    本文介绍了在ASP.NET 2.0中使用FormView控件来实现自定义的显示外观,与GridView和DetailsView不同,FormView使用模板来呈现,可以实现不规则的外观呈现。同时还介绍了TemplateField的用法和FormView与DetailsView的区别。 ... [详细]
  • 本文介绍了如何使用C#制作Java+Mysql+Tomcat环境安装程序,实现一键式安装。通过将JDK、Mysql、Tomcat三者制作成一个安装包,解决了客户在安装软件时的复杂配置和繁琐问题,便于管理软件版本和系统集成。具体步骤包括配置JDK环境变量和安装Mysql服务,其中使用了MySQL Server 5.5社区版和my.ini文件。安装方法为通过命令行将目录转到mysql的bin目录下,执行mysqld --install MySQL5命令。 ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • 如何在php中将mysql查询结果赋值给变量
    本文介绍了在php中将mysql查询结果赋值给变量的方法,包括从mysql表中查询count(学号)并赋值给一个变量,以及如何将sql中查询单条结果赋值给php页面的一个变量。同时还讨论了php调用mysql查询结果到变量的方法,并提供了示例代码。 ... [详细]
author-avatar
手浪用户2602928711
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有