SqlHelper的详细应用方法,该怎么处理
2014-03-20 23:01
441 查看
SqlHelper的详细应用方法,该怎么处理
www.MyException.Cn 发布于:2012-03-09 21:42:52 浏览:47次![](http://bdimg.share.baidu.com/static/images/type-button-1.jpg?cdnversion=20120831)
0
SqlHelper的详细应用方法
最近网上新流行的SqlHelper和传统的有很大不同,我在http://www.dbhelepr.org/sqlhelper/下载的,官方说比传统更简单和高性能,请高手指点!
------解决方案--------------------
呵呵,这个并不和一前一样是一个类了,是一个体系的组件了,是个完全开源。非常不错,国内还用的比较少,我也比较喜欢。使用方法:
第一步,如果是sqlserver或oracle在配置文件设置数据库链接字符串,如:
<connectionStrings>
<add connectionString="server=.;uid=sa;pwd=sa123;database=yourdatabase" name="SqlServerHelper"/>
<add connectionString="Data Source=orcl;User Id=system;Password=***;Integrated Security=no" name="OracleHelper"/>
</connectionStrings>
以上配置中,关键在于设定add节点中的name项,sqlserverhelper和oracleHelper。
第二步直接使用就行了,SqlServerHelper默认加载web.config中的configurationSettings中的name为SqlServerHelper的项为数据库链接字符串,而OracleHelper默认加载configurationSettings节点中name为OracleHelper的链接字符串,这一点很方便。
就需要执行一个sql语句时(静态方式):
SqlServerHelper.ExecuteNonQuery("insert into [students] values(@student_name,@class)",
SqlServerHelper.CreateInputParameter("@student_name", SqlDbType.NVarChar, 100, txt_student_name_sqlserver.Text),
SqlServerHelper.CreateInputParameter("@class", SqlDbType.NVarChar, 100, txt_class_sqlserver.Text)
);
评价:比传统的sqlhelper更方便,因为不用每次都传入sqlconnectionstring参数。
多sql语句和事务型(静态方式):
using (SqlConnection conn = SqlServerHelper.GetConnection())
{
conn.Open();
SqlTransaction tran = conn.BeginTransaction();
try
{
SqlServerHelper.ExecuteNonQuery(conn, CommandType.Text, "insert into [students] values(@student_name,@class)",
SqlServerHelper.CreateInputParameter("@student_name", SqlDbType.NVarChar, 100, txt_student_name_sqlserver.Text),
SqlServerHelper.CreateInputParameter("@class", SqlDbType.NVarChar, 100, txt_class_sqlserver.Text)
);
g1.DataSource = SqlServerHelper.ReadTable(conn, CommandType.Text, "select * from [students]", null);
g1.DataBind();
tran.Commit();
}
catch { tran.Rollback(); throw; }
}
面向对象式编程方式:
using (SqlServerHelper helper = new SqlServerHelper())
{
DbTransaction tran = helper.Connection.BeginTransaction();
helper.Command.Transaction = tran;
try
{
helper.Command.CommandText = "insert into [Students]([student_name],[class])values(@student_name,@class)";
helper.AddParameter("@student_name", SqlDbType.VarChar, 255, studentname);
helper.AddParameter("@class", SqlDbType.VarChar, 255, stu_class);
helper.Open();
helper.ExecuteNoneQuery();
tran.Commit();
}
catch
{
tran.Rollback(); throw;
}
helper.Command.Transaction = null;
helper.Command.Parameters.Clear();
helper.Command.CommandText = "select * from [Students]";
return helper.ReadTable();
}
评价:自动即使打开关闭数据库链接,节省性能,语法简短清晰。
相关文章推荐
- Android 应用启动闪白一下处理方法
- MAC应用无法打开或文件损坏处理方法
- 海量数据处理之归并、堆排、前K方法的应用
- c#中跨线程调用windows窗体控件 .我们在做winform应用的时候,大部分情况下都会碰到使用多线程控制界面上控件信息的问题。然而我们并不能用传统方法来做这个问题,下面我将详细的介绍。
- PDF文件怎么编辑-PDF文档内容的简单处理方法
- php5编程中的异常处理详细方法介绍
- 应用软件里基本信息设置的处理方法
- 淘宝店铺设计的方法教程 宝贝描述的详细处理方法
- 最优化方法在图像处理中的应用【3】
- F5负载的应用IIS日志记录的不是真实IP的处理方法
- Js 回车换行处理的办法及replace方法应用
- java中子类继承父类和实现接口有同名方法怎么处理
- Android 实现双击返回键退出应用详细实现方法
- 各种与视频编解码以及视频图像处理的应用相关的新技术,新方法,各种软件开发相关的算法,思想。
- 关于在Cisco路由器接口上应用ip tcp adjust-mss命令后,TCP头中出现选项的解释以及处理方法
- win8.1应用商店无法下载怎么办?微软win8.1系统应用商店挂起的解决方法
- javascript:window属性方法详细应用及方法实例
- c#中处理字符串常用的函数及方法详细说明
- win10系统玩游戏时延迟怎么办?windows10关闭Xbox应用游戏DVR功能的方法
- Android Robotium跨应用处理方法