首页 > 编程 > .NET > 正文

ADO.NET基础知识汇总

2024-07-10 13:29:38
字体:
来源:转载
供稿:网友
程序和数据库交互,要通过ADO.NET进行;通过ADO.NET就能在数据库中执行SQL了 。ADO.NET中提供了对不同数据库的统一操作接口(ODBC) 。另外还有一种操作数据库的接口是JDBC
 

虽然我们都知道ADO.NET是对数据库的操作,但是要真的说出ADO.NET的具体含义还不是很容易。 
ADO.NET是ActiveX Data Objects的缩写,它是一个COM组件库,用于在microsoft技术中访问数据。之所以叫ADO.NET,应该是微软自己打的广告,希望在NET编程环境中优先使用这种数据访问接口。上面这段话基本来自百度百科。简单来说,ADO.NET就是一种数据访问接口,可以让我们在程序中调用相应的类库对数据库(通常为SQL Server,也可以是access 等其他数据库)进行增删改查等操作。

ADO.NET的几大组成部分
ADO.NET由五大类库组成,分别是:

Connection(用于建立与 数据库的连接)
Command(用于执行SQL语句)
DataReader(用于读取数据)
DataAdapter(用于填充把数据填充到DataSet)
DataSet(数据集,用于程序中)

通常,从程序中访问数据库的方法是:

创建一个到数据库的连接
打开数据库连接
创建ADO记录集
从记录集中提取需要的数据
关闭记录集
关闭连接

下面就分别根据这一个过程结合ADO.NET的五大类库进行解释。

要想使用ADO.NET需要在程序中引用System.Data.SqlClient。其中包含了对Sql Server进行操作的数据访问类:

SqlConnection:连接数据库
SqlCommand:数据库命名对象
SqlCommandBuilder:生成SQL命令
SqlDataReader:数据读取器
SqlDataAdapter:数据适配器,用于填充DataSet
SqlParameter:为存储过程定义参数
SqlTransaction:数据库事务

建立连接

首先,要想访问数据库,我们需要一个媒介把程序与数据库连接起来。这就是连接字符串,它的基本语法为:Data Source(数据源) + Initial Catalog(数据库名称) + User ID(用户名) + Password(密码)。

 

复制代码代码如下:

String connectString = "Data Source = myServerAddress;Initial Catalog = myDataBase;User Id = myUserName; Password = myPassword;";

 

或者

 

复制代码代码如下:

String connectString = "Server =myServerAddress;Database = myDataBase; User Id = myUsername; Password = myPassword;";

 

注意:对于Sql Server来说,它支持两种身份验证方法,一种是windows身份验证,另一种是Sql Server身份验证。如果要用windows身份验证,就需要在连接字符串中包括Integrated Security属性。该属性默认为False。需要设置为True后才能使用windows身份验证。 
除了这几个必须的字段,连接字符串中还有许多可选的属性,在这里我就不一一列举,列出一些相关资料供感兴趣的朋友自行查阅,一个连接字符串可以包含哪些属性。

接着,有了连接字符串就可以创建连接对象了。

SqlConnection connection = new SqlConnection(connecString); 
或者可以使用专门的连接字符串生成器:

 

复制代码代码如下:

SqlConnectionStringBuilder connectionStringBuilder = new SqlConnectionStringBuilder() 

DataSource=”“, 
InitialCatalog=”“, 
UserID=”“, 
Password=”” 
}; 
SqlConnection connection = new SqlConnection(connectionStringBuilder.ToString());

 

然后使用连接对象可以打开或关闭连接。 

connection.Open(); 
connection.Close();

执行命令

打开连接之后就可以操作数据库了,在这里需要用到SqlCommand命令对象。 
它具有四个主要属性,这些属性会在初始化的时候赋默认值: 
CommandText:空字符串(”“) 
CommandTimeout:30 
CommandType:CommandType.Text 
Connection:Null

创建命令对象: 
 

  1. SqlCommand command = connection.CreateCommand();  
?
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表