Farseer.net轻量级开源框架 中级篇:SQL执行报告

导航

目   录:Farseer.net轻量级开源框架 目录

上一篇:Farseer.net轻量级开源框架 中级篇: 数据库切换

下一篇:Farseer.net轻量级开源框架 中级篇: 探究ORM(Mapping)

  很多时候,我们希望能知道我们写的项目在运行过程中到底执行了哪些SQL语句,或者说一个页面中访问了几次数据库。好让我们在优化的时候提供一些方向。

  举个例子,作者在有时候,会自信的认为这个页面很简单,估计也就顶多5条SQL语句就可以了。可是当打开SQL报告之后才吓傻眼,几十条SQL,看的是触目心惊。

  或者有时候,同事找到我说,怎么页面执行的这么慢,我通常让他自己去看SQL执行报告,一打开,发现一个页面执行了上百条的SQL。这样的页面能快到哪里去?在循环里面访问数据库,是想考验数据库的承受能力吗?

  好了,废话完了。现在说回正经事,首先是,如果打开SQL报告。默认Farseer是关闭了SQL报告的。请记住,在生产环境下(线上环境)请不要打开这个SQL报告。因为它会直接影响到你的系统性能哦。只在开发环境下打开。

开启SQL记录

  在~/App_Data/System.Config 中,有其中一项:IsWriteDbLog  默认是False 的,将它设为True 即可。 这个配置文件不存在时,执行下项目,Farseer会检查配置文件是否存在,不存在则会创建出来。

  当打开后,再次尝试运行下项目。你会发现,在~/App_Data/ 多了一个SQL文件夹。没错,这里就是项目运行过程中产生的SQL的记录。

  这个SQL记录文件会一直记录着。并且会根据访问的路径来存放物理文件目录。

  我们看看这个SQL报告里面记录了哪些信息:

   

  都是毫秒单位显示

  生成:Farseer.Net 生成Sql文本所需要的时间。

  获取:将SQL文本提交(ADO.NET)给数据库执行的时间,也就是数据库执行时间。

  转换:取得数据的DataTable转换成List<Users>的转换时间。

  通过这么一份简单的SQL报告,可以让你更加清楚自己项目的执行情况。

导航

目   录:Farseer.net轻量级开源框架 目录

上一篇:Farseer.net轻量级开源框架 中级篇: 数据库切换

下一篇:Farseer.net轻量级开源框架 中级篇: 探究ORM(Mapping)

广告时间

QQ群:116228666 (Farseer.net开源框架交流) 请注明:Farseer.Net

Farseer.Net是一款ORM框架 + 常用工具 + 扩展集合。

Farseer 意为:先知、预言家 通常在某些场合时,提供计谋、策略。也希望该框架能给大家提供最大化的便捷。

ORM:其英文全称是:Object(对象) Relational(关系) Mapping(映射)

Farseer.Net的目标是:快速上手、快速开发、简单方便。

1 new User { ID = 1, Name = "张三" }.Insert()
posted @ 2014-11-10 09:42  steden  阅读(475)  评论(0编辑  收藏  举报