ADO.net连接数据库
2013-05-20 19:58
225 查看
ADO.net是用来向数据库提交SQL语句的类库。
连接数据库的方式:
1.导入System.Data 和System.Data.SqlClient 命名空间
2.使用using能更好的的进行资源释放
3.执行查询: 查询优化,防止SQL注入漏洞
4.使用DataSet结果集 使用查询结果比较小的时候。查询结果数据量大的话用Reader
5.APP.config
将连接数据库字符串放到配置文件中,方便连接时使用。。
6.SqlHelper
将常用的方法放到SqlHelper中,方便使用时调用。例如:
把不变的放到方法里,把变化的放到参数里。
连接数据库的方式:
1.导入System.Data 和System.Data.SqlClient 命名空间
2.使用using能更好的的进行资源释放
using (SqlConnection conn = new SqlConnection("Data Source=.;Initial Catalog=你要连接的数据库名;User ID=你的用户名;Password=你的密码")) { conn.Open(); using (SqlCommand cmd = conn.CreateCommand()) { cmd.CommandText = "SQL语句 "; cmd.ExecuteNonQuery(); } }
3.执行查询: 查询优化,防止SQL注入漏洞
using (SqlConnection conn = new SqlConnection( "Data Source=.;Initial Catalog=ZhangCheng_Demo;User ID=zhangcheng;Password=zhangcheng" )) { conn.Open(); using (SqlCommand cmd = conn.CreateCommand()) { cmd.CommandText = "select UserAge from dbo.T_UserInfo where UserName = @UserName"; //防止Sql注入 //增删改查的参数都可进行此设置 //@参数不能用于替换表明、select之类的关键字。 例如:select UserAge from @dbo.T_UserInfo where UserName = @UserName"; cmd.Parameters.Add(new SqlParameter("@UserName",txtName.Text)); using (SqlDataReader reader = cmd.ExecuteReader()) { while (reader.Read()) //Read 顺序读取,若为空则返回False { string age = reader.GetString(0); MessageBox.Show(age.ToString()); } } }
4.使用DataSet结果集 使用查询结果比较小的时候。查询结果数据量大的话用Reader
using (SqlCommand cmd = conn.CreateCommand()) { cmd.CommandText = "select * from dbo.T_UserInfo where UserName = @UserName"; //防止Sql注入 //增删改查的参数都可进行此设置 //@参数不能用于替换表明、select之类的关键字。 例如:select UserAge from @dbo.T_UserInfo where UserName = @UserName"; cmd.Parameters.Add(new SqlParameter("@UserName",txtName.Text)); //using (SqlDataReader reader = cmd.ExecuteReader()) //{ // while (reader.Read()) //Read 顺序读取,若为空则返回False // { // string age = reader.GetString(0); // MessageBox.Show(age.ToString()); // } //} SqlDataAdapter adapter = new SqlDataAdapter(cmd); DataSet dataSet = new DataSet(); adapter.Fill(dataSet); DataTable table=dataSet.Tables[0]; DataRowCollection rows = table.Rows; for (int i = 0; i < rows.Count;i++ ) { DataRow row=rows[i]; string age=(string)row["UserAge"]; string name=(string)row["UserName"]; MessageBox.Show(age+","+name); } }
5.APP.config
将连接数据库字符串放到配置文件中,方便连接时使用。。
6.SqlHelper
将常用的方法放到SqlHelper中,方便使用时调用。例如:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Configuration; using System.Data.SqlClient; namespace WpfApplication_2 { class SqlHelper { private static string connStr=ConfigurationManager.ConnectionStrings["dbConnectStr"].ConnectionString; public static int ExcuteNonQuery(string sql) { using (SqlConnection conn = new SqlConnection(connStr)) { conn.Open(); using (SqlCommand cmd = conn.CreateCommand()) { cmd.CommandText = sql; return cmd.ExecuteNonQuery(); } } } public static object ExecuteScalar(string sql) { using (SqlConnection conn = new SqlConnection(connStr)) { conn.Open(); using (SqlCommand cmd = conn.CreateCommand()) { cmd.CommandText = sql; return cmd.ExecuteScalar(); } } } } }
把不变的放到方法里,把变化的放到参数里。
相关文章推荐
- ADO.NET连接数据库(例:窗体上有4个文本框,一个连接按钮,提示数据库连接)
- ADO.net中数据库连接方式
- Visual C# 2008+SQL Server 2005 数据库与网络开发-- 7.2 ADO .NET与各种数据库的连接
- 使用ADO.NET连接数据库(一)
- 轻松得到C# ADO.NET的各种数据库连接字符串
- ADO.NET连接数据库心得(初级)
- ado.net中带有用户名及密码的数据库连接字符串
- ado.net连接Mssqlserver数据库
- ★ 浅谈如何使用ADO.NET连接数据库 ★
- ADO_NET 数据库连接字符串大全
- ADO.NET连接数据库字符串
- WPF数据绑定之Ado.net的数据库连接绑定
- 连接数据库Ado.net
- ADO.NET连接数据库字符串
- ADO.NET连接数据库总结
- 怎样使用ADO.NET连接数据库
- ADO.NET连接数据库方法和类型
- ADO.NET连接数据库方法
- ADO.net 中数据库连接方式
- ADO.NET数据库连接与查询(SQL数据库)