ADO.NET中的主要对象:
- Connection:连接对象。用于建立从应用程序到数据库服务器指定数据库的连接通道
- Command:命令对象。用于执行增删查改等数据库语句命令
- DataReader:数据阅读器对象。用于从数据库逐行返回数据
- DataAdapter:数据适配器对象。封装了批量返回数据,以及对数据的增删查改等操作
- DataSet:数据集对象。用于从数据库返回多行甚至多个表中的数据,可作为内存中的数据库
- Parameter:参数对象。在进行带参数的查询,或调用存储过程时候代表参数
数据访问的两种模式:
- 轻量级:Connection + Command + DataReader
- 重量级:Connection + DataAdapter + DataSet
数据提供程序:
- 要访问某种类型的数据库,需要借助该类数据库的提供程序(Provider)
- .NET Framework直接提供下列四种Provider:
-
- SQLClient:用于访问SQL Server
- OracleClient:用于访问Oracle
- ODBCClient:用于以ODBC的方式访问ODBC数据源
- OledbClient:用于以OLEDB的方式访问数据源
- 第三方数据库厂商往往会提供关于自家数据库的Provider。例如,Oracle提供了针对MySQL的Provider,IBM提供了针对DB2的Provider。
- 关于访问SQL Server的提供程序,对应的ADO.NET对象的命名空间和类名为:
ADO.NET对象 | 名字空间 | 类名 |
Connection | System.Data.SqlClient | SqlConnection |
Command | System.Data.SqlClient | SqlCommand |
DataReader | System.Data.SqlClient | SqlDataReader |
DataAdapter | System.Data.SqlClient | SqlDataAdapter |
DataSet | System.Data | DataSet |
Parameter | System.Data.SqlClient | SqlParameter |
数据库连接:
- 要访问数据库,必须首先建立一个到数据库的连接对象。连接对象最关键的属性是连接字符串
- 不同类型的数据库,其连接字符串各不相同
- 典型的SQL Server连接字符串写法:
- 采用用户名和密码连接到数据库:
server=Joe-PC(数据库服务器名);database=AdventureWorks_WroxSSRS2012(数据库名);uid=sa(登录名);pwd=root(密码)
- 采用Windows身份验证连接到数据库:
server=Joe-PC(数据库服务器名);database=AdventureWorks_WroxSSRS2012(数据库名);integrated Security=true;
- 采用用户名和密码连接到数据库: