C#的通用DbHelper类使用数据连接池

发布时间:2024-12-17 23:23

使用数据线连接各类3C设备的通用方法 #生活技巧# #数码产品使用技巧# #3C配件组装指南#

最新推荐文章于 2021-07-27 13:54:28 发布

忙碌的布谷鸟 于 2012-12-11 09:59:35 发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

在Web.config中

<connectionStrings>

<add name="dh_web" connectionString="Data Source=xxx.com;Initial Catalog=xx_db;User ID=xx;Password=**;

pooling=true;max pool size=200" providerName="System.Data.SqlClient"/>

</connectionStrings>


public class DBHelper

{

private static string connectionString = ConfigurationManager.ConnectionStrings["dh_web"].ConnectionString;

public static int ExecuteCommand(string safeSql)

{

using (SqlConnection connection = new SqlConnection(connectionString))

{

connection.Open();

SqlCommand cmd = new SqlCommand(safeSql, connection);

return cmd.ExecuteNonQuery();

}

}

public static int ExecuteCommand(string sql, params SqlParameter[] values)

{

using (SqlConnection connection = new SqlConnection(connectionString))

{

connection.Open();

SqlCommand cmd = new SqlCommand(sql, connection);

cmd.Parameters.AddRange(values);

return cmd.ExecuteNonQuery();

}

}

public static int GetScalar(string safeSql)

{

using (SqlConnection connection = new SqlConnection(connectionString))

{

connection.Open();

SqlCommand cmd = new SqlCommand(safeSql, connection);

return Convert.ToInt32(cmd.ExecuteScalar());

}

}

public static int GetScalar(string sql, params SqlParameter[] values)

{

using (SqlConnection connection = new SqlConnection(connectionString))

{

connection.Open();

SqlCommand cmd = new SqlCommand(sql, connection);

cmd.Parameters.AddRange(values);

return Convert.ToInt32(cmd.ExecuteScalar());

}

}

public static SqlDataReader GetReader(string safeSql)

{

SqlConnection connection = new SqlConnection(connectionString);

connection.Open();

SqlCommand cmd = new SqlCommand(safeSql, connection);

return cmd.ExecuteReader(CommandBehavior.CloseConnection);

}

public static SqlDataReader GetReader(string sql, params SqlParameter[] values)

{

SqlConnection connection = new SqlConnection(connectionString);

connection.Open();

SqlCommand cmd = new SqlCommand(sql, connection);

cmd.Parameters.AddRange(values);

return cmd.ExecuteReader(CommandBehavior.CloseConnection);

}

public static DataTable GetDataSet(string safeSql)

{

using (SqlConnection connection = new SqlConnection(connectionString))

{

DataSet ds = new DataSet();

SqlCommand cmd = new SqlCommand(safeSql, connection);

SqlDataAdapter da = new SqlDataAdapter(cmd);

da.Fill(ds);

return ds.Tables[0];

}

}

public static DataTable GetDataSet(string sql, params SqlParameter[] values)

{

using (SqlConnection connection = new SqlConnection(connectionString))

{

DataSet ds = new DataSet();

SqlCommand cmd = new SqlCommand(sql, connection);

cmd.Parameters.AddRange(values);

SqlDataAdapter da = new SqlDataAdapter(cmd);

da.Fill(ds);

return ds.Tables[0];

}

}

}

注意:

CommandBehavior.CloseConnection解决了流读取数据模式下,数据库连接不能有效关闭的情况. 当某个XXXDataReader对象在生成时使用了CommandBehavior.CloseConnection,那数据库连接将在XXXDataReader对象关闭时自动关闭.

网址:C#的通用DbHelper类使用数据连接池 https://www.yuejiaxmz.com/news/view/504075

相关内容

数据库 = JDBC,连接池对象
【Java数据结构】字符串常量池
判断数据库连接状态
如何使用数据AMQP的方式推送设备数据
设备使用python连接阿里Iot
浅谈数字效果器的使用技巧及连接方法
数据库连接对象Connection对象的获取及相关知识总结
让聪明的车连接智慧的路,C
数据传输与IoT:设备连接与数据传输
数据库和生活有什么连接

随便看看