• [置顶]信息发布系统 Jquery+MVC架构开发(2) 在EA下进行数据库设计


    数据库设计工具我们依然采用Enterprise Architect 7.5 汉化版

    在这里可以稍微介绍下EA,个人比较喜欢Enterprise Architect ,这个工具比较类似Rational Rose

    网上有破解版本,它可以支持从需求分析到设计部署的全过程建模

    上问我们用了它的用例建模,下面我们开始使用它的数据库建模:

    下面是ea的操作界面:

    我们双击右边model下的Data model,选择左边Class下的table,出现新建table:

    这里一个关键的地方是记得选择数据库:我这里选择的是sql server 2005,输入数据名称后,选择Table Detail:

    选择列/变量:

    为表定义列名和数据类型,以及约束,主外键。

    为表和表之间添加关系,可以选择操作的链接小图标(第一个):

    然后双击新建的关联(就是上边刚建好的关系)选择:

    选择主外键以及阶元(就是1对多之类的)。

    注意Source role表示主表,Target Role代表从表

    下面是我定义好的数据库:

     

    建模完成后,就可以生成SQL 语句,建库了:

    首先选中所有的实体,如下:

    进入如下的窗口:

    选择生成主/外键,生成索引/约束(你可以根据自己的需要生成),然后保存:

    生成的sql 如下:

    CREATE TABLE UserInfo (

        UserId int NOT NULL,

        IsAdmin tinyint NOT NULL,

        UserName nvarchar(50) NOT NULL,

        CreateDate datetime,

        ModifyDate datetime

    )

    ;

     

    CREATE TABLE Info (

        InfoId  int NOT NULL,

        infoname nvarchar(200) NOT NULL,

        InfoContent text,

        TypeId int,

        PictureUrl nvarchar(4000),

        CreateId int,

        CreateDate datetime,

        ModifyDate datetime,

        AttachMentUrl nvarchar(4000),

        IsTop tinyint

    )

    ;

     

    CREATE TABLE InfoType (

        Typeid int NOT NULL,

        TypeName nvarchar(100),

        CreateId int,

        IsTop tinyint,

        CreateDate datetime,

        ModifyDate datetime

    )

    ;

     

     

    ALTER TABLE UserInfo  ADD CONSTRAINT PK_User

        PRIMARY KEY CLUSTERED (UserId)

    ;

     

    ALTER TABLE Info ADD CONSTRAINT PK_Info

        PRIMARY KEY CLUSTERED (InfoId)

    ;

     

    ALTER TABLE InfoType ADD CONSTRAINT PK_InfoType

        PRIMARY KEY CLUSTERED (Typeid)

    ;

     

     

    ALTER TABLE InfoType

        ADD CONSTRAINT UQ_InfoType_TypeName UNIQUE (TypeName)

    ;

    然后在sql server 里面新建一个数据库,把上面生成的sql 执行就ok了

    这样我们就完成了数据库设计.

  • 相关阅读:
    Linux 系统启动过程
    Linux启动U盘制作
    JSONP 教程
    JSON 使用
    JSON.stringify()
    JSON.parse()
    Apache模块开发指南-APR池
    [C++基础]goto的用法
    atexit()函数
    c++ good books
  • 原文地址:https://www.cnblogs.com/encounter/p/2188760.html
Copyright © 2020-2023  润新知