随笔分类 -  旧笔记

以前写的博客。随着水平的提高,不在认同其中的内容,不过,见证了自己的进步,放在这里。有时间的重新它们。
C#和Qt实现的对于异常处理的一个使用策略
摘要:一、基础 1、C#中的异常处理的基本格式:try{ // ......}catch(Exception exception){ // ......}finally{ // ......} 一般来说finally代码段用于处理没有被托管的资源的释放过程。 2、Qt中的异常处理基本格式try{ // ......}catch(QString exception){ // ......} 二、异常捕获的策略 1、try块的范围应该尽可能小。把代码块两端的代码逐渐剔除出去即可。 2、能够用if语句来捕获异常,就不要用try来捕获。例如判断被除数是否为0,再... 阅读全文

posted @ 2013-01-08 22:19 yao2yao4 阅读(7678) 评论(0) 推荐(1)

System.Data.SQLite.dll不能编译成AnyCPU问题的解决方案,以及它跨x86和x64的使用方法。
摘要:Data.SQLite.dll可以认为是对用C编写的sqlite3.c的.NET平台的封装,由于原sqlite3.dll是区分x86和x64发布的,Data.SQLite.dll一般也会区分x86和x64封装,结果可能会在实际使用时产生麻烦。 从Data.SQLite.dll的源代码中可以知道,其解决方案中保含两部分的项目,一部分是C#项目,会被生成Data.SQLite.dll和Data.SQLite.Linq.dll;另一部分是C/C++项目,会被生成SQLite.Interop.dll。如果对源代码进行某些配置,结果会生成一个文件,即我们常用的Data.SQLite.dll... 阅读全文

posted @ 2012-12-22 08:43 yao2yao4 阅读(8948) 评论(7) 推荐(1)

适用于关系型数据库的抽象工厂的数据库访问类
摘要:适用于SQLite、Access、MySQL、MSSQLServer、Oracle这类关系型数据库,不适于非关系型数据库,例如MongoDB。下面是代码: 1 using System; 2 using System.Configuration; 3 using System.Data; 4 using System.Data.Common; 5 using System.Data.SQLite; 6 7 namespace WinFormTest 8 { 9 public static class DbHelperSQL 10 { 11 p... 阅读全文

posted @ 2012-12-10 20:09 yao2yao4 阅读(394) 评论(0) 推荐(0)

C#下多线程下几种免费数据库的性能比较的结论
摘要:待测试的免费数据库有SQLite、Access、MySQL、MongoDB:由于大部分应用都是在多线程下进行的,要进行线程同步、代码加锁之类的处理。在说多线程之前,先说在单线程前提下的测试结果,那就是Access的存取数据效率要低很多,其它三种的都比较快,相互之间差不多。下面是多线程下的结论:1、SQLite和Access:两种是常见的文件型数据库,所以放在一起比较。结论是,1)二者的数据存取效率差不多,根据线程数的不同,会有-2%-10%的差距,SQLite稍微好一些;2)Access的资源占用(CPU和内存)比SQLite要明显高很多,根据线程数和测试程序的不同,会有80%-190%的差距 阅读全文

posted @ 2012-12-08 10:30 yao2yao4 阅读(1481) 评论(0) 推荐(0)

导航