易截截图软件、单文件、免安装、纯绿色、仅160KB

把Sql数据转换为业务数据的几种方法

ORM系统必须把数据库中的数据转换为业务数据,转换的方法大致有3种,本文就试图对它们做一些简单分析。
1、属性反射。就是通过反射,获取业务实体类的各个属性,然后再设置这些属性的值。这个方法最简单、最稳定、通用性最强、可维护性最强、性能最差。例如NHibernate就是用这种方法实现的,它通过IGetter和ISetter接口实现对某个业务实体类属性的读取和写入。DongLiORM的早期版本也是用的这种方法,他通过BusinessObject的属性索引器实现。其原理就是首先通过获取某个业务实体类某个属性的PropertyInfo,然后调用该PropertyInfo的GetValue或者SetValue方法。类似的代码如下:
PropertyInfo info = BusinessType.GetProperty(PropertyName);
info.SetValue(this, value, null);
比如,现在有一个业务实体类UserItem,其定义如下:
public class UserItem
     {
        public UserItem() { }
        private string _userid;
        private string _username;
        private string _pwd;
        private string _email;
        public string UserID
        {
            set { _userid = value; }
            get { return _userid; }
        }
        public string UserName
        {
            set { _username = value; }
            get { return _username; }
        }
        public string Pwd
        {
            set { _pwd = value; }
       


相关文档:

SQL聚合函


SQL聚合函
标签:sql聚合函数 杂谈 
 
聚合函数:
1.AVG 返回组中的平均值,空值将被忽略。
例如:use  northwind   // 操作northwind数据库
   Go
   Select  avg (unitprice)   //从表中选择求unitprice的平均值
    & ......

SQL优化

SQL优化34条
我们要做到不但会写SQL,还要做到写出性能优良的SQL,以下为笔者学习、摘录、并汇总部分资料与大家分享!
(1)      选择最有效率的表名顺序(只在基于规则的优化器中有效):
ORACLE 的解析器按照从右到左的顺序处理from子句中的表名,from子句中写在最后的表(基础表 driving tabl ......

SQL Databases Don't Scale (简译)

我经常问的一个问题是:你是如何来扩展SQL Database的?有很多的方法可以做到,比如使用缓存,共享或者用其他的技术将压力从数据库释放,但实际上我们没有。SQL Database从根本上来说是不具有扩展性的,我们也没有魔法使它忽然具有扩展性。
什么是扩展性?
必须具有几下几点:
横向扩展:更多的server可以带来更高的性能 ......

通过分析SQL语句的执行计划优化SQL

通过分析SQL语句的执行计划优化SQL(总结)
做 DBA快7年了,中间感悟很多。在DBA的日常工作中,调整个别性能较差的SQL语句时一项富有挑战性的工作。其中的关键在于如何得到SQL语句的执行计划和如何从SQL语句的执行计划中发现问题。总是想将日常经验的点点滴滴总结一下,但是直到最近才下定决心,总共花了3个周末时间,才将其 ......

sql server系统表详细说明

 sql server系统表详细说明
sysaltfiles
 主数据库 保存数据库的文件
syscharsets
 主数据库字符集与排序顺序
sysconfigures
主数据库 配置选项
 syscurconfigs
主数据库当前配置选项
  sysdatabases
主数据库服务器中的数据库
  syslanguages
主数据库语言
&n ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号