C# .Net 使用 ADO.NET 连接资料库

什麽是 ADO.NET

ADO.NET 是微软针对 .NET 平台所提供的负责资料存取的类别程序库, ADO 是 ActiveX Data Object 的缩写, 是资料库应用程序与资料来源的桥梁, 主要提供一个物件导向的资料存取架构, 用来开发资料库应用程序, 包含了 Data Provider 跟 DataSet 两部分, Data Provider 用来连接与存取资料库, ADO.NET 定义了一个资料库存取的标准介面, 让资料库管理系统厂商可以依据此标准来开发相对应的 Data Provider, DataSet 是在 ADO.NET 来自资料来源索取的资料暂存於记忆体里的物件, 透过 DataAdapter 物件与资料库之间做资料交换, DataSet 中可以包含多个不同的 DataTable 物件, DataTable 由资料栏与资料列所组成, 包含主索引键、外部索引键、DataTable 间的关联, DataSet 就像是在记忆体内的资料管理系统.

使用 ADO.NET 连接

首先建立一个 console project, 然後加入 System.Data.SqlClient 套件

dotnet new console -o ado_dot_net 
## 会在 ado_dot_net 目录建立一个 console project
dotnet add package System.Data.SqlClient --version 4.8.3 
## 加入 System.Data.SqlClient 套件

准备测试用资料表, 这里我使用本机端的 SQL Server, 建立一个 Persons 资料表如下

id name email
1 陈大猫 [email protected]
2 林阿儒 [email protected]

撰写 Program.cs

using System;
using System.Data;
using System.Data.SqlClient;

namespace ado_dot_net
{
  class Program
  {
    static void Main(string[] args)
    {
      Console.WriteLine("Hello World!");
      SqlConnection conn;
      // 连线字串
      string connStr = "Data Source=.;Initial Catalog=mydb;Integrated Security=True";
      // SQL Server 资料库的连线
      conn = new SqlConnection(connStr);
      // 开启资料库连接
      conn.Open();
      Console.WriteLine("Connection successfully");

      // SQL 语句
      string sql = "SELECT 姓名 FROM persons";
      // SQL Server 资料库执行的 Transact-SQL 陈述式或预存程序
      SqlCommand command = new SqlCommand(sql, conn);
      // SqlCommand 的 ExecuteReader 方法会回传从资料库回传的资料
      // 指定 SqlDataReader 来接回传资料
      SqlDataReader reader = command.ExecuteReader();
      while (reader.Read())
      {
        Console.WriteLine("{0}", reader.GetString(0));
      }
      // 关闭连线
      conn.Close();
      Console.WriteLine("Connection close successfully");
    }
  }
}

<<:  day24 : kong api gateway(上)

>>:  找LeetCode上简单的题目来撑过30天啦(DAY9)

[Day 2] 快来探索AI的世界

快来探索AI的世界 Day 2 学习目标 人工智慧的演进 人工智慧的分级 机器是如何学习的 人工智慧...

后续说明

很遗憾,由于假期原因,没能够及时更新,中断了更新。 不过这个系列还是会继续更新下去的,直到结束。 未...

学校体温自动上传爬虫(学习记录)

动机 因为疫情,这学习开始学校要求大家每天都要在九点前到学校网站上传体温,我觉得非常麻烦。 动点,果...

[Python] CNN

昨天用了一般的NN来做影像分类,但其实同样的情况用CNN会有效率很多,今天就来建立CNN再应用一次。...

[Day 25] Facial Alignment

有了前两天的人脸关键点侦测後,我们今天终於要谈到人脸对齐 (Facial Alignment)这个工...