dbhelper.org官方SqlHelper中文文档
2012-10-29 20:44
295 查看
介绍
目前网络上的SqlHelper的各种改版版本很多,但大多数都是散乱而没有整体思路,一此只是静态方法,显的散乱的代码让程序无法很好的维护,有的繁琐的对象封装,使程序性能降低、维护复杂。最近发现国外网站的www.dbhlper.org发布了最新的SqlHelper版本,不仅仅代码精炼,而且体系清晰。用轻松的代码可支持强大的数据操作。我爱不释手,特写此文记下。
使用步骤很简单:
1、访问(http://www.dbhelper.org/sqlhelper/)网页中,下载SqlHelper最新下载包,然后添加引用。
2、配置web.config配置文件
说明:这些配置信息可以使用继承SqlServerHelper、OracleHelper、AccessHelper、MySqlHelper的方法重写其中ConnectionString属性(在重写ConnectionString属性后不需要配置web.config中的connnectionStrings节点了),更改连接字符串,从而通过不同的派生类操作不同的数据库。
3、在您项目中添加下载包中的www.dbhelper.org.SqlHelper.dll引用,如图1
图1
4、编写SqlHelper调用代码:
SqlHelper支持多种数据库包括MySql、SqlServer、Oracle、Access数据库,后面还可以添加对DB2的支持哦!如果的数据库是SqlServer,哪么你可以使用SqlServerHelper类,如果是MySql,可以使用MySqlHelper,如果是Access,可以使用AccessHelper。如果是Oracle则可以使用OracleHelper类。下面以.NET爱好者最喜爱的SqlServer示例 :
SqlHelper的书写风格很多,你可以选择自己的需求和爱好使用静态方式或对象方式。各和利弊。选择情况使用吧!
第一种,静态方式,静态方式也是目前应用最多的一种,因为其简单,所以在写一个Sql语句时,用一个方法就可以搞定。如果在一个过种时需要多个Sql语句执行时,不然得创建SqlConnection和控制他的传参,使语句复杂。不然就是每执行一个sql语句让SqlConnection创建一次,使性能影响。但是在只执行一个简单的查询语句时,显的更简单,所以这种方式在简单的执行逻辑面前,受到大家的喜爱!
呵呵,简单吧,这让项止显的代码又简单,又清晰,是吧!
第二种:面向对象式编程,其实这种语法也不复杂,只是加个using语句而己:
呵呵,这是官方示例代码中的一部分,语法简单,呵呵,在一个using语句中执行了delete删除语句和select查语句。
比如,如果你想执行事务时,可以使用:
5、F5、发布运行测试吧!
总结
下载包中有示例源码,您可以查看其中源码。简单的代码,希望给君带来愉快的心情!
目前网络上的SqlHelper的各种改版版本很多,但大多数都是散乱而没有整体思路,一此只是静态方法,显的散乱的代码让程序无法很好的维护,有的繁琐的对象封装,使程序性能降低、维护复杂。最近发现国外网站的www.dbhlper.org发布了最新的SqlHelper版本,不仅仅代码精炼,而且体系清晰。用轻松的代码可支持强大的数据操作。我爱不释手,特写此文记下。
使用步骤很简单:
1、访问(http://www.dbhelper.org/sqlhelper/)网页中,下载SqlHelper最新下载包,然后添加引用。
2、配置web.config配置文件
<connectionStrings> <!--SqlServerHelper连接字符串设定--> <add connectionString="server=.;uid=sa;pwd=123456;database=yourdatabase" name="SqlServerHelper"/> <!--Oracle连接字符串设定--> <add connectionString="Data Source=orcl;User Id=system;Password=***;Integrated Security=no" name="OracleHelper"/> <!--MySql连接字符串设定--> <add connectionString="server=localhost;uid=root;pwd=123456;database=mysqldatabase" name="MySqlHelper"/> </connectionStrings>
说明:这些配置信息可以使用继承SqlServerHelper、OracleHelper、AccessHelper、MySqlHelper的方法重写其中ConnectionString属性(在重写ConnectionString属性后不需要配置web.config中的connnectionStrings节点了),更改连接字符串,从而通过不同的派生类操作不同的数据库。
3、在您项目中添加下载包中的www.dbhelper.org.SqlHelper.dll引用,如图1
图1
4、编写SqlHelper调用代码:
SqlHelper支持多种数据库包括MySql、SqlServer、Oracle、Access数据库,后面还可以添加对DB2的支持哦!如果的数据库是SqlServer,哪么你可以使用SqlServerHelper类,如果是MySql,可以使用MySqlHelper,如果是Access,可以使用AccessHelper。如果是Oracle则可以使用OracleHelper类。下面以.NET爱好者最喜爱的SqlServer示例 :
SqlHelper的书写风格很多,你可以选择自己的需求和爱好使用静态方式或对象方式。各和利弊。选择情况使用吧!
第一种,静态方式,静态方式也是目前应用最多的一种,因为其简单,所以在写一个Sql语句时,用一个方法就可以搞定。如果在一个过种时需要多个Sql语句执行时,不然得创建SqlConnection和控制他的传参,使语句复杂。不然就是每执行一个sql语句让SqlConnection创建一次,使性能影响。但是在只执行一个简单的查询语句时,显的更简单,所以这种方式在简单的执行逻辑面前,受到大家的喜爱!
DataTable dt=SqlServerHelper.ReadTable("select * from table1");
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) );
呵呵,简单吧,这让项止显的代码又简单,又清晰,是吧!
第二种:面向对象式编程,其实这种语法也不复杂,只是加个using语句而己:
using (SqlServerHelper helper = new SqlServerHelper()) { helper.Command.CommandText = "delete from [Students] where stid=@stid"; helper.AddParameter("@stid", SqlDbType.Int, student_id); helper.Open(); helper.ExecuteNoneQuery(); helper.Command.Parameters.Clear(); helper.Command.CommandText = "select * from [Students]"; return helper.ReadTable(); }
呵呵,这是官方示例代码中的一部分,语法简单,呵呵,在一个using语句中执行了delete删除语句和select查语句。
比如,如果你想执行事务时,可以使用:
using (SqlServerHelper helper = new SqlServerHelper()) { helper.Command.CommandText = "delete from [Students] where stid=@stid"; helper.AddParameter("@stid", SqlDbType.Int, student_id); helper.Open(); DbTransaction tran = helper.Connection.BeginTransaction(); helper.Command.Transaction=tran; try { helper.ExecuteNoneQuery(); tran.Rollback(); } catch { tran.Rollback(); throw; } }
5、F5、发布运行测试吧!
总结
下载包中有示例源码,您可以查看其中源码。简单的代码,希望给君带来愉快的心情!
相关文章推荐
- jQuery.ui.1.7.2中文文档(官方文档翻译)
- Jaxb官方文档中文翻译
- Spring与Mybatis整合的MapperScannerConfigurer处理过程源码分析/mybatis中文官方文档
- KAFKA中文官方文档
- TensorLayer官方中文文档1.7.4:API – 数据预处理
- 上传组件SWFUpload 2.5.0版 官方说明文档 中文翻译版
- SWFUpload 2.5.0版 官方说明文档 中文翻译版
- HBase 官方文档(中文)
- HBase 官方文档 中文
- [ndk-r8d]官方文档中文翻译(OVERVIEW)
- Umbraco官方技术文档 中文翻译
- GLSL中文手册(word文档)以及OpenGL ES 官方API下载
- SparkSql官方文档中文翻译(java版本)
- Cocos2d-x官方中文文档
- Android Design 安卓官方设计文档中文翻译——第一部分:引导
- wordcloud制作中文词云图(官方文档参数翻译)
- iphone开发-官方中文文档
- Android官方中文文档
- RxJava 官方文档中文翻译
- hadoop2官方文档中文翻译---索引