SQL Server知识点回忆篇(三):ADO.NET之C#操作数据库
1.连接数据库
(1)创建连接字符串:
使用windows身份验证时的连接字符串:
conStr=;
使用用户名和密码时的连接字符串:
conStr=;
(2)创建连接对象:
SqlConnection con=
(3)打开连接:
con.Open();
(4)关闭连接,释放资源:
强烈建议在使用完连接时一定要关闭连接,以便连接可以返回到ADO.NET连接池中。
2. 连接数据库执行sql语句 -- ExecuteNonQuery()的使用
.NET Framework 提供的 SqlCommand 对象,用于执行SQL语句。
调用ExecuteNonQuery()方法执行sql语句,返回一个 int 类型的数据,值是影响的行数,在使用insert,update,delete语句时可调用该方法执行sq语句。
ExeNoQuery( (SqlConnection con= (SqlCommand cmd=
3. 连接数据库执行sql语句 -- ExecuteScalar()的使用
调用 ExecuteScalar() 方法执行sql语句,返回一个 object 类型的数据,值是执行sql语句的结果,在使用聚合函数时可调用该方法执行sq语句。
ExeScalar( (SqlConnection con = (SqlCommand cmd =
4. 连接数据库执行sql语句 -- ()的使用
使用ExecuteReader()方法执行sql语句,返回值为SqlDataReader类型,可以从返回的SqlDataReader中一条一条取数据,该方法用于查询多行多列结果时。
SqlDataReader只读取数据,只能前进不能后退。使用SqlDataReader时必须保证连接是打开状态。
SqlDataReader使用完毕后,要把SqlDataReader关闭,释放。
SqlDataReader ExeReader(= = =
5. 连接数据库执行sql语句 --
,可以将查询的结果填充在datatable中返回。
DataTable ExeAdapter( (SqlConnection con = (SqlCommand cmd = (SqlDataAdapter da = =
6. 使用带参数的 sql 语句
为了安全的使用sql语句,防止sql注入,请不要直接使用用户输入的值来拼接sql语句,应使用参数的方式将值传入sql语句执行。
带参数的sql语句:
strsql = = SqlParameter(,SqlDbType.VarChar) {Value= SqlParameter(,SqlDbType.Int) {Value= SqlParameter(,SqlDbType.VarChar) {Value= SqlParameter(,SqlDbType.VarChar) {Value=<span style="color: #0000ff">int iRow =<span style="color: #000000"> ExeNoQuery(strsql,ps);
<span style="color: #0000ff">if (iRow><span style="color: #800080">0<span style="color: #000000">)
{
Console.WriteLine(<span style="color: #800000">"<span style="color: #800000">影响的行数:{0}<span style="color: #800000">"<span style="color: #000000">,iRow);
}
Console.ReadKey();
执行带参数的sql语句:
ExeNoQuery( (SqlConnection con = (SqlCommand cmd = (para !=
7. ADO.NET连接池
(1)
(2) 启用ADO.NET连接池后,创建一个连接对象,不会立刻关闭。后面的其他连接对象可以直接使用。
(3) 连接池中的对象过一段时间没有被访问会自动销毁。()
(4)