.net----数据库的访问ADO.NET、DataAdapter和DataSet

这篇具有很好参考价值的文章主要介绍了.net----数据库的访问ADO.NET、DataAdapter和DataSet。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

ADO.NET的概述

使用ADO.NET连接和操作数据库

使用DataAdapter和DataSet访问数据库

ADO.NET的概述

ADO.NET

  • .NET Framework提供的数据访问服务的类库
  • 提供对关系数据、XML和应用程序数据各种数据源的一致访问
  • 应用程序使用ADO.NET连接到数据源,检索、处理和更新数据

数据源

  • SQL Server数据源:System.Data.SqlClient命名空间
  • OLEDB数据源:System.Data.OleDb命名空间
  • ODBC数据源:System.Data.Odbc命名空间
  • Oracle数据源:System.Data.OracleClient命名空间

访问处理数据类库的两个组件:

  • .NET Framework 数据提供程序

  • DataSet
    .net----数据库的访问ADO.NET、DataAdapter和DataSet

  • Connection:建立与数据源的连接

  • Command:对数据源执行各种SQL命令

  • DataReader:从数据源中抽取数据(只读)

  • DataAdapter:用数据源填充DataSet

引用System.Data.dll和System.Xml.dll

使用ADO.NET连接和操作数据库

使用数据提供程序访问数据库操作的典型步骤:

(1)建立数据库连接

创建Connection对象连接到特定的数据库

(2)创建SQL命令

使用Command对象来执行命令并从数据源中返回结果

(3)执行SQL命令

Command对象的Execute方法:ExecuteReader,ExecuteScalar,ExecuteNonQuery

(4)处理SQL命令结果

使用DataReader对象的Read方法可从查询结果中获取行
向DataReader传递列的名称或序号引用,可以访问返回行的每一列

查询数据库表数据

// (1)连接到数据库
String connString = @"Data Source=(LocalDB)\v11.0;Initial Catalog=Northwind;
AttachDbFilename=C:\C#\DB\Northwnd.mdf;Integrated Security=True;";
String commandTextQuery = "SELECT RegionID, RegionDescription FROM Region";

using (SqlConnection connection = new SqlConnection(connString))
{  connection.Open();
// (2)创建SqlCommand命令
            SqlCommand cmdQuery = new SqlCommand(commandTextQuery, connection);
// (3)执行SqlCommand命令并返回结果
SqlDataReader reader = cmdQuery. ExecuteReader();
Console.WriteLine("Northwind.MDF数据库的Region表的内容如下:");
Console.WriteLine("地区编号\t地区说明");
//(4)通过循环列表显示查询结果集
while (reader.Read()){ Console.WriteLine("   {0} \t\t {1}", reader[0], reader[1]); }
reader.Close();  //关闭查询结果集
}

.net----数据库的访问ADO.NET、DataAdapter和DataSet

插入数据库表数据

先建立数据库连接

然后使用SQL Insert语句创建命令,并使用Command的Parameters 属性来设置输入参数

SqlCommand cmdInsert = new SqlCommand(commandTextInsert, connection);
cmdInsert.Parameters.AddWithValue("@id", 5);

最后使用命令的ExecuteNonQuery()方法执行数据库记录插入操作,并根据返回的结果判断插入的结果

int result = cmdInsert.ExecuteNonQuery();
if (result == 1) { Console.WriteLine("插入记录操作成功."); }
else { Console.WriteLine("插入记录操作失败."); }

更新数据库表数据

 String commandTextUpdate = "Update Region Set RegionDescription = @name WHERE RegionID = @id";

删除数据库表数据

String commandTextDelete = "DELETE FROM Region WHERE RegionID = @id";

使用存储过程访问数据库

SqlCommand cmdQuery = new SqlCommand("Ten Most Expensive Products", connection);
cmdQuery.CommandType = CommandType.StoredProcedure;

使用DataAdapter和DataSet访问数据库

使用DataAdapter和DataSet访问数据库的典型步骤:

(1)建立数据库连接

通过创建Connection对象连接到特定的数据库
DataAdapter用于从数据源检索数据并填充DataSet中的表,还将对DataSet的更改解析回数据源,用Command对象检索数据

(2)从DataAdapter填充DataSet

DataAdapter的Fill方法使用DataAdapter的SelectCommand的结果集来填充DataSet
Fill方法使用DataReader对象隐式地返回用于在DataSet中创建表的列名称和类型

(3)操作和处理DataSet

以断开式操作DataSet的数据库表
包括数据的查询、插入、更新和删除等操作

(4)使用DataAdapter更新数据源

调用DataAdapter的Update方法,可将DataSet中的更改解析回数据源

//(1)连接到数据库
String connString = @"Data Source=(LocalDB)\v11.0;Initial Catalog=Northwind;
AttachDbFilename=C:\C#\DB\Northwnd.mdf;Integrated Security=True;";
String selectCommandText = "SELECT RegionID, RegionDescription FROM Region";
using (SqlConnection connection = new SqlConnection(connString))
{connection.Open();

//(2)创建DataAdapter
SqlDataAdapter adapter = new SqlDataAdapter(selectCommandText, connection);
DataSet dataSet = new DataSet();//创建DataSet

//(3)从DataAdapter填充DataSet
adapter.Fill(dataSet, "Region");
Console.WriteLine("Northwind数据库的Region表的内容如下:");
Console.WriteLine("地区编号 \t 地区说明 ");

//(4)操作和处理DataSet
foreach (DataRow row in dataSet.Tables["Region"].Rows)
{ Console.WriteLine("  {0} \t\t {1}", row["RegionID"], row["RegionDescription"]);}

.net----数据库的访问ADO.NET、DataAdapter和DataSet文章来源地址https://www.toymoban.com/news/detail-469090.html

到了这里,关于.net----数据库的访问ADO.NET、DataAdapter和DataSet的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【ASP.NET MVC】数据库访问(5)

    对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术 。  以上是官话,个人理解: 1、解决问题:数据库的访问 2、如何解决:数据库由表、记录 组成      -》    把表映射成面向对象的类   ,记录则是对

    2024年02月14日
    浏览(25)
  • 在Linux平台下使用.NET Core访问Access数据库读取mdb文件数据

    今天有群友在群里问 C# 能不能在 Linux 下访问 Access数据库 ? 我觉得这很有趣,因此研究折腾了一下,也因为很久没有写博文了,所以特意上来写博文分享经验。 操作系统: Ubuntu 22.04.3 LTS (Jammy) 开发工具: Visual Studio 2022 (17.8.0) 运行时版本: .NET Runtime 8.0 依赖库: unixodbc 、

    2024年02月05日
    浏览(31)
  • 《尚贤达猎头网站流量统计模块》,通过HTTP自定义模块实时获取asp.net网站访问流量,并保存到数据库

    开发了个网站流量统计模块,实时获取asp.net网站访问流量,并保存到数据库。 一、功能: 通过HTTP自定义模块实时获取网站流量 二、支持平台:windows+IIS 三、安装方法: 1、将文件www.sunsharer.cn.dll复制到网站bin目录下; 2、将配置好的sqlstr.txt复制到网站bin目录下; 3、将数据

    2024年01月16日
    浏览(33)
  • .NET Core/.NET6 使用DbContext 连接数据库,SqlServer

    安装以下NuGet包 Microsoft.EntityFrameworkCore.SqlServer:SQL server 需要添加包 Microsoft.EntityFrameworkCore.Tools Newtonsoft.Json:用于Json格式转换 创建一个实体类来表示数据库表。在项目中创建一个名为Customer.cs的文件,并添加以下代码 创建一个数据库上下文类,用于定义实体类和数据库连接

    2024年02月07日
    浏览(38)
  • .net core .net6 读取数据库 读取配置文件 保姆级教程

    本文环境 Microsoft Visual Studio 2022 .Net6 SQLServer2019 在解决方案管理器右键添加相关的包,如下两个包 Microsoft.Data.SqlClient SQLServer SQLServer数据库 Microsoft.Extensions.Configuration.Json json配置文件 添加配置文件 appsettings.json,选始终复制 添加json配置文件内容如下 DefaultConnection 根据自己的

    2024年02月08日
    浏览(39)
  • NET Core添加 Sqlite 数据库

    .net framework 命令行项目使用 sqlite,DbContext C# .NET EF框架 webapi 安装使用sqlite visual studio 2022,ADO.NET 实体数据模型添加 sqlite数据库对象 Visual Studio 2022 .NET Core 6.0 Microsoft.EntityFrameworkCore.Sqlite Microsoft.EntityFrameworkCore.Sqlite.Core Newtonsoft.Json ORMContext Program.cs 测试结果 Sqlite3是个特别好的本

    2024年02月11日
    浏览(38)
  • .NET6使用SqlSugar操作数据库

    1.//首先引入SqlSugarCore包 2.//新建SqlsugarSetup类 3.//在appsettings添加连接字符串 4.//在Program注入SqlsugarSetup类 5.//在方法中依赖注入 6.使用SqlSugar增删改查

    2024年02月13日
    浏览(25)
  • .NET6项目连接数据库方式方法

    接上一篇Linux系统下创建dotnet项目,这一篇我们聊聊.NET6环境下dotnet项目连接数据库的方式方法,包括数据库字符串该如何配置。看了很多博主写的文章,连接数据库字符串配置的方式和位置五花八门,这篇文章给大家介绍一下连接数据库字符串的配置方式方法,顺便介绍下一

    2024年02月04日
    浏览(45)
  • .NET Evolve 数据库版本管理工具

    提到数据库版本管理, Java 领域开发首先会想到大名鼎鼎的 flyway 。但是它不适用 .NET 领域,那么 .NET 领域也需要做数据库版本管理,该用什么工具?自行造轮子? .NET 领域的解决方案就是 Evolve ,这是一个开源库。[仓库地址](GitHub - lecaillon/Evolve: Database migration tool for .NET an

    2024年02月12日
    浏览(46)
  • .NET SqlSuger 简单介绍,超快开发数据库

    我之前介绍过EFCore 怎么使用Nuget快速创建数据库,我之后发现SqlSugar更快。这里简单再说一下SqlSugar如何使用 .NET Core 数据库DB First自动生成,Sqlite,sql server,Mysql SqlSugar官方文档 Visual Studio 2022 .NET Core 6.0 SqlSugarCore 这里不做介绍,和EF Core差不多,可以自己看官方文档。 SqlSuger是极

    2024年02月14日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包