精华内容
下载资源
问答
  • IMS,层次模型,IBM在1969年做出来的 CODASYL,网状模型,DBTG在1970年做出来的 特点: 支持三级模式 存取路径表示联系 独立DDL 导航DML 二、第二代数据库系统 E.F.Codd——1970年 1980,新开发系统都是关系...

    第一节:数据库技术发展概述

    一、第一代数据库系统
    代表:
    IMS,层次模型,IBM在1969年做出来的
    CODASYL,网状模型,DBTG在1970年做出来的
    特点:
    支持三级模式
    存取路径表示联系
    独立的DDL
    导航的DML
    二、第二代数据库系统
    E.F.Codd——1970年
    1980后,新开发的系统都是关系型
    三、第三代数据库系统
    OODB特征:
    支持数据管理、对象管理和知识管理
    保持或继承RDB的技术
    开放性

    第二节:数据仓库与数据挖掘

    一、从数据库到数据仓库
    数据仓库:面向主题、集成性、数据非易失性、时变性
    重要概念:粒度、分割和维
    粒度:数据单位中保存数据的细化或综合程度的级别。 细化程度越高,粒度级就越小
    分割:按不同的粒度去分割
    维:观察事物的特点角度,考虑数据的一类属性
    二、数据挖掘技术
    功能:
    概念描述
    关联分析
    分类与预测
    聚类
    孤立点检测
    趋势和演变分析

    展开全文
  • 3.6.3 重复以上步骤直到客户同意你的模型 95 3.7 最佳实践 95 3.8 总结 96 第4章 规范化过程 97 4.1 为什么要规范化 98 4.1.1 消灭重复数据 98 4.1.2 避免编写不必要的代码 98 4.1.3 给表瘦身 98 4.1.4 最大...
  • 之前一直从事一般WEB系统开发,过很多项目了,现在主要做的一项工作就是与客户沟通需求,设计出数据模型出来,并设计出主要功能页面。 从来没过金融方面业务,于是从百度文库中找来一个第三方支付...
    之前一直从事一般的WEB系统的开发,做过很多的项目了,现在主要做的一项工作就是与客户沟通需求后,设计出数据模型出来,并设计出主要的功能页面。
    从来没做过金融方面的业务,于是从百度文库中找来一个第三方支付平台的数据库结构,进行分析,用通俗的语言总结出来,以掌握金融系统的业务设计。

    百度文库的地址是:http://wenku.baidu.com/view/48f79722964bcf84b9d57bf1

    一、基础平台核心库
    1.账户:首先无论个人、企业在你平台上都有一个账户表,必须的。记录账记的基本信息,想想你的银行活期存折上的信息吧。当然5个金额要注意到,总的,可提现的,冻结的....但是有几个字段我不懂,计算积数,上期总金额等等。是的,我从来没注意过银行的活期是怎么计息的,利率在变,金额在变,怎么计?查了一下
    银行按季结息,每季度末月的20日为结息日。
    每次变动以头计算*持续天数=计算积数,当然从上期总金额开始算。
    当季利息就是积数*计息日的日利率(年利/360,不是365是因为银行规定)
    表上还有一个安全控制值,是MD5+BASE64,这个就是散列值,防止重要数据发生变化,摘要信息嘛。BASE64就是字符都变成基本的,这都可以理解。
    这个,这张表就理解清楚了!!!

    2.冻结、注销流水表:没啥好讲的,就是对某个账户的这种操作的日志一样的信息。

    3.账户资金变动流水与冻结流水表:类似于每一次存钱,取钱的记录一样,当然实现上变动类型比较多。记录下每笔变动前后的总金额之类的。特别要注意有一个关联流水ID。比如我们充值,总金额发生了变化,但到底是怎么充的,哪个银行卡充的,成功没有,等等详细的信息这个表里都没有,却是记录在后面的充值交易流水表中。
    似乎这样会有很多冗余,但这么设计是正确的,记录的角度不同,具体的每一笔变动的情况当然非常重要,但账户角度关注总金额变化。

    4.交易流水相关表:这里的9张表就是9种交易的详细信息,每一笔交易都会在相关的表中记录下来。里面的详细情况如果有需要分析的后面再补了。

    5.会计账务:说到会计,可能我们做软件的就不太清楚了,感觉有点专业。我也没学过,但我们分析下这几张表,同样也可以掌握基本的业务。
    先说说后面两张表:科目明细与凭证明细,这个名字就知道是具体的一项业务的信息了。
    (后面有备注:每种具体的业务,只操作凭证表,并设置业务关联。然后自动登记2个科目,2个金额到科目明细表。日终,汇总科目明细表到到科目日记账表。)
    说的比较明确了,业务中只操作凭证,凭证会关联交易流水的ID的。比如一笔资金的变化,对于交易双方一增一减,必然产业两个科目的变化记录,记录在科目明细表中。
    另外的科目类型、凭证类型、科目凭证对应关系都可以认为是维护的字典项目。科目从名称上理解就是一种分类方式。凭证理解为凭据、证件之类的单据吧。正好我手头上有前几天取钱的单据:中国邮储银行的通用凭证,一般是打印出来给客户签字的,可能有几联,大家都留一份,为啥要有纸质的东西?因为要有人工签名的纸头证据啊,全都电子化还不现实。
    至于科目日记账:就是每天的产生的科目的统计啊,为什么每天?这个是要求吧。
    至于试算平衡表:就是账户变化与科目两个不同维度变动的对比,两个角度的数据应该是一致的,应该是同一个事务产生的不同的记录方式数据的平衡。有对比才能及时发现问题,所以也应该是标准的做法。金融平台容不得半点马虎。

    6.系统参数:这里就是记录各流水表的流水号的,当天不断累加的纯数字。因为当天从头开始,不能用Oracle的seq,不多讲了。

    7.渠道:这个渠道从名称上来说就是一个个交易的通道,具体指啥呢,要搞搞清楚?我发现后面3.11有渠道类型与渠道管理,比如有 网银、同城、银企等5个类型。更重要的表是:渠道管理表,里面重要的字段是“支付渠道为本平台分配的商户号”,还有URL,IP,队列,类名等信息。
    后面还有一个渠道账户对应表,渠道与交易类型共同PK,而且还有一个帐号,那么渠道就是本平台在其它银行之类的平台上的商户号,我平台是人家某银行的一个商户。而且还可以开几个帐号。类似于我个人是某银行一个客户,我名下有几个银行账号,有借记卡,有信用卡等,以前还可以开几个信用卡。而对平台来说,开的帐号与交易类型是相关的。
    继续在网上【知乎】查了些资料:
    “银行接口指的是银行等提供的技术接口。
    银行通道是对银行接口的封装,并包含了诸如具体合作银行及通道的详细信息。例如同为某家商业银行的某个支付接口,非总对总的情况,支付公司可能同时在北京分行、上海分行接入。
    支付渠道是对银行通道的业务封装,包含了诸如通道成本、最低商户费率等信息。
    支付产品是第三方支付对外提供的产品,例如快捷支付。
    支付渠道路由的设计,一般采用规则引擎或类似方案(例如基于groovy),如果单纯只是满足企业当前的业务需要,用最丑陋的If-Else方式也能搞定。”
    再找到一些资料:
    备付金又称为沉淀资金或准备金,第三方支付备付金是指存在第三方支付平台,为即将产生的支付交易,在银行储备的准备金。买家付款到确认收货、卖家收款总隔着几个交易日,那些“沉淀”在第三方支付机构账户上的资金就是“备付金”。后来又查到备付金只能有一个监管银行,多个合作银行,貌似政策还在微调,因为为了备付金的安全。备付金分存管(跨行)、收付(同行内收付)、汇缴(汇总一下,每日清0,转到收付账户)账户,银行渠道路由系统是所有第三方支付核心的系统之一。
    (这里有https://www.zhihu.com/question/34352468,灰色细胞的解释清楚)
    比如小明在网上看中了一款产品,使用了支付宝进行付款,在使用支付宝付款的时候,选择的是小明的招商银行卡,付款成功后,小明的招行账户会扣除资金,同时支付宝会将支付成功的信息告诉卖家,卖家发货。在第二天,招商银行会将小明被扣除的资金结算给支付宝,这个时候这笔钱是由银行结算给支付宝在招商银行开设的对公账户。而小明由于还没有确认收货,或者可能一周之后才会确认收货,那么在这段时间,这笔钱会一直停留在支付宝的对公账户中。(后面本人发挥:)等确认收货了,收货的方如果只到其支付宝账号,那只要记账就行了,都是在备付金中,但如果收货方要现金,就从最做优的路由方案结果中,转给对方银行账号上,一般是与对方相同的同行内的收付账号转收货方账号,支付宝此行的收付账号有头寸的话。)

    好了,到这里渠道概念差不多了。有些交易的过程也非常清楚了。另外一些概念,如清分clearing,清算settlement,结算Settlement of Accounts轧差neting,头寸position也简单知道一下,英文也许更好理解。
    上面写那很多,下面真正来分析表的设计:
    252,253的渠道参数、返回码就是一些配置项,不多说了。251是清算指令,就是发起一个渠道的清算任务,就是一个渠道的某业务的支付场次基本情况记录,一个命令的执行情况,不涉及金额。254是渠道交易流水,既然是流水,就是具体的一个个渠道的交易信息了,一般是与支付交易流水密切相关的,只要不是平台内部的交易,就要和渠道打交道,反正信息是非常全,字段也非常的多。255是批量交易的渠道的批次表,批量交易时是很多笔的情况。里面有个settleDate居然叫轧差日期,我反正很注重命名问题,名字准确可减少了大脑中的运算,可以更好的考虑更复杂的事情。257,258渠道对账表与不平明细表,是指渠道双方对账,借贷是不是正确,从字段看不出是不是天天对账的,不过是通过文件来对账的。明细就是发现不平,要记录是哪一个交易,如果是批量的,记录下批次,可能要人工处理。我在实际中知道有人报名马拉松,出现支付成功,却网站说不成功,是系统没做好,这个可以看成是事务,不过要人工回滚或者人工补正确。
    2.5.(12.13.14)分别是同城对账指令、对账表与对账明细。指令中PK是流水,那就是每一次对账都是有一个指令的。对账表与明细中都有笔数与金额数,差别从PK中可以看出。对账表对应每一个对账报文,一天内可以多个报文。明细中多了业务编号,就是按业务产生成明细,并不是细到每一个业务。15/16的下载回应与回应明细,貌似是给企业查看一天内的情况的,总的和明细的情况。应该不复杂,没有数据与页面说明也就不细究了。

    (写到这里,家里网络崩溃,已经在写基金了,ITEYE页面刷新了,居然不是后台提交,也没恢复自动保存的内容,晕死....另外保存后会回到查看页面,一般应该是继续编辑吧,或者用不同的按钮...)


    二、系统管理数据库
    这里的系统维护、权限等与其它平台的设计差别不大,就不多研究了。
    重点是账户:
    结算账户余额表,就是我平台的结算账户在各个合作银行的账户上的钱数情况。
    子账户类型,前面有提到平台客户可以有多个子账户,有类型就有可能互转,另外子账户会与客户的银行卡绑定,那么客户银行卡的信息有一个表,绑定有一个表;绑定变化也有一个流水表。客户的银行账号也要进行验证,验证就有一个记录,还可能一天多次验证,都记录在一个表中。
    3.4.8是代付绑定收款账户,某个平台的客户根据与平台的协议,由平台代付水电煤,付到公用事业公司的相关银行账户上去。就要有一个记录。当然具体的一笔业务是另外记录的。
    客户信息:这个就是平台上的客户的情况,当然客户有个人,还有企业。文章中说是不是考虑两个分开的表,因为字段差别比较大,也是有可能的。
    商户信息也是要记录的。
    其它的客户级别,开通的业务,相关的协议等、手续费、限额啥的就不说了,比较简单。
    看一下3.11.7(记录快付通结算户之间的资金调拨指令)与3.12.3/4这三个表,结算户就是前面提到的平台在各合作银行开的收付账号,监管户就是备付金分存管账号。头寸不足时就要调拨。

    三、基金相关数据库
    先看一个概念:赎回是从理财产品或者基金转入你的帐户余额 提现是从帐户余额转到你的银行卡。
    开户信息:在基金业务平台开立的只能是基金子账户。
    业务表:申购、撤销与赎回是三个核心的业务,所以有三个相关交易的表,都与基金定单有关,说明是真正的基金购买行为了。
    还有一个充提交易表,是有关子账户与银行账户之间的关系,应该只是指基金业务子账户吧。这个与基金本身操作关系不大。
    基金交易一般有个T+*的问题,当日15点交易所下班的问题。
    【基金赎回资金过户是T+2,也就是说,今天(T日)你申请赎回,今天收市后(就是今天晚上)基金管理公司把所有的赎回申请进行统计计算,再经过托管人的复核之后,上报至[中登公司];在明天白天(T+1日),中登公司那帮犊子们上班之后,就会把头一天(T日)接收到的申购赎回申请统计,然后进行资金过帐,说白了就钱该给谁就给谁,基金份额该给谁给谁;然后等后天(T+2日),如果你是赎回,那这天钱都到你帐户了;如果你是申购,那基金份额就到你帐户了。】
    其实基金这边也比较简单的,客户有一个基金子账户。基金管理公司能支取的是自有资金,不能支取客户受托的资金用于其他用途。客户受托的资金存放于专户,只能用于股票、债券买卖。这个与第三方支付公司的备付金一样被严格监管的。
    另外指指令表,显示是与监管银行之间的交易指令、包括成功笔数,成功金额等信息,莫非基金的申购就是直接由平台打到监管银行中的基金公司的专用托管账户上?这个也不难,有人告诉一下就知道了。刚才顺便查了一下:监管、托管、存管银行的关系。有一个说监管是监督机构,存管保证的客户的信息与监管的账户之前的资金流动,而不会被基金公司挪用。

    四、总结:
    从网上的一个数据库设计,基本上可以学习到上面相当多的金融相关业务及其关系,配合网上的其它一些文章,差不多理解了支付业务。不过一些文章看的出政策变化是很多的,必然影响业务系统。

    因为以前从没了解过相关的系统,所以分析难免有出错与不足的地方,欢迎指正!!
    展开全文
  • 当然最终使用patch时候还需要在测试环境测试,因为测试数据库是和生产数据库环境最接近。(上面说克隆cloning是一种将applications layer和database layer完全复制一种方法。)所以,当你拥有这三个数据库...
  • 之前一直从事一般WEB系统开发,过很多项目了,现在主要做的一项工作就是与客户沟通需求,设计出数据模型出来,并设计出主要功能页面。 从来没过金融方面业务,于是从百度文库中找来一个第三方支付...

    原文地址:http://herman-liu76.iteye.com/blog/2330767

       之前一直从事一般的WEB系统的开发,做过很多的项目了,现在主要做的一项工作就是与客户沟通需求后,设计出数据模型出来,并设计出主要的功能页面。


       从来没做过金融方面的业务,于是从百度文库中找来一个第三方支付平台的数据库结构,进行分析,用通俗的语言总结出来,以掌握金融系统的业务设计。



       百度文库的地址是:http://wenku.baidu.com/view/48f79722964bcf84b9d57bf1



       一、基础平台核心库

       1.账户:首先无论个人、企业在你平台上都有一个账户表,必须的。记录账记的基本信息,想想你的银行活期存折上的信息吧。当然5个金额要注意到,总的,可提现的,冻结的....但是有几个字段我不懂,计算积数,上期总金额等等。是的,我从来没注意过银行的活期是怎么计息的,利率在变,金额在变,怎么计?查了一下

       银行按季结息,每季度末月的20日为结息日。

       每次变动以头计算持续天数=计算积数,当然从上期总金额开始算。

       当季利息就是积数
    计息日的日利率(年利/360,不是365是因为银行规定)

       表上还有一个安全控制值,是MD5+BASE64,这个就是散列值,防止重要数据发生变化,摘要信息嘛。BASE64就是字符都变成基本的,这都可以理解。

       这个,这张表就理解清楚了!!!



       2.冻结、注销流水表:没啥好讲的,就是对某个账户的这种操作的日志一样的信息。



       3.账户资金变动流水与冻结流水表:类似于每一次存钱,取钱的记录一样,当然实现上变动类型比较多。记录下每笔变动前后的总金额之类的。特别要注意有一个关联流水ID。比如我们充值,总金额发生了变化,但到底是怎么充的,哪个银行卡充的,成功没有,等等详细的信息这个表里都没有,却是记录在后面的充值交易流水表中。

         似乎这样会有很多冗余,但这么设计是正确的,记录的角度不同,具体的每一笔变动的情况当然非常重要,但账户角度关注总金额变化。



       4.交易流水相关表:这里的9张表就是9种交易的详细信息,每一笔交易都会在相关的表中记录下来。里面的详细情况如果有需要分析的后面再补了。



       5.会计账务:说到会计,可能我们做软件的就不太清楚了,感觉有点专业。我也没学过,但我们分析下这几张表,同样也可以掌握基本的业务。

        先说说后面两张表:科目明细与凭证明细,这个名字就知道是具体的一项业务的信息了。

    (后面有备注:每种具体的业务,只操作凭证表,并设置业务关联。然后自动登记2个科目,2个金额到科目明细表。日终,汇总科目明细表到到科目日记账表。)

        说的比较明确了,业务中只操作凭证,凭证会关联交易流水的ID的。比如一笔资金的变化,对于交易双方一增一减,必然产业两个科目的变化记录,记录在科目明细表中。

        另外的科目类型、凭证类型、科目凭证对应关系都可以认为是维护的字典项目。科目从名称上理解就是一种分类方式。凭证理解为凭据、证件之类的单据吧。正好我手头上有前几天取钱的单据:中国邮储银行的通用凭证,一般是打印出来给客户签字的,可能有几联,大家都留一份,为啥要有纸质的东西?因为要有人工签名的纸头证据啊,全都电子化还不现实。

        至于科目日记账:就是每天的产生的科目的统计啊,为什么每天?这个是要求吧。

        至于试算平衡表:就是账户变化与科目两个不同维度变动的对比,两个角度的数据应该是一致的,应该是同一个事务产生的不同的记录方式数据的平衡。有对比才能及时发现问题,所以也应该是标准的做法。金融平台容不得半点马虎。



        6.系统参数:这里就是记录各流水表的流水号的,当天不断累加的纯数字。因为当天从头开始,不能用Oracle的seq,不多讲了。



        7.渠道:这个渠道从名称上来说就是一个个交易的通道,具体指啥呢,要搞搞清楚?我发现后面3.11有渠道类型与渠道管理,比如有 网银、同城、银企等5个类型。更重要的表是:渠道管理表,里面重要的字段是“支付渠道为本平台分配的商户号”,还有URL,IP,队列,类名等信息。

        后面还有一个渠道账户对应表,渠道与交易类型共同PK,而且还有一个帐号,那么渠道就是本平台在其它银行之类的平台上的商户号,我平台是人家某银行的一个商户。而且还可以开几个帐号。类似于我个人是某银行一个客户,我名下有几个银行账号,有借记卡,有信用卡等,以前还可以开几个信用卡。而对平台来说,开的帐号与交易类型是相关的。

        继续在网上【知乎】查了些资料:

    “银行接口指的是银行等提供的技术接口。

    银行通道是对银行接口的封装,并包含了诸如具体合作银行及通道的详细信息。例如同为某家商业银行的某个支付接口,非总对总的情况,支付公司可能同时在北京分行、上海分行接入。

    支付渠道是对银行通道的业务封装,包含了诸如通道成本、最低商户费率等信息。

    支付产品是第三方支付对外提供的产品,例如快捷支付。

    支付渠道路由的设计,一般采用规则引擎或类似方案(例如基于groovy),如果单纯只是满足企业当前的业务需要,用最丑陋的If-Else方式也能搞定。”

        再找到一些资料:

        备付金又称为沉淀资金或准备金,第三方支付备付金是指存在第三方支付平台,为即将产生的支付交易,在银行储备的准备金。买家付款到确认收货、卖家收款总隔着几个交易日,那些“沉淀”在第三方支付机构账户上的资金就是“备付金”。后来又查到备付金只能有一个监管银行,多个合作银行,貌似政策还在微调,因为为了备付金的安全。备付金分存管(跨行)、收付(同行内收付)、汇缴(汇总一下,每日清0,转到收付账户)账户,银行渠道路由系统是所有第三方支付核心的系统之一。

       (这里有https://www.zhihu.com/question/34352468,灰色细胞的解释清楚)

        比如小明在网上看中了一款产品,使用了支付宝进行付款,在使用支付宝付款的时候,选择的是小明的招商银行卡,付款成功后,小明的招行账户会扣除资金,同时支付宝会将支付成功的信息告诉卖家,卖家发货。在第二天,招商银行会将小明被扣除的资金结算给支付宝,这个时候这笔钱是由银行结算给支付宝在招商银行开设的对公账户。而小明由于还没有确认收货,或者可能一周之后才会确认收货,那么在这段时间,这笔钱会一直停留在支付宝的对公账户中。(后面本人发挥:)等确认收货了,收货的方如果只到其支付宝账号,那只要记账就行了,都是在备付金中,但如果收货方要现金,就从最做优的路由方案结果中,转给对方银行账号上,一般是与对方相同的同行内的收付账号转收货方账号,支付宝此行的收付账号有头寸的话。)



        好了,到这里渠道概念差不多了。有些交易的过程也非常清楚了。另外一些概念,如清分clearing,清算settlement,结算Settlement of Accounts轧差neting,头寸position也简单知道一下,英文也许更好理解。

        上面写那很多,下面真正来分析表的设计:

        252,253的渠道参数、返回码就是一些配置项,不多说了。251是清算指令,就是发起一个渠道的清算任务,就是一个渠道的某业务的支付场次基本情况记录,一个命令的执行情况,不涉及金额。254是渠道交易流水,既然是流水,就是具体的一个个渠道的交易信息了,一般是与支付交易流水密切相关的,只要不是平台内部的交易,就要和渠道打交道,反正信息是非常全,字段也非常的多。255是批量交易的渠道的批次表,批量交易时是很多笔的情况。里面有个settleDate居然叫轧差日期,我反正很注重命名问题,名字准确可减少了大脑中的运算,可以更好的考虑更复杂的事情。257,258渠道对账表与不平明细表,是指渠道双方对账,借贷是不是正确,从字段看不出是不是天天对账的,不过是通过文件来对账的。明细就是发现不平,要记录是哪一个交易,如果是批量的,记录下批次,可能要人工处理。我在实际中知道有人报名马拉松,出现支付成功,却网站说不成功,是系统没做好,这个可以看成是事务,不过要人工回滚或者人工补正确。

        2.5.(12.13.14)分别是同城对账指令、对账表与对账明细。指令中PK是流水,那就是每一次对账都是有一个指令的。对账表与明细中都有笔数与金额数,差别从PK中可以看出。对账表对应每一个对账报文,一天内可以多个报文。明细中多了业务编号,就是按业务产生成明细,并不是细到每一个业务。15/16的下载回应与回应明细,貌似是给企业查看一天内的情况的,总的和明细的情况。应该不复杂,没有数据与页面说明也就不细究了。



       (写到这里,家里网络崩溃,已经在写基金了,ITEYE页面刷新了,居然不是后台提交,也没恢复自动保存的内容,晕死....另外保存后会回到查看页面,一般应该是继续编辑吧,或者用不同的按钮...)





       二、系统管理数据库

       这里的系统维护、权限等与其它平台的设计差别不大,就不多研究了。

       重点是账户:

       结算账户余额表,就是我平台的结算账户在各个合作银行的账户上的钱数情况。

       子账户类型,前面有提到平台客户可以有多个子账户,有类型就有可能互转,另外子账户会与客户的银行卡绑定,那么客户银行卡的信息有一个表,绑定有一个表;绑定变化也有一个流水表。客户的银行账号也要进行验证,验证就有一个记录,还可能一天多次验证,都记录在一个表中。

       3.4.8是代付绑定收款账户,某个平台的客户根据与平台的协议,由平台代付水电煤,付到公用事业公司的相关银行账户上去。就要有一个记录。当然具体的一笔业务是另外记录的。

       客户信息:这个就是平台上的客户的情况,当然客户有个人,还有企业。文章中说是不是考虑两个分开的表,因为字段差别比较大,也是有可能的。

       商户信息也是要记录的。

       其它的客户级别,开通的业务,相关的协议等、手续费、限额啥的就不说了,比较简单。

       看一下3.11.7(记录快付通结算户之间的资金调拨指令)与3.12.3/4这三个表,结算户就是前面提到的平台在各合作银行开的收付账号,监管户就是备付金分存管账号。头寸不足时就要调拨。

     

       三、基金相关数据库

       先看一个概念:赎回是从理财产品或者基金转入你的帐户余额 提现是从帐户余额转到你的银行卡。

       开户信息:在基金业务平台开立的只能是基金子账户。

       业务表:申购、撤销与赎回是三个核心的业务,所以有三个相关交易的表,都与基金定单有关,说明是真正的基金购买行为了。

       还有一个充提交易表,是有关子账户与银行账户之间的关系,应该只是指基金业务子账户吧。这个与基金本身操作关系不大。

       基金交易一般有个T+*的问题,当日15点交易所下班的问题。

      【基金赎回资金过户是T+2,也就是说,今天(T日)你申请赎回,今天收市后(就是今天晚上)基金管理公司把所有的赎回申请进行统计计算,再经过托管人的复核之后,上报至[中登公司];在明天白天(T+1日),中登公司那帮犊子们上班之后,就会把头一天(T日)接收到的申购赎回申请统计,然后进行资金过帐,说白了就钱该给谁就给谁,基金份额该给谁给谁;然后等后天(T+2日),如果你是赎回,那这天钱都到你帐户了;如果你是申购,那基金份额就到你帐户了。】

       其实基金这边也比较简单的,客户有一个基金子账户。基金管理公司能支取的是自有资金,不能支取客户受托的资金用于其他用途。客户受托的资金存放于专户,只能用于股票、债券买卖。这个与第三方支付公司的备付金一样被严格监管的。

       另外指指令表,显示是与监管银行之间的交易指令、包括成功笔数,成功金额等信息,莫非基金的申购就是直接由平台打到监管银行中的基金公司的专用托管账户上?这个也不难,有人告诉一下就知道了。刚才顺便查了一下:监管、托管、存管银行的关系。有一个说监管是监督机构,存管保证的客户的信息与监管的账户之前的资金流动,而不会被基金公司挪用。



        四、总结:

        从网上的一个数据库设计,基本上可以学习到上面相当多的金融相关业务及其关系,配合网上的其它一些文章,差不多理解了支付业务。不过一些文章看的出政策变化是很多的,必然影响业务系统。

       

        因为以前从没了解过相关的系统,所以分析难免有出错与不足的地方,欢迎指正!!

    转载于:https://www.cnblogs.com/jpfss/p/8085773.html

    展开全文
  • 我们得想一想是不是只有设计图完全出来后我们才能相关开发昵!结果不然,我们只需要知道大概要什么功能,如何去分析功能昵,我想法是OOP思想,针对对象去分析,以对象为单位来功能也就是说我们每一个...

      引言:在创业公司,很多情况下需求都不是很明白,因为在初衷都只是想法,没有一个具体的东西。为了成本考虑我们如果同步开发昵!我们得想一想是不是只有设计图完全出来后我们才能做相关的开发昵!结果不然,我们只需要知道大概要做什么功能,如何去分析功能昵,我的想法是OOP思想,针对对象去分析,以对象为单位来做功能也就是说我们的每一个功能(增,删,查,改)都以对象去做,我是以尚餐网之前的功能分析去参考如下:

    1.分析数据结构创建数据库

      

    创建权限中的角色表

    CREATE TABLE [dbo].[tbl_Role](
    [RoleID] [int] IDENTITY(1,1) NOT NULL,
    [RoleName] [nvarchar](50) NOT NULL,
    CONSTRAINT [PK_tbl_Role] PRIMARY KEY CLUSTERED
    (
    [RoleID] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成员角色编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_Role', @level2type=N'COLUMN',@level2name=N'RoleID'
    GO
    /****** Object: Table [dbo].[tbl_Membership] Script Date: 02/22/2013 09:31:20 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO

    创建权限中的成员
    CREATE TABLE [dbo].[tbl_Membership](
    [MembershipID] [int] IDENTITY(1,1) NOT NULL,
    [MembershipAccount] [nvarchar](50) NOT NULL,
    [MemberShipPassword] [nvarchar](50) NOT NULL,
    [MemberShipState] [int] NOT NULL,
    [MemberShipCreate] [datetime] NOT NULL,
    CONSTRAINT [PK_tbl_Membership] PRIMARY KEY CLUSTERED
    (
    [MembershipID] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成员编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_Membership', @level2type=N'COLUMN',@level2name=N'MembershipID'
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成员账号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_Membership', @level2type=N'COLUMN',@level2name=N'MembershipAccount'
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成员密码' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_Membership', @level2type=N'COLUMN',@level2name=N'MemberShipPassword'
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成员状态' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_Membership', @level2type=N'COLUMN',@level2name=N'MemberShipState'
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'创建时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_Membership', @level2type=N'COLUMN',@level2name=N'MemberShipCreate'
    GO
    /****** Object: Table [dbo].[tbl_ShopInfo] Script Date: 02/22/2013 09:31:20 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO

    创建商家信息
    CREATE TABLE [dbo].[tbl_ShopInfo](
    [ShopInfoID] [int] IDENTITY(1,1) NOT NULL,
    [MembershipID] [int] NOT NULL,
    [ShopInfoName] [nvarchar](100) NOT NULL,
    CONSTRAINT [PK_tbl_ShopInfo] PRIMARY KEY CLUSTERED
    (
    [ShopInfoID] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'商家信息编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_ShopInfo', @level2type=N'COLUMN',@level2name=N'ShopInfoID'
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成员编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_ShopInfo', @level2type=N'COLUMN',@level2name=N'MembershipID'
    GO
    /****** Object: Table [dbo].[tbl_UserInfo] Script Date: 02/22/2013 09:31:20 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO

    创建用户信息
    CREATE TABLE [dbo].[tbl_UserInfo](
    [UserInfoID] [int] IDENTITY(1,1) NOT NULL,
    [MembershipID] [int] NOT NULL,
    [UserInfoName] [nvarchar](100) NOT NULL,
    CONSTRAINT [PK_tbl_UserInfo] PRIMARY KEY CLUSTERED
    (
    [UserInfoID] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'用户信息编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_UserInfo', @level2type=N'COLUMN',@level2name=N'UserInfoID'
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成员编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_UserInfo', @level2type=N'COLUMN',@level2name=N'MembershipID'
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'用户信息名字' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_UserInfo', @level2type=N'COLUMN',@level2name=N'UserInfoName'
    GO
    /****** Object: Table [dbo].[tbl_MembershipInRole] Script Date: 02/22/2013 09:31:20 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO

    创建权限中的成员与角色
    CREATE TABLE [dbo].[tbl_MembershipInRole](
    [RoleID] [int] NOT NULL,
    [MembershipID] [int] NOT NULL
    ) ON [PRIMARY]
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成员编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_MembershipInRole', @level2type=N'COLUMN',@level2name=N'RoleID'
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成员编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_MembershipInRole', @level2type=N'COLUMN',@level2name=N'MembershipID'
    GO
    /****** Object: Table [dbo].[tbl_Validation] Script Date: 02/22/2013 09:31:20 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE TABLE [dbo].[tbl_Validation](
    [ValidationID] [int] IDENTITY(1,1) NOT NULL,
    [ValidationName] [nvarchar](50) NOT NULL,
    [ValidationType] [int] NOT NULL,
    [ShopInfoID] [int] NULL,
    [UserInfoID] [int] NULL
    ) ON [PRIMARY]
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'验证编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_Validation', @level2type=N'COLUMN',@level2name=N'ValidationID'
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'验证名字' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_Validation', @level2type=N'COLUMN',@level2name=N'ValidationName'
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'验证类型' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_Validation', @level2type=N'COLUMN',@level2name=N'ValidationType'
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'商家编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_Validation', @level2type=N'COLUMN',@level2name=N'ShopInfoID'
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'用户编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_Validation', @level2type=N'COLUMN',@level2name=N'UserInfoID'
    GO
    /****** Object: Table [dbo].[tbl_ShopSet] Script Date: 02/22/2013 09:31:20 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO

    创建商家设置
    CREATE TABLE [dbo].[tbl_ShopSet](
    [ShopSetID] [int] IDENTITY(1,1) NOT NULL,
    [ShopInfoID] [int] NOT NULL,
    [ShopSetName] [nvarchar](100) NOT NULL,
    CONSTRAINT [PK_tbl_ShopSet] PRIMARY KEY CLUSTERED
    (
    [ShopSetID] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'商家设置编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_ShopSet', @level2type=N'COLUMN',@level2name=N'ShopSetID'
    GO
    /****** Object: Table [dbo].[tbl_ShopPhoto] Script Date: 02/22/2013 09:31:20 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO

    创建商家相册
    CREATE TABLE [dbo].[tbl_ShopPhoto](
    [ShopPhotoID] [int] IDENTITY(1,1) NOT NULL,
    [ShopInfoID] [int] NOT NULL,
    [ShopPhotoName] [nvarchar](100) NOT NULL,
    CONSTRAINT [PK_tbl_ShopPhoto] PRIMARY KEY CLUSTERED
    (
    [ShopPhotoID] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'商家相册编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_ShopPhoto', @level2type=N'COLUMN',@level2name=N'ShopPhotoID'
    GO
    /****** Object: Table [dbo].[tbl_Comment] Script Date: 02/22/2013 09:31:20 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO

    创建权限中的评论
    CREATE TABLE [dbo].[tbl_Comment](
    [CommentID] [int] IDENTITY(1,1) NOT NULL,
    [CommentTitle] [nvarchar](100) NOT NULL,
    [ShopInfoID] [int] NOT NULL,
    [UserInfoID] [int] NULL,
    CONSTRAINT [PK_tbl_Comment] PRIMARY KEY CLUSTERED
    (
    [CommentID] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'评论' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_Comment', @level2type=N'COLUMN',@level2name=N'CommentID'
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'评论标题' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_Comment', @level2type=N'COLUMN',@level2name=N'CommentTitle'
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'商家编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_Comment', @level2type=N'COLUMN',@level2name=N'ShopInfoID'
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'用户编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_Comment', @level2type=N'COLUMN',@level2name=N'UserInfoID'
    GO
    /****** Object: Table [dbo].[tbl_Order] Script Date: 02/22/2013 09:31:20 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO

    创建权限中的订单
    CREATE TABLE [dbo].[tbl_Order](
    [OrderID] [int] NOT NULL,
    [OrderNo] [nvarchar](100) NOT NULL,
    [ShopInfoID] [int] NOT NULL,
    [UserInfoID] [int] NULL,
    [OrderPeople] [nvarchar](50) NULL,
    [OrderTelephone] [nvarchar](30) NULL,
    CONSTRAINT [PK_tbl_Order] PRIMARY KEY CLUSTERED
    (
    [OrderID] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    GO
    /****** Object: Table [dbo].[tbl_ShopDishType] Script Date: 02/22/2013 09:31:20 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO

    创建权限中的菜品分类
    CREATE TABLE [dbo].[tbl_ShopDishType](
    [ShopDishTypeID] [int] IDENTITY(1,1) NOT NULL,
    [ShopInfoID] [int] NOT NULL,
    [ShopDishTypeName] [nvarchar](100) NOT NULL,
    CONSTRAINT [PK_tbl_ShopDishType] PRIMARY KEY CLUSTERED
    (
    [ShopDishTypeID] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'商家菜品分类编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_ShopDishType', @level2type=N'COLUMN',@level2name=N'ShopDishTypeID'
    GO
    /****** Object: Table [dbo].[tbl_ShopDishInfo] Script Date: 02/22/2013 09:31:20 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO

    创建权限中的菜品
    CREATE TABLE [dbo].[tbl_ShopDishInfo](
    [ShopDishInfoID] [int] IDENTITY(1,1) NOT NULL,
    [ShopDishTypeID] [int] NOT NULL,
    [ShopDishInfoName] [nvarchar](100) NULL,
    CONSTRAINT [PK_tbl_ShopDishInfo] PRIMARY KEY CLUSTERED
    (
    [ShopDishInfoID] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'商家菜品信息编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_ShopDishInfo', @level2type=N'COLUMN',@level2name=N'ShopDishInfoID'
    GO
    /****** Object: Table [dbo].[tbl_OrderDetails] Script Date: 02/22/2013 09:31:20 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO

    创建订单详情
    CREATE TABLE [dbo].[tbl_OrderDetails](
    [OrderDetailsID] [int] IDENTITY(1,1) NOT NULL,
    [OrderID] [int] NOT NULL,
    [ShopDishInfoID] [int] NOT NULL,
    CONSTRAINT [PK_tbl_OrderDetails] PRIMARY KEY CLUSTERED
    (
    [OrderDetailsID] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'订单详情' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_OrderDetails', @level2type=N'COLUMN',@level2name=N'OrderDetailsID'
    GO
    EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'商家具体菜编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'tbl_OrderDetails', @level2type=N'COLUMN',@level2name=N'ShopDishInfoID'
    GO

    大家可以看到,我只是把数据结构及关系做了!有人一定会问哪以后数据表中的字段一变,程序的模型不是也要变吗?哪不是很麻烦嘛!

    二.EF Power Tool创建模型直接映射数据库

      之前的文章我已经介绍过EF Power Too哪我在说说吧!

      安装Entity Framework Power Tools Beta 3特别说一下这个小工具的功能:

      1) 按照现有数据库结构,生成Code First POCO class、DbContext class和相应的mapping class。

      2) 以designer模式或XML模式查看POCO class对应的Entity Data Model (edmx) 。

      3) 查看Entity Data Model所对应的DDL。

      4) 生成EF Generated View提高EF性能。

      具体步骤如下:

      1) 创建项目

      

      2)使用EF Power Tool

      

      3)EF工具关联数据库,形成映射关系

      

      4)结果

      

    转载于:https://www.cnblogs.com/17say/archive/2013/02/22/2921794.html

    展开全文
  • 实务9 安装oracle软件并创建完数据库后,服务内oraclesid显示 实务9 “启动”而不是“已启动” 实务10 安装oracle时,报告错误“thrown when the ip address of a host 实务10 cannot be determined” 实务11 ...
  • 实务9 安装oracle软件并创建完数据库后,服务内oraclesid显示 实务9 “启动”而不是“已启动” 实务10 安装oracle时,报告错误“thrown when the ip address of a host 实务10 cannot be determined” 实务11 ...
  • 在创建了一个模型对象准备进行数据库的迁移,发现使用命令:python manage.py db init 进行初始化时直接是启动项目,看了半天找不到问题,又去看了以前写代码。 解决: (1)把以前使用app.run()启动方式改成...
  • 使用UML进行系统建模,用面向对象的方法来分析系统,然后用可视化的模型将信息用标准的图形直观地显示出来,以此建立面向对象地系统模型.我们使用UML来进行系统开发地分析,以帮助开发人员了解系统功能与系统流程。 2.1...
  •  《循序渐进oracle:数据库管理、优化与备份恢复》在分析实例过程中,兼顾深度与广度,不仅对实际问题现象、产生原因和相关原理进行了深入浅出讲解,更主要是,结合实际应用环境,提供了一系列解决问题...
  • 对充血模型的疑问

    2011-01-28 11:27:16
    只是中午吃饭时脑子那么想了一下,然后回来就尝试写了个单表增删改查,我个人举得无论是单表还是多表最后数据库出来的无非是个二叉表,而其中一条记录应该对应一个java类 多条记录则是该java类List...
  • 最近时间依旧紧张,所以进度有限,等到这周过去,大部分课就会结课了,数学模型的大作业也应该完了,那时进度应该会快起来了吧…… 先来接续上一篇博客内容,关于分窗操作办法,我确实想到了,利用线程锁将...
  • 数据库打交道,我习惯先设计接口,然后慢慢用HQL或者Criteria实现每个表具体动作,引入Spring再将实现类注入到各个接口,放在Spring容器中供上层调用。每个表总有一些通用增删改查操作需要编写,为了提高...
  • 原标题:程序数据集上多维分析【摘要】当数据源不是来自文件和 SQL,而是由程序现计算出来的,这种情况在许多 BI 系统中都会出现,BI 系统自己管理数据模型,把数据库挡在后面,不会直接开放 SQL,更不会提供文件...
  • 这种情况在许多BI系统中都会出现,BI系统自己管理数据模型,把数据库挡在后面,不会直接开放SQL,更不会提供文件让你直接访问,访问数据都要通过程序接口(比如JavaAPI或Webservice)——这样一来,想要对...
  • 前端自己再造新的模型(好的后端才能有好的前端) - 重复的工作交给脚本去,这样你能省掉大量的时间 嗯,目前就这些,非常欢迎大家能一起探讨一下~ 献丑了~</p><p>该提问来源于...
  • 这里插播一下,既然考虑采用DDD,应该先出来CDM,然后java OO与CDM对应,剩下才是设计物理模型和持久层 3. 传统意义上TDD指是unit test。背后很重要一个思想是先写测试有助于写出clean code that...
  • 7)查询学生表数据,将所有年龄小于22岁,学历为“大专”,学生姓名和学号显示出来答案: select name,studentCardNo from student where age”大专”; 8)查询学生表数据,查询所有信息,列出...
  • 这是个小型系统,从投入人力,财力与物力来讲是非常小,发布出去之需要注册域名就可以了,从节省人力方面,可以让管理人员从繁与复杂工作中解脱出来更多工作。 2.2.3. 管理可行性 有IP地址、用户名...
  • 2、将框架搭建出来,前后端该有文件夹创建出来 3、定义模型,并且映射到数据库(要完成基础代码才可以映射到数据中) 先初始化python manage.py db init 在映射到数据库python manage.py db migrate 在提交到数据库...
  • 什么是析构函数 就是实例被销毁时候自动执行也就是最后执行 什么时候用到析构函数关闭数据库 和关闭游标 因为他会执行完程序自动执行私有方法类一个模板,一个模型。对象根据模板造出来的具体东西实例根据...
  • 【摘要】当数据源不是来自文件和 SQL,而是由程序现计算出来的,这种情况在许多 BI 系统中都会出现,BI 系统自己管理数据模型,把数据库挡在后面,不会直接开放 SQL,更不会提供文件让你直接访问,访问数据都要通过...
  • 当数据源不是来自文件和 SQL,而是由程序现计算出来的,这种情况在许多 BI 系统中都会出现,BI 系统自己管理数据模型,把数据库挡在后面,不会直接开放 SQL,更不会提供文件让你直接访问,访问数据都要通过程序接口...
  • 10.10日PHP MAC

    2018-10-11 14:51:00
    视图(模板)部分(文件)单独拿出来后不再分离m: 模型(逻辑)部分:分成两部分:1.连接数据库类(文件): (执行sql语句返回结果集)2.模型类(文件): (引入基础模型类文件(因为基础模型类是模型父级类...
  • 工业时代提出 <em>SPA</em> 模型随着 <em>NODE</em> 兴起、服务端、各种工具、容器飞速发展、前端 <em>MVC MVVM</em> 模式逐渐清晰、前端涌现了相当一批优秀开源项目: 包管理: <strong><em>...
  • 其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持,Spring管理,管理Struts和Hibernate。 WebStorage HTML新增的本地存储解决...

空空如也

空空如也

1 2 3 4 5 ... 8
收藏数 142
精华内容 56
关键字:

数据库做出来后的模型