SqlHelper
来源:互联网 发布:mac远程桌面连接软件 编辑:程序博客网 时间:2024/05/29 10:15
using System;using System.Collections.Generic;using System.Configuration;using System.Data;using System.Data.SqlClient;using System.Linq;using System.Text;using System.Threading.Tasks;namespace ExecuteReader{ class SqlHelper { private static string connStr = ConfigurationManager.ConnectionStrings["adConnStr"].ConnectionString; //封装方法原则:把不变的放到方法里,把变化的放到参数中 //public static int ExecuteNonQuery(string sql) //{ // using (SqlConnection conn = new SqlConnection (connStr)) // { // conn.Open(); // using (SqlCommand cmd = conn.CreateCommand ()) // { // cmd.CommandText = sql; // return cmd.ExecuteNonQuery(); // } // } //} //public static object ExecuteScalary(string sql) //{ // using (SqlConnection conn = new SqlConnection (connStr)) // { // conn.Open(); // using (SqlCommand cmd = conn.CreateCommand ()) // { // cmd.CommandText = sql; // return cmd.ExecuteScalar(); // } // } //} ////只用来执行查询结果比较少的sql //public static DataTable ExecuteDataTables(string sql) //{ // using (SqlConnection conn = new SqlConnection(connStr)) // { // conn.Open(); // using (SqlCommand cmd = conn.CreateCommand()) // { // cmd.CommandText = sql; // SqlDataAdapter adapter = new SqlDataAdapter(cmd); // DataSet dataset = new DataSet(); // adapter.Fill(dataset); // return dataset.Tables[0]; // } // } //} // 封装方法原则:把不变的放到方法里,把变化的放到参数中 public static int ExecuteNonQuery(string sql ,SqlParameter [] parameters ) { using (SqlConnection conn = new SqlConnection (connStr)) { conn.Open(); using (SqlCommand cmd = conn.CreateCommand ()) { cmd.CommandText = sql; cmd.Parameters.AddRange(parameters); return cmd.ExecuteNonQuery(); } } } public static object ExecuteScalary(string sql ,params SqlParameter [] parameters) { using (SqlConnection conn = new SqlConnection(connStr)) { conn.Open(); using (SqlCommand cmd = conn.CreateCommand()) { cmd.CommandText = sql; cmd.Parameters.AddRange(parameters); return cmd.ExecuteScalar(); } } } //只用来执行查询结果比较少的sql public static DataTable ExecuteDataTables(string sql , params SqlParameter [] parameters) { using (SqlConnection conn = new SqlConnection(connStr)) { conn.Open(); using (SqlCommand cmd = conn.CreateCommand()) { cmd.CommandText = sql; cmd.Parameters.AddRange(parameters); SqlDataAdapter adapter = new SqlDataAdapter(cmd); DataSet dataset = new DataSet(); adapter.Fill(dataset); return dataset.Tables[0]; } } } }}
</pre><pre name="code" class="csharp">
private void Button_Click_3(object sender, RoutedEventArgs e) { // SqlHelper.ExecuteNonQuery("insert into T_Student(Name ,Age) values('方法',323)"); DataTable table = SqlHelper.ExecuteDataTables("select * from T_Student where Age = @Age or Name = @Name " , new SqlParameter("@Age", 23), new SqlParameter("@Name", "方法")); foreach (DataRow row in table.Rows) { string name = (string)row["Name"]; MessageBox.Show(name); } } private void Button_Click_4(object sender, RoutedEventArgs e) { // DataTable table = SqlHelper.ExecuteDataTables("select * from T_Student where age >50"); // foreach(DataRow row in table.Rows) // { // string name = (string)row["Name"]; // MessageBox.Show(name); // } DataTable table = SqlHelper.ExecuteDataTables("select * from T_Student where age >@age" ,new SqlParameter[] {new SqlParameter("@age",50)}); foreach (DataRow row in table.Rows) { string name = (string)row["Name"]; MessageBox.Show(name); } }
配置文件
<?xml version="1.0" encoding="utf-8" ?><configuration> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /> </startup> <connectionStrings> <add name="adConnStr" connectionString ="Data Source=. ; Initial Catalog=MyTest;User ID = sa; Password =****** "/> </connectionStrings></configuration>
</pre><pre name="code" class="csharp">
0 0
- SqlHelper
- SqlHelper
- SqlHelper
- SqlHelper:
- sqlHelper
- SQLHelper
- SqlHelper
- SQLHelper
- SqlHelper
- SqlHelper
- SQLHelper
- SqlHelper
- sqlhelper
- SQLHelper
- SQLHelper
- SQLHelper
- SqlHelper
- SqlHelper
- 局域网设备发现之Bonjour协议
- HDU 3720 Arranging Your Team
- Intellij IDEA安装
- CodeForces-719E Sasha and Array(线段树+矩阵快速幂)
- DKMS介绍
- SqlHelper
- POJ1742 多重背包
- MVC、MVP、MVVM
- LeetCode----36. Valid Sudoku(有效数读)
- Java反射三种方式的效率对比
- js实现继承几种方法(未完待续)
- Android 6.0 - 动态权限管理的解决方案
- android 文件读取(assets)
- centos 开启DHCP服务