标签分类 热门分类
当前位置:首页 > 数据库电子书 > 数据模型电子书网盘下载
数据模型资源手册(卷3):数据模型通用模式 数据模型资源手册(卷3):数据模型通用模式
blueorb

blueorb 提供上传

资源
44
粉丝
5
喜欢
222
评论
12

    数据模型资源手册(卷3):数据模型通用模式 PDF 高清版

    数据模型电子书
    • 发布时间:

    给大家带来的一篇关于数据模型相关的电子书资源,介绍了关于数据模型、通用模式方面的内容,本书是由知识产权出版社出版,格式为PDF,资源大小116 MB,Len编写,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:8.2,更多相关的学习资源可以参阅 数据库电子书数据库视频、等栏目。

  • 数据模型资源手册(卷3):数据模型通用模式 PDF 下载
  • 下载地址:https://pan.baidu.com/s/1mFmV4e_v1m-IqK-FXjl4u
  • 分享码:d1p2
  • 数据模型资源手册(卷3):数据模型通用模式

    内容介绍

    这书选用了类设计模式的方法对数据模型开展高宽比抽象性小结,一起创作者对数据模型的抽象性水平干了级别划分,对卷一提及的各种各样数据模型在不一样的抽象性水平下设计方案出去的数据模型做详尽的剖析。创作者共享了1个十分珍贵的专用工具,所有人参加数据建模,从初学者到权威专家。创作者向你展现怎样:*常用的数据模型搭建实体模型等实体模型的功效、层级、归类、影响力、沟通交流方法,和业务流程标准。应用1个强劲的数据模型方式的数据建模。评定特殊与理论实体模型的优点和缺点。有利于你改善逻辑性和物理模型的品质和一致性。运用方式在很多种类的数据建模工作中,如原形,手机应用程序,公司数据模型,数据仓库,和主数据管理工作中。这书的重中之重是基础的方式,危害超出百分之二十60的数据建模工作中。这种方式能够用于大大减少三维建模時间和成本费,起动数据建模工作中。这书做为經典的指导方针,大大提高了数据模型的完整性和品质,并做为1个客观性的规范,具体指导企业评估数据模型。针对每1个方式,出示了很多的代替品,从十分主要到十分理论的建模方法。数据模型通用性方式针对已经开展数据建模的人全是不可或缺的具体指导指南。我极力推荐此书给业务流程剖析工作人员、应用开发工作人员、程序猿和数据仓库室内设计师。

    目录

    第1章 介绍
    1.1 为何我们需要这本书?
    1.2 拓展数据建模学科
    1.3 何谓模式?何谓通用模式?
    1.4 模式的意义是什么?
    1.5 本书的方法
    1.6 不同级别的模式
    1.7 谁是本书的潜在读者?
    1.8 本书包括哪些内容
    1.9 其他数据建模模式
    1.10 本书中所采用的约定和标准
    1.11 小结
    1.12 参考文献
    第2章 设置角色:当事人做什么
    2.1 这类模式的意义是什么?
    2.2 本章包含哪些内容?
    2.3 什么是声明角色?
    2.4 一级声明角色模式
    2.5 二级声明角色模式
    2.6 三级声明角色模式
    2.7 模式总结
    2.8 参考文献
    第3章 使用角色:如何参与
    3.1 这类模式的意义是什么?
    3.2 本章包括哪些内容?
    3.3 什么是上下文角色?
    3.4 一级上下文角色模式、属性
    3.5 一级上下文角色模式及关系
    3.6 二级上下文角色模式
    3.7 只作为备选模式的二级上下文角色模式——当事人
    3.8 三级上下文角色模式
    3.9 混合型上下文角色模式
    3.10 模式总结
    3.11 参考文献
    第4章 层次、聚合和对等关系:类似数据的组织
    4.1 这类模型的意义是什么?
    4.2 本章包含哪些内容?
    4.3 什么是递归关系和如何通过递归关系来组织数据?
    4.4 一级递归模式
    4.5 二级递归模式
    4.6 二级拓展递归模式
    4.7 三级递归模式
    4.8 维护规则的三级递归模式
    4.9 模式总结
    4.10 参考文献
    第5章 类型和类别:数据的分类
    5.1 这种模式的重要意义是什么?
    5.2 本章有哪些内容?
    5.3 什么是类型、信息产品分类和分类标准?
    5.4 一级分类模式
    5.5 二级分类模式
    5.6 三级分类模式
    5.7 使用隶属关系和分类方案的三级分类模式
    5.8 模式总结
    5.9 参考文献
    第6章 状态:数据的状态
    6.1 此类模式的意义是什么?
    6.2 本章有哪些内容?
    6.3 什么是状态?
    6.4 一级状态模式
    6.5 二级状态模式——当前状态
    6.6 三级状态模式
    6.7 四级状态模式
    6.8 状态类别模式
    6.9 维护多重隶属关系和规则的状态类型模式
    6.10 模式总结
    6.11 参考文献
    第7章 联系机制:怎样获得联系
    7.1 这种模式存在的意义?
    7.2 本章包含哪些内容?
    7.3 什么是联系机制?
    7.4 一级联系机制模式
    7.5 二级联系机制模式
    7.6 三级联系机制
    7.7 四级联系机制模式
    7.8 维护地理范围的联系机制模式
    7.9 维护灵活的地址构成成分的联系机制模式
    7.10 其他常见的联系机制数据
    7.11 模式总结
    7.12 参考文献
    第8章 业务规则:如何工作
    8.1 这类模式的重要意义?
    8.2 本章有哪些内容?
    8.3 什么是业务规则?
    8.4 二级规则模式
    8.5 三级业务规则模式
    8.6 维护当事人角色的业务规则
    8.7 模式总结
    8.8 参考文献
    第9章 使用模式
    9.1 本章有哪些内容?
    9.2 场景
    9.3 原型数据模型及作用域声明
    9.4 应用数据模型
    9.5 企业数据模型
    9.6 数据仓库模型
    9.7 主数据管理数据模型
    9.8 关于使用模型的其他想法
    9.9 参考文献
    **0章 社会化模式
    10.1 社会化模式的意义
    10.2 本章有哪些内容?
    10.3 使用和社会化这些模式的经验
    10.4 什么使得社会化模式与众不同?
    10.5 理解动机——为什么有些人使用而有些人却不使用这些模式?
    10.6 为模式的使用制定一个明确的、共同的令人信服的愿景
    10.7 建立信任,让人们可以信赖模式
    10.8 管理模式的抵抗和/或冲突
    10.9 关于社会化模式的其他意见
    10.10 参考文献
    索引

    读书笔记

    使用ef6创建oracle数据库的实体模型遇到的问题及解决方案

    解决方案中的数据层项目最初使用的是oracle 11g + ef5 创建的实体模型,在分页时遇到了skip参数为0报错的问题,没有找到相关资料。

    于是决定升级到ef6,在oracle官网中得知,Oracle Data Provider for .NET in ODAC 12c Release 3 开始支持ef6(https://docs.oracle.com/cd/E56485_01/win.121/e55744/release_changes.htm#CIHGIAEG)

    安装步骤:

    1.安装odac,下载地址http://www.oracle.com/technetwork/database/windows/downloads/utilsoft-087491.html

    2.数据层项目的.net版本改成4.5以上,使用nuget安装 EntityFramework 6 +Oracle.ManagedDataAccess +Oracle.ManagedDataAccess.EntityFramework,都安装最新稳定版。

    安装后app.config和web.config都会被加入如下配置项

    <configSections>
     <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
     <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
     <section name="oracle.manageddataaccess.client" type="OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess, Version=4.122.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342" />
     </configSections>
     <entityFramework>
     <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
      <parameters>
      <parameter value="mssqllocaldb" />
      </parameters>
     </defaultConnectionFactory>
     <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
      <provider invariantName="Oracle.ManagedDataAccess.Client" type="Oracle.ManagedDataAccess.EntityFramework.EFOracleProviderServices, Oracle.ManagedDataAccess.EntityFramework, Version=6.122.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342" />
     </providers>
     </entityFramework>
     <system.data>
     <DbProviderFactories>
      <remove invariant="Oracle.ManagedDataAccess.Client" />
      <add name="ODP.NET, Managed Driver" invariant="Oracle.ManagedDataAccess.Client" description="Oracle Data Provider for .NET, Managed Driver" type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.122.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342" />
     </DbProviderFactories>
     </system.data>
     <runtime>
     <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
      <publisherPolicy apply="no" />
      <assemblyIdentity name="Oracle.ManagedDataAccess" publicKeyToken="89b483f429c47342" culture="neutral" />
      </dependentAssembly>
     </assemblyBinding>
     </runtime>
     <oracle.manageddataaccess.client>
     <version number="*">
      <dataSources>
      <dataSource alias="SampleDataSource" descriptor="(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL))) " />
      </dataSources>
     </version>
     </oracle.manageddataaccess.client>

    注意 entityFramework和 system.data中的版本号,nuget安装后自动生成的一般没问题,我在安装之前把网上找的资料里的配置项放在里面了,但是版本号不一致,程序启动不了,一直没注意到版本号,

    找了好一会才发现是这两个地方。

    3.然后就可以添加实体模型了。此时如果vs中显示找不到与ef6 兼容的实体框架提供程序,需要将配置文件中的ef节的 <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />删掉或者注释掉,保存后再重新尝试添加实体模型。

    添加实体模型时需要先不选择数据库里的表,即生成空模型,然后打开edmx文件,在模型浏览器中选中实体模型,在属性中把DDL生成模板改成SSDLToOracle.tt (VS),数据库生成工作流改成Generate Oracle Via T4 (TPT).xaml (VS)。

    这么做的原因是如果DDL生成模板使用默认项SSDLToOracle.tt ,oracle中的number(1,0)和number(2,0)类型的字段生成的实体属性的类型会是int16,然后运行的时候报映射不匹配的错误(错误代码2019)。

    报错原因是oracle从ODP.NET 12.1.0.2开始为ef6采用新的默认类型映射,官网说明https://docs.oracle.com/cd/E56485_01/win.121/e55744/entityDataTypeMapping.htm#ODPNT8303,其中的 New Default Mappings 段。

    SSDLToOracle.tt模板生成的属性的类型是number(1,0)对应boolean,number(2,0)对应byte,这个对应关系与新映射是一致的。

    附上ef5的映射

    Oracle Type Default EDM Type Custom EDM Type
    Number(1,0) Int16 bool
    Number(2,0) to Number(3,0) Int16 byte
    Number(4,0) Int16 Int16
    Number(5,0) Int16 Int32
    Number(6,0) to Number(9,0) Int32 Int32
    Number(10,0) Int32 Int64
    Number(11,0) to Number(18,0) Int64 Int64
    Number(19,0) Int64 Decimal

    总结

    以上所述是小编给大家介绍的使用ef6创建oracle数据库的实体模型遇到的问题及解决方案,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对码农之家网站的支持!

    上一篇:数据即未来:大数据王者之道  下一篇:Spark大数据分析:核心概念、技术及实践

    展开 +

    收起 -

     
    数据模型 相关电子书
    关于数据模型的学习笔记
    网友NO.782838

    PHP面向对象之领域模型+数据映射器实例(分析)

    这里要说明一下 因为本人比较懒 博客中相关文章的内容更多的是对深入PHP面向对象、模式与实践一书中代码的整理和简单注解方便自己日后复习和参考, 对相关内容感兴趣的初学的朋友建议请先阅读原文。此处的内容只能当成一种学习的补充和参考。谢谢! 因原书中领域模型+数据映射器的示例代码是连贯在一起的 所以这里就整理在一起了。 简单介绍一下我的看法,从数据库操作的角度看领域模型主要是操作数据表中的单条记录的而数据映射器是操作整个数据表的数据的。 按原文的解释数据映射器是一个负责将数据库数据映射到对象的类,而领域模型象征着真实世界里项目中的各个参与者,它在数据中通常表现为一条记录。 废话不多说,代码和注解如下: 与领域模型相关的三个数据表结构分别为venue(场所)、space(空间)、event(事件)。 create table 'venue' ( 'id' int(11) not null auto_increment, 'name' text, primary key ('id'))create table 'space' ( 'id' int(11) not null auto_increment, 'venue' int(11) default null, 'name' text, primary key ('id'))create table 'event' ( 'id' int(11) not null auto_increment, 'space' int(11) default null, 'start' mediumtext, 'duration' int(11) default null, 'name' text, primary key ('id')) //领域模型(这里只建了一个Venue类用于理解)namespace woo\domain;abstract class DomainObject{ //抽象基类 pri……

    网友NO.339819

    Spring jdbc中数据库操作对象化模型的实例详解

    Spring jdbc中数据库操作对象化模型的实例详解 Spring Jdbc数据库操作对象化 使用面向对象方式表示关系数据库的操作,实现一个线程安全可复用的对象模型,其顶级父类接口RdbmsOperation. SqlOperation继承该接口,实现数据库的select, update, call等操作。 1.查询接口:SqlQuery 1) GenericSqlQuery, UpdatableSqlQuery, MappingSqlQueryWithParameter 2) SqlUpdate, BatchSqlUpdate 3) SqlCall 1) 将数据库操作select封装为对象,查询操作的基类是SqlQuery,所有查询都可以使用该类表示,Spring JDBC还提供了一些更容易使用的MappingSqlQueryWithParameters和MappingSqlQuery用于将结果集映射为Java对象,查询对象类还提供了两个扩展UpdatableSqlQuery和SqlFunction; 2) 即增删改操作,将数据库操作insert 、update、delete封装为对象,增删改基类是SqlUpdate,当然还提供了BatchSqlUpdate用于批处理; 3) 存储过程及函数调用封装为对象,基类是SqlCall类,提供了StoredProcedure实现。 数据库连接 JDBC: spring jdbc通过DataSource控制数据库连接即通过其实现子类获取。 1) DriverManagerDataSource: 简单封装DriverManager.getConnection() 2) SingleConnectionDataSource: 内部封装一个链接,不会关闭不能再多线程使用,用于测试 3) LazyConnectionDataSourceProxy: 封装DataSource,用于延迟获取数据库连接,只有在真正创建Statement等时才获取连接,因此再说实际……

    网友NO.673056

    thinkphp利用模型通用数据编辑添加和删除的实例代码

    数据添加函数实例 //数据添加 public function newData($strName="") { if (IS_POST) { //如果用户提交数据 $model = D("$strName"); if (!$model-create()){ // 如果创建失败 表示验证没有通过 输出错误提示信息 $info = array( "info"="{$model-getError()}", "status"="n", ); $this-ajaxReturn($info,'json'); exit(); } else { if ($model-add()){ $info = array( "info"="恭喜操作成功!", "status"="y", ); $this-ajaxReturn($info,'json'); } else { $info = array( "info"="操作失败!", "status"="n", ); $this-ajaxReturn($info,'json'); } } } } 数据更新函数实例 //数据更新 public function update($strName="") { if (IS_POST) { //如果用户提交数据 $model = D("$strName"); if (!$model-create()){ // 如果创建失败 表示验证没有通过 输出错误提示信息 $info = array( "info"="{$model-getError()}", "status"="n", ); $this-ajaxReturn($info,'json'); exit(); } else { if ($model-save()){ $info = array( "info"="恭喜操作成功!", "status"="y", ); $this-ajaxReturn($info,'json'); } else { $info = array( "info"="操作失败!", "status"="n", ); $this-ajaxReturn($info,'json'); } } } } 数据删除函数实例 //数据删除 public function delete($strNmae = '') { if(IS_POST) { $id = I('post.id'); if(!empty($id)) { //用户提交数据删除当前id $model = D("$strName"); $result = $model-delete("$id"); if($result !== false){ $info = array( "info"="操作成功!", "status"="y", ); $this-ajaxReturn($info,'json'); }else{ $info = arr……

    Copyright 2018-2020 xz577.com 码农之家

    电子书资源由网友、会员提供上传,本站记录提供者的基本信息及资源来路

    鸣谢: “ 码小辫 ” 公众号提供回调API服务、“ 脚本CDN ”提供网站加速(本站寻求更多赞助支持)

    版权投诉 / 书籍推广 / 赞助:520161757@qq.com

    上传资源(网友、会员均可提供)

    查看最新会员资料及资源信息