基本概念
- 通用数据访问 (UDA):从任意类型计算机上的任意应用程序中访问任意类型的数据
- OLE DB:实现UDA的一种技术,实际上是一个数据访问的标准化接口,它允许开发者使用相同的一组编程工具来引用不同数据源中的数据
- ADO (ActiveX Data Object). NET:微软提供的最新的数据访问模型,是应用程序与相容数据源的数据访问接口;应用程序可以使用ADO.NET连接任意类型的数据源,并检索、处理和更新数据源中的数据
- .NET Framework 数据提供程序:实现对底层数据源的访问。包括:Connection、Command、DataAdapter和DataReader对象
- ADO.NET DataSet:ADO.NET 的断开式结构的核心组件,包含一个或多个 DataTable 对象的集合,实现独立于任何数据源的数据访问
- DataAdapter:连接DataSet对象和数据源的桥梁。使用 Command 对象在数据源中执行 SQL 命令,以便将数据加载到 DataSet 中,并使对 DataSet 中数据的更改与数据源保持一致
|
|
基于连接式的数据访问方法
拖放实现
“添加新数据源” → … → 选择数据库对象 → 拖放数据源中的数据表建立窗体控件与数据的关系
注:一个窗体使用一个数据源
基于断开式的数据访问方法
代码实现
设计步骤:
(1)创建SqlConnection对象
(2)创建SqlDataAdapter对象
(3)创建DataSet对象
(4)为控件指定数据源
// 加载 Microsoft SQL.NET数据提供程序【放在文件开头】
using System.Data.SqlClient;
// 创建 SqlConnection对象【放在 public中】
// ① Window登录模式
SqlConnection myconn = new SqlConnection(
"Initial Catalog=university;
Data Source= .;
Integrated Security=True;");
// ② SQL Server登录模式
SqlConnection myconn = new SqlConnection(
"Initial Catalog= mydb;
DataSource=myServer;
User ID=sa; Password=;");
// 创建 DataAdapter数据适配器和 Dataset数据集【一般放在 private form中,放在public中要用Static String】
String mysql= "select * from student ";
SqlDataAdapter myadapter = new SqlDataAdapter(mysql, myconn);
DataSet mydataset = new DataSet();
myadapter.Fill(mydataset, "student<用户可以自定义数据集的名称>");
// 为 dataGridView / ComboBox 等控件指定数据源
dataGridView1.DataSource = mydataset.Tables["st"];
comboBox1.DataSource = mydataset.Tables["st"];
comboBox1.DisplayMember =