设为首页 收藏本站
查看: 914|回复: 0

[经验分享] CYQ.Data 轻量数据层之路 V4.3 版本发布[增加对SQLite,MySQL数据库的支持]

[复制链接]

尚未签到

发表于 2015-6-17 12:12:46 | 显示全部楼层 |阅读模式
  前言:


  继上一版本:CYQ.Data 轻量数据层之路 V4.0 版本发布 ,又过去一个来月了,不过也过了一个新年了。
  
  由于过年原因,因此框架也没多折腾什么,只是年前年后顺路把SQLite,MySQL两种数据库给支持上了。
  
  提示:基于网友的提醒,本次版本发布带CYQ.Data.xml,增加了方法的中文提示。
  
  下面看一下新版本的修改记录

DSC0000.gif DSC0001.gif

1:MAction的构造函数允许从MDataRow加载
2:MutilLanguage在设置Cookie时也同时设置语言标识
3:MutilLanguage默认语言取自浏览器语言
4:取消CYQ.Data.SQL.OutPutData类及两个相关枚举TableType|DataBaseType,将[生成枚举|创建分页存储过程|创建日志表]等操作单独移到辅助工具实现
5:取消ProcedureSql,新增SchemaAction来获取表架构数据
6:增加对SQLite数据的支持
9:MAction增加从Json反加载数据填充
7:增加对MySql数据库的支持
8:提升数据表架构的缓存级别:MDataColumn->MDataRow  
  
  下面进行详细的解说
  
  一:MAction的构造函数允许从MDataRow加载
  
  增加这个原因,是基于 秋色园 应用中,考虑到数据重用的问题,简单解说一下:


1: 秋色园 缓存了用户的信息,就是一行数据了,OK,那么实际上对所有用户的操作都来自同一张表,于是,可以直接从缓存的Row中取数据表结构进行反填充即可以了。
由于数据表结构本身就有缓存,所以上面的填充效果,简单的看是不太明显的。
2:当用户编辑自己资料时,当独的数据行无法进行操作,因此时候填充,可以迅速转成可操作的MAction,节省一定的开销。
  
  二:MutilLanguage在设置Cookie时也同时设置语言标识
  三:MutilLanguage默认语言取自浏览器语言
  


在 秋色园 中,多语言应用的是比较广的,因此考虑的因素也是相对较多,包括对用户的浏览器语言判别来显示不同的语言文章,和通过显示的后缀和非后缀等情况做处理,所以小小的需要改动一下。
顺便说一下:CYQ.Data.Xml名称空间下的内容,千万不要放过。
  
  四:取消CYQ.Data.SQL.OutPutData类及两个相关枚举TableType|DataBaseType,将[生成枚举|创建分页存储过程|创建日志表]等操作单独移到辅助工具实现
五:取消ProcedureSql,新增SchemaAction来获取表架构数据

  


这两个的调整,主要是为了减轻框架的大小,同时内部类重新优化了一下结构,不影响外围使用。
同时,去掉OutPutData类,意味着一些辅助功能,只能借辅助工具实现,包括生成mssql/oracle的分页存储过程。
  
  六:增加对SQLite数据的支持
  七:增加对MySql数据库的支持
  采用插件式方式加载,如果需要使用,只要把相应的 MySql.Data.dll 或者 System.Data.SQLite.dll CYQ.Data.dll 放在一起即可。
  由于SQLite和Access都是单个文章方式,因此数据库链接配置方式类似如下:




        
        
   
   
        
        
        
      
  八:提升数据表架构的缓存级别:MDataColumn->MDataRow
  


表架构缓存提升了一个级别,理论上性能是提升的,本属内部优化之事。  
  九:MAction增加从Json反加载数据填充
  
  增加的这个功能是为Ajax应用准备的,应用示例代码:



            using (MAction action = new MAction("Blog_User"))
            {
                action.GetFromJson("{id:2,name:\"秋色园\",url:\"www.cyqdata.com\"}");
                action.Update();
            }  结果就是把id为2的行数据的name和url字段更改为相应的数据。
  
  十:V4.3 框架下载
  
  下载地址:下载中心-秋色园
  PS:由于新增加数据库,相应的辅助工具V4.3版本也同时提供下载。
  
  十一:CYQ.Data框架项目案例
  
  网址:http://www.cyqdata.com/cyqdata/article-cate-81
  
  欢迎大伙继续提供CYQ.Data框架项目案例。
  
  后言:



到本版本为止,支持的数据库类型为:Access/MSSQL[2000/2005/2008]/Oracle/SQLite/MySQL
其中Access/MSSQL两个系列在大量的项目应用中应用过后,已相当的稳定。
对于Oracle,在测试中通过,已有兄台在实际应用项目中应用,静待发布项目案例的那天。
对于SQLite和MySQL,在测试中通过,欢迎大伙在实际应用中若遇到问题欢迎反馈。
  
  
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-78173-1-1.html 上篇帖子: SQLite数据库增删改查操作 下篇帖子: C++ FFLIB 之FFDB: 使用 Mysql&Sqlite 实现CRUD
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表