首页
学习
活动
专区
工具
TVP
发布

哲学驱动设计

专栏成员
187
文章
198919
阅读量
52
订阅数
大数据表查询优化 - 表分区
快两年没写过业务代码了…… 今天帮一个研发团队优化了一下数据库表的查询性能。使用的是表分区。 简单记录了一下步骤,方便直接用:
用户1172223
2020-10-09
9930
Rafy 框架 - 使用 SqlTree 查询
本文介绍如何使用 Rafy 框架中的 Sql Tree 查询: 除了开发者常用的 Linq 查询,Rafy 框架还提供了 Sql 语法树的方式来进行查询。 这种查询方式下,开发者不需要直接编写真正的 Sql 语句,而是转而使用一套中间 Sql 语法树对象。这隔离了与具体数据库的耦合,使得开发者编写的查询可以跨越多种不同的数据库运行,甚至可以在非关系型数据库中运行。同时,框架还结合托管属性,提供了方便开发者使用的 API,并尽量保持与传统 Sql 相近的语法,使得开发者可以快速理解并编写。 本文包含以下章节:
用户1172223
2018-01-30
2.4K0
Rafy 领域实体框架演示(4) - 使用本地文件型数据库 SQLCE 绿色部署
本系列演示如何使用 Rafy 领域实体框架快速转换一个传统的三层应用程序,并展示转换完成后,Rafy 带来的新功能。 《福利到!Rafy(原OEA)领域实体框架 2.22.2067 发布!》 《Rafy 领域实体框架示例(1) - 转换传统三层应用程序》 《Rafy 领域实体框架演示(2) - 新功能展示》 《Rafy 领域实体框架演示(3) - 快速使用 C/S 架构部署》 前言 支持一款与 Access 类似的文件型数据库,对于一些绿色安装的应用程序来说是非常必须的。使用 Rafy 领域实体框架开发的应
用户1172223
2018-01-30
8850
Rafy 领域实体框架演示(2) - 新功能展示
本文的演示需要先完成上一篇文章中的演示:《Rafy 领域实体框架示例(1) - 转换传统三层应用程序》。在完成改造传统的三层系统之后,本文将讲解使用 Rafy 实体框架后带来的一些常用功能。 数据库自
用户1172223
2018-01-30
9230
Rafy 领域实体框架示例(1) - 转换传统三层应用程序
Rafy 领域实体框架发布后,虽然有帮助文档,许多朋友还是反映学习起来比较复杂,希望能开发一个示例程序,展示如何使用 Rafy 领域实体框架所以,本文通过使用 Rafy 领域实体框架来改造一个传统的三层架构应用程序——“服装进销存”系统,来讲解如何使用 Rafy 领域实体框架进行数据库应用程序的快速开发,以及替换为使用 Rafy 框架后带来的一些新功能。 完整示例包下载地址:http://pan.baidu.com/s/1AB9TL,其中包含本次改造前、改造后的源代码,以及转换说明文档。(下载该示例代码后,
用户1172223
2018-01-30
1K0
Rafy 领域实体框架 - 树型实体功能(自关联表)
在 Rafy 领域实体框架中,对自关联的实体结构做了特殊的处理,下面对这一功能进行讲解。 场景 在开发数据库应用程序时,往往会遇到自关联表的场景。例如,分类信息、组织架构中的部门、文件夹信息等,都是不
用户1172223
2018-01-29
1.6K0
Rafy 框架 - 为数据库生成注释
当开发者使用 CodeFirst 开发模式,编写了大量的实体类,在代码中编写了完整的类型注释和属性注释,并自动生成数据库后,往往需要把实体类型和实体属性上的注释同时生成到对应的数据库表及字段上。这样,即方便在查看数据库时能清晰地看到每一个表及字段的含义,也方便使用一些第三方的工具(如 PowerDesigner 等)为数据库生成较为全面的文档。 使用方法 在为数据库生成注释之前,需要保证数据库已经全部生成成功(即和实体保持一致)。否则更新字段的注释时,可能因为字段不存在而导致执行失败。 需要在编译领域实
用户1172223
2018-01-29
5380
Rafy 框架 - 幽灵插件(假删除)
Rafy 框架又添新成员:幽灵插件。本文将解释该插件的场景、使用方法、原理。 场景 在开发各类数据库应用系统时,往往需要在删除数据时不是真正地删除数据,而只是把数据标识为‘已删除’状态。这些数据在业务逻辑上是已经完全删除、不可用的数据,但是不能在数据库中真正的把它们删除,而是需要永久保留这些历史数据。即开发人员常说的‘假删除’功能。 这种需求往往是系统级的。往往不是针对某一张表,而很可能是针对系统中的所有表都需要实现‘假删除’功能。 使用方法 由于这种需求比较常见,所以我们决定专门为该功能写一个独立的 Ra
用户1172223
2018-01-29
1.2K0
Rafy 框架 - 流水号插件
Rafy 框架又添新成员:流水号插件。本文将解释 Rafy 框架中的流水插件的场景、使用方法。 场景 在开发各类数据库应用系统时,往往需要生成从一开始的流水号,有时还需要按月或者按日进行独立生成,如下面的格式:2016031800000001、2016031800000002……。 设计本插件用于生成上述相应格式的编号。 使用方法 添加插件 1.通过 Nuget Package Manager 搜索并安装 Rafy.SerialNumber 插件。 2.在 DomainApp 中添加该插件;同时,设置该插件
用户1172223
2018-01-29
8020
《OEA - 实体扩展属性系统 - 设计方案说明书》
    这篇设计文档是 12 月份写来参加公司的研发峰会的,自己倒是信心满满,不过最后还是没有入围。现在想想也没啥大用,所以贴出来,期待与园友交流。     文档有点长,没全部贴在博客中,有兴趣的可以下载附件中的 PDF。  附件:《实体扩展属性系统-系统设计说明书.pdf》 ================= 分隔线 ====================== 目录 前言... 4 1 背景与需求... 5 1.1 产品 721 客户化开发的需要... 5 1.2 实体动态列... 6 1.3
用户1172223
2018-01-29
1.9K0
OEA 2.11 支持单机版数据库 - SQLite与SQLCE对比
在 OEA 平台 设计中,需要支持多种数据库,这至少包括了 SqlServer、Oracle、一个单机文件数据库。而之前对于这一块,我们一直没有实现,只是预留了许多接口。昨天花费了一天的时间,让 OEA 支持了本地数据库 SQLCE。 为什么要支持本地数据库呢? 支持开发简单的本地软件。 偶尔需要一些比较小的应用程序,例如“个人计帐管理”、“个人联系方式管理”等。这些简单的软件,如果还让客户装个 SQLServer2008,客户觉得都围绕着。选择使用单机数据库,会让发布变得十分简单、体积也小,做
用户1172223
2018-01-29
1.2K0
P of EAA 总结
看了几遍了,就只在书上勾了下,也没什么总结。暂且先把关键内容摘抄如下: Domain Logic Patterns Transaction Script Organizes business logic by procedures where each procedure handles a single request from the presentation. Domain Model An object model of the domain that incorporates both behav
用户1172223
2018-01-29
1.2K0
模式应用:自定义匹配
    本篇博客记录了我在工作过程中的一个设计单元。 需求 GIX4项目中需要为非国标清单进行匹配,用户自定义匹配规则。规则可以被存储到数据库中,下次重复使用。界面原型如下: 图1 界面原型    
用户1172223
2018-01-29
6710
Sort By Double
I have wrote a article which describes how to deal with a complicate data structure “sortable tree”. See here. As i said, it is so complicate that cann’t be maintain easily. Now, i have found a new fluent way to sort this tree:”Sorting by Double”. “Sorting
用户1172223
2018-01-26
9650
性能优化总结(三):聚合SQL在GIX4中的应用
本节主要介绍,在GIX4系统中,如何应用上篇讲的方案来改善性能,如果与现有的系统环境集成在一起。大致包含以下内容: SQL的生成 映射-数据读取方案 工厂方法-接口的命名约定 实例代码 SQL生成
用户1172223
2018-01-26
1K0
福利到!Rafy(原OEA)领域实体框架 2.22.2067 发布!
距离“上次框架完整发布”已经过去了一年半了,应群中的朋友要求,决定在国庆放假之际,把最新的框架发布出来,并把帮助文档整理出来,这样可以方便大家快速上手。 08104816-68bbd9d568c049c08150b6cc83d1ac15.gif 发布内容 注意,本次发布,只包含 Rafy 框架中的领域实体框架及相关文档。不包含“界面自动生成”等其它组件。 安装新的发布包:《使用 NuGet 下载最新的 Rafy 框架及文档》。 网页版用户手册(实时更新):《http://zgynhqf.github.io/
用户1172223
2018-01-26
1.9K0
性能优化总结(五):CSLA服务端如何使用多线程的解决方案
    前篇说到了使用异步线程来实现数据的预加载,以提高系统性能。     这样的操作一般是在客户端执行,用以减少用户的等待时间。客户端发送多次异步请求,到达服务端后,如果服务端不支持多线程处理操作,线性处理各个请求,必然导致客户端的异步请求变得没有意义。     大家肯定会说,谁会把服务端设计成单线程的啊,那不是明显的错误吗?是的!但是我们的系统使用了CSLA来作为实现分布式的框架,而它的服务端程序却只能支持单线程……这个问题我们一直想解决,但是查过CSLA官方论坛,作者说由于GlobalContext和
用户1172223
2018-01-26
6890
性能优化总结(二):聚合SQL
    本篇主要讲如何使用一句较复杂的SQL来加载整个聚合对象,以达到最小化数据库连接次数。主要是解释其中的原理。 LazyLoad及其缺点     相信越来越多的人已经开始使用富领域对象进行领域/业
用户1172223
2018-01-26
8140
090615 T 数据库范式
帮助记忆五级范式:     一级范式:         消除每个表格中重复的组。         为每套相关的数据建立一个独立的表格。         使用一个主键来标识每套相关的数据。     二级范式:         为应用在多条记录的字段建立独立的表格。         通过一个外键关联这些表格的值。     三级范式:         消除不信赖于该键的字段。     四级范式:         在一个多对多的关系中,独立的实体不能存放在同一个表格中。     五级范式:         原来的表
用户1172223
2018-01-26
4850
没有更多了
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档