自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

改善sql字符串的可读性(4) - 多Join拼接的性能测试

 * 测试,当on的条件为false的时候,join是否会被优化? -- 插入测试表CREATE TABLE person        (id INT NOT NULL ,NAME VARCHAR(20));CREATE TABLE bill        (id INT NOT NULL ,NAME VARCHAR(20),personId INT ); -- ...

2010-06-23 19:25:19 86

改善sql字符串的可读性(3) - 多个可选Join 拼接优化

 报表众多的系统,不仅仅是where子句存在拼接,join子句也可能需要拼接。还是看代码:String sql=" select * from bill  ";if (queryParams.pTypeId != null){  dbHelper.AddParameter("@ptypeid", ptypeid);  sqlWhere += " and  p.typei...

2010-06-18 21:59:07 143

改善sql字符串的可读性(2) - 多个可选条件拼接的优化

 报表众多的系统,“多个可选条件拼接”就会大量存在。因为程序员需要根据条件录入框的的值是否存在来决定是否拼接这个对应条件。有点抽象,还是看代码。 string sql =@"select n.vchcode,n.summary,n.Comment,e.fullname efullname                        from dlyndx n left j...

2010-06-17 20:56:06 138

改善sql字符串的可读性 - sql字符串常见编写风格

 所谓的动态sql,就是在t-sql字符串内的sql,而静态sql就是直接写在t-sql 存储过程内的。动态sql的好处是可以写出非常复杂的,表达能力很强的sql,并且,因为某些条件下sql更简单,因此号称效率更好。而静态sql的好处在于可以调试,可以代码提示。不管怎样,我发现我们的sql很多都是动态的。尤其是在sqlserver缺乏分页支持的sql2000,很多需要分页的存储过程都是这样...

2010-06-16 19:12:21 184

Sqlserver 缺乏很多基本类型

 编写了n年的T-SQL,一回头,发现这门语言居然缺少很多基本的类型。  1.枚举虽然枚举看起来就是数字,但是枚举比起数字来说更加好读。mysql有enum,比如billtype(单据类型)把它定义为枚举,从而在编写sql的时候更加方便。 mysql支持枚举案例: mysql> CREATE TABLE enum_test(e ENUM('fi...

2010-06-12 21:37:50 154

如今谁坐龙位?

某天早晨,我和一个程序员随便谈谈,他说,我们的系统变成假3层了。语气中看来非常寥落。我脑中便一下子跳出这个“龙位”的故事: “民国14年,费孝通到湖南永顺考察,当地人问他:‘如今谁坐龙位?’,14年光阴一瞬间,在很多人看来如此重要的政权更迭竟然传播到如此不堪的状态。” 回头来说3层。7年前,3-ties开发刚刚兴起,但是是否使用3-ties理念的开发是有分歧的。有些人认...

2010-06-11 19:16:00 84

Best practise ——什么样的代码更应该精雕细琢

 代码的价值不在本身大小和复杂度,而在于多少其他代码在用它。 我们的一个产品依然有很多代码采用了“点连接的长行代码”,比如权限检查代码: // 检查当前用户是否有对象搜索的权限AppUtils.UserInfo.CheckLimit(CarpaServer.Common.OperatorLimit.LIMIT_OBJECT_HISTORY_SEARCH) ; 这...

2010-06-10 20:52:20 293

best practice 封装存储过程(续4)——越抽象,就越容易封装变化。

 上回书 Tony  says:“看起来它似乎并没有改善不同层次代码的耦合关系,以前例看,所有的针对数据库的调用都是通过C#层的RunProc实现的,似乎它本身就充当了隔离层的作用,为什么还要增加一个无用的层delete_dept(1)呢? ” 你的问题提的很好。我会更加细致的解答你的疑问。 简单说,delete_dept语义上比RunProc更加抽象,没有那么...

2010-06-09 22:04:23 105

Svn vs VSS : 用数字说话

 图来自于MartinFolwer(简称MF)本人的博客中的文章:VcsSurvey。他做的一个调查,调查样本为ThoughtWorks公司的100名(咨询师)。图的纵坐标为“回应比例”,横坐标为“赞成比例”。分别表明使用的普及程度和美誉度方面。 1.          只要看VSS,Subversion即可.其他的版本管理我们不必看。2.          VSS赞成比例...

2010-06-05 13:46:42 78

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除