1.封装sqlhelper 可直接复制使用2
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data; //手动添加命名空间
using System.Data.SqlClient; //手动添加命名空间
namespace ConsoleApp1
{
/// <summary>
/// 查询
/// </summary>
class SqlHelper
{
private static string connstring= "Data Source =.; Initial Catalog = Students; Integrated Security = True";//连接数据库
/// <summary>
/// 返回单一结果查询
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public static object GetSingleResult(string sql) //返回单一查询结果
{
SqlConnection connection = new SqlConnection(connstring); //创建数据库连接
SqlCommand Cmd = new SqlCommand(sql, connection);
connection.Open();//打开数据库连接
object ob=Cmd.ExecuteScalar(); //返回查询结果
connection.Close();//关闭连接
return ob;
}
/// <summary>
/// 更新操作(insert updata,delete)
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public static int Updata(string sql)
{
SqlConnection sqlConnection = new SqlConnection(connstring);
SqlCommand sqlCommand = new SqlCommand(sql,sqlConnection);
sqlConnection.Open();
int i= sqlCommand.ExecuteNonQuery();
sqlConnection.Close();
return i;
}
/// <summary>
/// 返回一个查询的结果集
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public static SqlDataReader GetReader(string sql)
{
SqlConnection sqlConnection = new SqlConnection(connstring);
SqlCommand sqlCommand = new SqlCommand(sql,sqlConnection);
sqlConnection.Open();
SqlDataReader sqlData= sqlCommand.ExecuteReader(CommandBehavior.CloseConnection); //该参数保证能够从外部关闭datareader时,与之关联的connection对象随之关闭
// sqlConnection.Close();//不能关闭数据库
return sqlData;
}
}
}
2.调用
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
#region 调用SqlHelper.Updata方法
string sql = "insert into Table_2(StudentName,Gender,Birthday,StudentIdNo," +
"Age,PhoneNumber,StudentAddress,ClassId)" + "values('{0}','{1}','{2}','{3}','{4}'," +
"'{5}','{6}','{7}')";
sql = string.Format(sql, "王五", "男", "1994-03-13", "610481199811043056", 26, "15929533456",
"北京市海淀区", 2);
int i = SqlHelper.Updata(sql);
Console.WriteLine(i);
Console.ReadLine();
#endregion
#region 调用 SqlHelper.GetSingleResult方法,
string sql = "select COUNT(*) from Table_2";
object ob = SqlHelper.GetSingleResult(sql);
Console.WriteLine(ob);
Console.ReadLine();
#endregion
#region 调用 SqlHelper.GetReader返回多行数据
string sql = "select StudentName from Table_2";
SqlDataReader sqlData = SqlHelper.GetReader(sql);
while (sqlData.Read())
{
Console.WriteLine(sqlData["StudentName"]);
}
sqlData.Close();//关闭读取器
Console.ReadLine();
#endregion
}
}
}