一、知识点描述
1.SqlConnection
(1)SqlConnection类用于开启、关闭程序和数据库之间的连接。没有利用SqlConnection类将数据库打开,是无法从数据库中取得数据的。
(2)在ADO.NET中通过在连接字符串中提供必要的身份验证信息,使用SqlConnection对象可以连接到SQL Server数据源。通过SqlConnection类与数据库进行交互的基本流程如下:
①添加引用System.Data.SqlClient。
②设置连接字符串和其他属性(如连接超时等)。
③创建SqlConnection类的实例。
④打开连接,执行数据操作。
⑤关闭连接。
(3)SqlConnection类的常用属性
属性 | 说明 |
---|---|
ConnectionString | 连接字符串,用于连接SQL Server数据库 |
ConnectionTimeout | 在抛出异常之前尝试的连接最大耗时 |
Database | 连接的数据库名称 |
DataSourse | 连接的SQL Server实例名称 |
State | 连接的当前状态,如Open、Closed、Closing等 |
(4)SqlConnection类的常用方法
方法 | 说明 |
---|---|
BeginTransaction | 启动数据库事务管理 |
ChangeDatabase | 将连接动态地切换到指定的数据库 |
CreateCommand | 创建与该连接关闭的Sqlcommand实例 |
Open | 打开数据库连接 |
Close | 关闭数据库连接,允许释放所占用资源 |
Dispose | 释放当前连接 |
2.SqlCommand
(1)在程序已经和数据库连接的基础上,SqlCommand类可以生成并执行SQL语句,对数据库执行一些操作,例如对数据库的增加、删除、修改和查询等操作。
(2)创建了数据库连接之后,就可以对数据库中的数据进行操作。ADO.NET中提供的SqlCommand类,可以完成对SQL Server数据库的增、删、改、查等操作。
(3)SqlCommand类的常用属性
属性 | 说明 |
---|---|
CommandText | 用于获取或设置需要对数据源执行的SQL语句或存储过程 |
CommandTimeout | 获取或设置在终止执行命令的尝试并生成错误之前的等待时间,默认值为30s |
CommandType | 用于获取或设置一个值,该值指示如何解释CommandText属性。如通过枚举类型CommandType将CommandType属性设置为StoreProcedure,则应将CommandText属性设置为存储过程的名称 |
(4)SqlCommand类的常用方法
方法 | 说明 |
---|---|
ExecuteNonQuery | 用于执行连接数据源上的SQL语句。它用于一些DDL语句、活动查询如Insert、Update、Delete等操作。该方法返回受影响的行数,但并不输出所返回的参数或结果集 |
ExecuteReader | 用于执行数据源上的SQL Select语句。返回一个快速只向前的结果集DataReader。 |
ExecuteScalar | 用于执行一个返回单个标量值的存储过程或SQL语句。它将结果集中的第一列的第一行返回到调用应用程序,并忽略其他所有返回值 |
二、思维导图
三、范例
1.SqlConnection
1.连接到SQL Server数据库的方法有两种:Window身份验证和SQL Server身份验证。
(1)Window身份验证连接字符串代码如下:
Server=(Local);Database=EduBase;Integrated Security=sspi;
说明:Server表示运行SQL Server的服务器,(Local)表示本地连接,也可以使用服务器名。Database表示使用的数据库名,这里所用的数据库为EduBase;Integrated Security为sspi表示使用集成的Window身份验证,也可以使用True和false来表示,这里sspi等价True。由于习惯我们统一使用sspi。
(2)SQL Server身份验证连接字符串代码如下:
Server=(SQL Server的服务器);Database=EduBase;IntegratedSecurity=false;uid=jsj;pwd=2wsx@WSX;
说明:uid为指定的用户名,pwd为对应的密码。
2.打开和关闭数据库连接
使用Open()方法打开数据库的连接,代码如下:
SqlConnection.Open();
使用完数据库后,应关闭数据库的连接,代码如下:
SqlConnection.Close();
2.SqlCommand
1.生成Command对象,一般语法如下:
SqlCommand Command 对象名=new SqlCommand(SQL语句,数据连接);
示例代码如下:
Sqlconnection con=new SqlConnection(conStr);
string sqlStr="select count(*) from login";
SqlCommand comm=new SqlCommand(sqlStr,con);
说明:comm即表示Command对象名,sqlStr即上一行的SQL语句,con即SQL语句上一行的数据连接。