精华内容
下载资源
问答
  • 数据库表结构

    千次阅读 2018-08-20 16:28:54
    当前研发工作中经常出现因数据库表、数据库表字段格式不规则而影响开发进度的问题,在后续开发使用原来数据库表时,也会因为数据库表的可读性不够高,表字段规则不统一,造成数据查询,数据使用效率低的问题,所以有...

    当前研发工作中经常出现因数据库表、数据库表字段格式不规则而影响开发进度的问题,在后续开发使用原来数据库表时,也会因为数据库表的可读性不够高,表字段规则不统一,造成数据查询,数据使用效率低的问题,所以有必要整理出一套合适的数据库表字段命名规范来解决优化这些问题。

    本文是一篇包含了数据库命名、数据库表命名、数据库表字段命名及SQL语言编码的规范文档,针对研发中易产生的问题和常见错误做了一个整理和修改,为日后涉及到数据库相关的研发工作做好准备。

     

     

    数据库规范化设计要求

    一、表中避免空列

    减少数据库处理记录的复杂性,

    1、空列数目少的时候,可以设置默认值。

    2、空列数目多的时候,可以设置单独一张表存储。

    二、表不应该有重复的值或列

    创建字典表

    三、唯一的标识某一条数据

    ID  

    如有必要添加 行号 进行排序显示管理

     

    四、数据库对象统一的前缀名

    t_department 

    五、尽量只存单一实体类型数据

    一个表中的字段不要太复杂 ,能分开的单独分开建表。

     

     


    数据库相关命名规范

     

    一、数据库命名规范

    采用26个英文字母(区分大小写)和0-9的自然数(经常不需要)加上下划线'_'组成,命名简洁明确,多个单词用下划线'_'分隔,一个项目一个数据库,多个项目慎用同一个数据库

     

    二、数据库表命名规范

    2.1数据表命名规范

    (1)采用26个英文字母(区分大小写)和0-9的自然数(经常不需要)加上下划线'_'组成,命名简洁明确,多个单词用下划线'_'分隔

    (2)全部小写命名,禁止出现大写

    (3)禁止使用数据库关键字,如:name,time ,datetime,password等(user ) 不然sql语句 写成 select * from [User]

    (4)表名称不应该取得太长(一般不超过三个英文单词)

    (5)表的名称一般使用名词或者动宾短语

    (6)用单数形式表示名称,例如,使用 employee,而不是 employees

    明细表的名称为:主表的名称+字符dtl(detail缩写)

    例如:采购定单的名称为:po_order,则采购定单的明细表为:po_orderdtl 

    (7)表必须填写描述信息(使用SQL语句建表时)

     

    2.2命名规范

    ①模块_+功能点  示例:alllive_log   alllive_category

    ②功能点  示例:live   message

    ③通用表  示例:all_user

     

    2.3待优化命名示例

    ①冗余:

    错误示例:yy_alllive_video_recomment    yy_alllive_open_close_log

    说明:去除项目名,简化表名长度,去”yy_”

     

    ②相同类别表命名存在差异,管理性差

    错误示例:yy_all_live_category    yy_alllive_comment_user

    说明:去除项目名,统一命名规则,均为”yy_alllive_”开头即可

     

    ③命名格式存在差异

    错误示例:yy_showfriend    yy_user_getpoints    yy_live_program_get

    说明:去除项目名,统一命名规则,动宾短语分离动宾逻辑顺序统一

     

    三、数据库字段命名规范

    3.1字段命名规范

    (1)采用26个英文字母(区分大小写)和0-9的自然数(经常不需要)加上下划线'_'组成,命名简洁明确,多个单词用下划线'_'分隔

    (2)全部小写命名,禁止出现大写

    (3)字段必须填写描述信息

    (4)禁止使用数据库关键字,如:name,time ,datetime password 等

    (5)字段名称一般采用名词或动宾短语

    (6)采用字段的名称必须是易于理解,一般不超过三个英文单词

    (7)在命名表的列时,不要重复表的名称

    例如,在名employe的表中避免使用名为employee_lastname的字段

    (8)不要在列的名称中包含数据类型

    (9)字段命名使用完整名称,禁止缩写

     

    3.2命名规范

    ①名词  示例:user_id    user_name    sex

    ②动宾短语  示例:is_friend   is_good

     

    3.3待优化命名示例

    ①大小写规则不统一

    错误示例:user_id    houseID

    说明:使用统一规则,修改为”user_id”,”house_id”

     

    ②加下划线规则不统一

    错误示例:username    userid    isfriend    isgood

    说明:使用下划线进行分类,提升可性,方便管理,修改为”user_name”,”user_id”,”is_friend”,”is_good”

     

    ③字段表示不明确

    错误示例:uid    pid

    说明:使用完整名称,提高可读性,修改为”user_id”,”person_id”

     

    3.4字段类型规范

    (1)所有字段在设计时,除以下数据类型timestamp、image、datetime、smalldatetime、uniqueidentifier、binary、sql_variant、binary 、varbinary外,必须有默认值,字符型的默认值为一个空字符值串’’,数值型的默认值为数值0,逻辑型的默认值为数值0

    (2)系统中所有逻辑型中数值0表示为“假”,数值1表示为“真”,datetime、smalldatetime类型的字段没有默认值,必须为NULL

    (3)用尽量少的存储空间来存储一个字段的数据

    使用int就不要使用varchar、char,

    用varchar(16)就不要使varchar(256)

    IP地址使用int类型

    固定长度的类型最好使用char,例如:邮编(postcode)

    能使用tinyint就不要使用smallint,int

    最好给每个字段一个默认值,最好不能为null

    (4)用合适的字段类型节约空间

    字符转化为数字(能转化的最好转化,同样节约空间、提高查询性能)

    避免使用NULL字段(NULL字段很难查询优化、NULL字段的索引需要额外空间、NULL字段的复合索引无效)

    少用text类型(尽量使用varchar代替text字段)

     

    3.5数据库中每个字段的规范描述 

       (1)尽量遵守第三范式的标准(3NF) 

         表内的每一个值只能被表达一次 

         表内的每一行都应当被唯一的标示 

         表内不应该存储依赖于其他键的非键信息

    (2)如果字段事实上是与其它表的关键字相关联而未设计为外键引用,需建索引

    (3)如果字段与其它表的字段相关联,需建索引

    (4)如果字段需做模糊查询之外的条件查询,需建索引

    (5)除了主关键字允许建立簇索引外,其它字段所建索引必须为非簇索引

     

    四、SQL语言编码规范 

    4.1大小写规范 

    (1)所有关键字必须大写,如:INSERT、UPDATE、DELETE、SELECT及其子句,IF……ELSE、CASE、DECLARE等

    (2)所有函数及其参数中除用户变量以外的部分必须大写

    (3)在定义变量时用到的数据类型必须小写

     

    4.2注释 

    注释可以包含在批处理中,在触发器、存储过程中包含描述性注释将大大增加文本的可读性和可维护性,本规范建议: 

    (1)注释以英文为主,实际应用中,发现以中文注释的SQL语句版本在英文环境中不可用,为避免后续版本执行过程中发生某些异常错误,建议使用英文注释

    (2)注释尽可能详细、全面创建每一数据对象前,应具体描述该对象的功能和用途,传入参数的含义应该有所说明,如果取值范围确定,也应该一并说明,取值有特定含义的变量(如boolean类型变量),应给出每个值的含义

    (3)注释语法:单行注释、多行注释 

    单行注释:注释前有两个连字符(--)对变量、条件子句可以采用该类注释

    多行注释:符号之间的内容为注释内容,对某项完整的操作建议使用该类注释

    (4)注释简洁,同时应描述清晰

    (5)函数注释: 

    编写函数文本--如触发器、存储过程以及其他数据对象--时,必须为每个函数增加适当注释,该注释以多行注释为主,主要结构如下: 

    CREATE PROCEDURE sp_xxx 

     

     

     

     数据库表设计需要满足

    1、功能需求

    2、性能需求

    3、扩展性需求

     

     

    参考:

    数据库设计规范化的 5 个要求

    数据库表设计的几条准则

    数据库表结构设计浅谈

     

     

    数据库表及字段命名规范(一)

    展开全文
  • MySQL 查看数据库表结构 修改表结构 修改字段 修改约束条件 修改表名 删除数据库表 查看数据库表结构 可以使用 describe 语句来查看数据表结构,代码如下: describe users; 在控制台中输入上述语句后的执行...

    MySQL 查看数据库表结构 修改表结构 修改字段 修改约束条件 修改表名 删除数据库表

    查看数据库表结构

    • 可以使用 describe 语句来查看数据表结构,代码如下:

      describe users;
      
    • 在控制台中输入上述语句后的执行结果如下所示:

      在这里插入图片描述

    修改表结构

    • 在实际应用中,当发现某个表的结构不满足要求时,可以使用 alter table 语句来修改表的结构,包括修改表的名称、添加新的字段、删除原有的字段、修改字段类型、索引及约束,还可以修改存储引擎及字符集等。修改表的语法格式如下:

      alter table 表名 action[,action]...;
      
    • 其中,每个动作(action)是对表所做的修改,MySQL 支持一条 alter table 语句带多个动作,中间用逗号隔开。下面详细介绍一下几种常用的修改

    • 1、修改字段

      • (1)添加新字段

        • 向表里添加新字段可以通过在 action 语句中使用 add 关键字来实现,语法格式如下:

          alter table 表名 add 新字段名 数据类型 [约束条件][first|after 字段名];
          
        • 向表中添加新字段时通常需要指定新字段在表中的位置,如果没有指定 first 或者 after 关键字,则在表的末尾添加新字段,否则在指定位置添加新字段

        • 例如,为用户表 users 添加一个 address 字段,数据类型为 varchar(50),非空约束,可以使用如下的 SQL 语句:

          alter table users add address varchar(50) not null;
          
        • 若要在 users 表中的 sex 字段后增加一个 phone 字段,数据类型为 varchar(20),非空约束,则对应的 SQL 语句如下:

          alter table users add phone varchar(20) not null after sex;
          
        • 添加字段后的 users 表的结构如下图所示

          在这里插入图片描述

      • (2)修改字段

        • 如果只需要修改字段的数据类型,则使用 change 或者 modify 子句,其语法如下:

          alter table 表名 change 原字段名 新字段名 数据类型;
          alter table 表名 modify 字段名 数据类型;
          
        • 例如,要修改 users 表中的 phone 字段,将数据类型由 varchar(20) 改为 int,并设置默认值为 0,下面两种方法是等价的:

          alter table users change phone phone int unsigned default 0;
          alter tablr users modify phone int unsigned default 0;
          
        • 如果需要修改字段的字段名(以及数据类型)这时就只能使用 change 子句了。例如,将 users 表中的 phone 字段修改为 telephone 字段,且数据类型修改为 varchar(20),则可以使用如下 SQL 语句:

          alter table users change phone telephone varchar(20);
          
      • (3)删除字段

        • 删除表字段的语法格式如下:

          alter table 表名 drop 字段名;
          
        • 例如,将 users 表中的 address 字段删除,则可以使用如下 SQL 语句:

          alter table users drop address;
          
    • 2、修改约束条件

      • (1)添加约束条件

        • 向表的某个字段添加约束条件的语法格式如下:

          alter table 表名 add constraint 约束名 约束类型(字段名);
          
        • 例如,向用户表 users 的 telephone 添加唯一性约束,且约束名为 phone_unique,可以使用如下 SQL 语句:

          alter table users add constraint phone_unique unique(telephone);
          
        • 添加了上述约束条件后,users 表的结构如下所示:

          在这里插入图片描述

        • 如果要向订单表 orders 的 uid 字段添加外键约束,且约束名为 fk_orders_users,可以使用如下 SQL 语句:

          alter table users add constraint fk_orders_users foreign key(uid) references users(uid);
          
      • (2)删除约束条件

        • 若要删除表的主键约束,其语法格式如下:

          alter table 表名 drop primary key;
          
        • 例如,要删除订单表 orders 的主键约束,可以使用如下 SQL 语句:

          alter table orders drop primary key;
          
        • 若要删除表的外键约束,其语法格式如下:

          alter table 表名 drop foreign key 外键约束名;
          
        • 例如,要删除订单表 orders 的外键约束,可以使用如下 SQL 语句:

          alter table drop foreign key fk_orders_users;
          
        • 若要删除字段的唯一性约束,则只需要删除该字段的唯一性索引即可,其语法格式如下:

          alter table 表名 drop index 唯一索引名;
          
        • 例如,要删除用户表 users 的 telephone 字段的唯一性索引,可以使用如下 SQL 语句:

          alter table users drop index phone_unique;
          
    • 3、修改表名

      • 修改表名的语法格式如下:

        alter table 原表名 rename to 新表名;
        
      • 还可以使用 rename table 语句,其语法格式如下:

        rename table 原表名 to 新表名;
        
      • 例如,将 users 表的表名修改为 tbl_users,可以使用以下代码:

        alter table users rename to tbl_users;
        rename table users to tbl_users;
        
    • 4、修改表的其他设置

      • 修改表的其他设置,常用的操作如修改存储引擎、默认字符集等。例如,修改 users 表的存储引擎和默认字符集:

        alter table users engine=MyISAM;
        alter table users default charset=utf8;
        

    删除数据库表

    • 要删除数据库表,可以使用 drop table 语句实现,例如删除 users 表:

      drop table users;
      
    • 在默认情况下,当试图删除一个不存在的表时,系统会报错。例如,以下的情况(orders 表不存在):

      drop table orders;
      
    • 系统会出现 Unknown table “orders” 的错误信息,为避免这种错误,可以使用如下语句:

      drop table if exists orders;
      
    展开全文
  • 商品管理数据库表结构功能结构订单管理数据库表结构功能结构营销管理数据库表结构功能结构内容管理数据库表结构功能结构用户管理数据库表结构功能结构注意:部分功能暂未实现,只是对表结构进行了设计,商品管理、...

    mall是一套电商系统,后台系统主要包括商品管理、订单管理、营销管理(运营管理+促销管理)、内容管理、用户管理等模块,本文主要对这些模块的数据库表结构及功能做大概的介绍。

    商品管理

    数据库表结构

    d03d0f0bbe87b6f00e3f57fd7dcb9338.png

    功能结构

    cc245142eb4684aadde86b70b469e0e4.png

    订单管理

    数据库表结构

    a9db1b1254a4301dd94f51c036f4bc04.png

    功能结构

    bf329d68690893bdb351918d3afc7f09.png

    营销管理

    数据库表结构

    0e3149aee69edbd240f2d56f97092742.png

    功能结构

    657f62cccb685d9ac14f1597a7a04197.png

    内容管理

    数据库表结构

    8d24140a85bd2631e98acab9366f956d.png

    功能结构

    52990f0c322347d5325b1f54dbc0f120.png

    用户管理

    数据库表结构

    77ddde678862e24d4e937b802e138b5d.png

    功能结构

    98c958262c8eafb0258fd529860edf25.png

    注意:部分功能暂未实现,只是对表结构进行了设计,商品管理、订单管理、营销管理大部分功能均已实现。

    相关资料

    PowerDesigner数据库设计文件

    • 商品管理:https://github.com/macrozheng/mall-learning/blob/master/document/pdm/mall_pms.pdm

    • 订单管理:https://github.com/macrozheng/mall-learning/blob/master/document/pdm/mall_oms.pdm

    • 营销管理:https://github.com/macrozheng/mall-learning/blob/master/document/pdm/mall_sms.pdm

    • 内容管理:https://github.com/macrozheng/mall-learning/blob/master/document/pdm/mall_cms.pdm

    • 用户管理:https://github.com/macrozheng/mall-learning/blob/master/document/pdm/mall_ums.pdm

    MindMaster功能思维导图

    • 商品管理:https://github.com/macrozheng/mall-learning/blob/master/document/mind/pms.emmx

    • 订单管理:https://github.com/macrozheng/mall-learning/blob/master/document/mind/oms.emmx

    • 营销管理:https://github.com/macrozheng/mall-learning/blob/master/document/mind/sms.emmx

    • 内容管理:https://github.com/macrozheng/mall-learning/blob/master/document/mind/cms.emmx

    • 用户管理:https://github.com/macrozheng/mall-learning/blob/master/document/mind/ums.emmx

    使用到的工具

    • PowerDesigner:http://powerdesigner.de/

    • MindMaster:http://www.edrawsoft.cn/mindmaster

    推荐阅读

    • mall在Linux环境下的部署(基于Docker Compose)

    • mall在Linux环境下的部署(基于Docker容器)

    • mall在Windows环境下的部署

    • mall整合SpringBoot+MyBatis搭建基本骨架

    • mall整合Swagger-UI实现在线API文档

    • mall整合SpringSecurity和JWT实现认证和授权(一)

    • mall整合Elasticsearch实现商品搜索

    • mall整合Mongodb实现文档操作

    • mall整合RabbitMQ实现延迟消息

    • mall整合OSS实现文件上传


    4b35989db6616811d708fdd3ade73beb.png

    欢迎关注,点个在看

    展开全文
  • Jira - 数据库表结构

    千次阅读 2020-04-07 17:31:58
    Jira - 数据库表结构 Max.Bai 2020-04 记录用到的数据库表结构(mysql) 表名 存储内容 关键字段 备注 project 项目主表 ID pname 项目名称 URL LEAD DESCRIPTION ...

    Jira - 数据库表结构

    Max.Bai

    2020-04

     

    记录用到的数据库表结构(mysql)

    CSDN 表格编辑时是对的,保存后表格就变形了,全部错行了,后面两列是空的就表示字段,表名那一行后面两列是有内容的。

    我在QQ文档保存了一份,可去查看【腾讯文档】Jira数据库表结构  https://docs.qq.com/sheet/DZE5tZUNRcUh3UWJW

    表名 存储内容 关键字段 备注
    project 项目主表 ID  
    pname  项目名称
    URL  
    LEAD  
    DESCRIPTION  
    pkey  项目KEY
    pcounter  
    ASSIGNEETYPE  
    AVATAR  
    ORIGINALKEY  
    PROJECTTYPE  
    project_key 项目key表 ID  
    PROJECT_ID  项目ID
    PROJECT_KEY 项目KEY
    projectrole 项目角色 ID  
    NAME  
    DESCRIPTION  
    projectroleactor 项目角色关联关系 ID  
    PID 项目ID  
    PROJECTROLEID  项目角色ID
    ROLETYPE  角色类型 atlassian-group-role-actor、atlassian-user-role-actor
    ROLETYPEPARAMETER  具体用户或用户组
    issuetype issue类型 ID  
    SEQUENCE  
    pname 类型名称
    pstyle  
    DESCRIPTION  
    ICONURL  
    AVATAR  
    issuestatus issue状态 ID  
    SEQUENCE  
    pname 状态名称
    DESCRIPTION  
    ICONURL  
    STATUSCATEGORY  
    priority issue优先级 ID  
    SEQUENCE  
    pname 优先级名称
    DESCRIPTION  
    resolution issue解决结果 ID  
    SEQUENCE  
    pname 解决结果名称
    DESCRIPTION  
    issuetypescreenscheme issue的scheme名称 ID  
    NAME  
    DESCRIPTION  
    issuetypescreenschemeentity issue的scheme详情 ID  
    ISSUETYPE  
    SCHEME issuetypescreenscheme的ID  
    FIELDSCREENSCHEME fieldscreenscheme的ID  
    fieldscreen 字段的screen ID  
    NAME  
    DESCRIPTION  
    fieldscreenscheme 字段的screenscheme ID  
    NAME  
    DESCRIPTION  
    fieldscreenschemeitem 字段的screenschemeitem ID  
    OPERATION  
    FIELDSCREEN fieldscreen的ID  
    FIELDSCREENSCHEME fieldscreenscheme的ID  
    fieldscreentab   ID  
    NAME  
    DESCRIPTION  
    SEQUENCE  
    FIELDSCREEN fieldscreen的ID  
    jiraissue JIRA的issue ID  
    pkey 空字段
    issuenum 和project表pkey字段 组合成issue key
    PROJECT project的ID 关联project表ID
    REPORTER 报告人 报告人
    ASSIGNEE 指派人 经办人
    CREATOR 创建人
    issuetype issuetype的ID 关联issuetype表ID
    SUMMARY 标题
    DESCRIPTION 描述
    ENVIRONMENT  
    PRIORITY 关联priority表ID
    RESOLUTION 关联表resolution表ID
    issuestatus issuestatus的ID 关联issuestatus表ID
    CREATED 创建时间
    UPDATED 更新时间
    DUEDATE  
    RESOLUTIONDATE 解决时间
    VOTES  
    WATCHES  
    TIMEORIGINALESTIMATE  
    TIMEESTIMATE  
    TIMESPENT  
    WORKFLOW_ID 工作流id
    SECURITY  
    FIXFOR  
    workflowscheme   ID  
    NAME  
    DESCRIPTION  
    workflowschemeentity   ID  
    SCHEME workflowscheme的ID  
    WORKFLOW  
    issuetype  
    jiraworkflows JIRA的工作流 ID  
    workflowname  
    creatorname  
    DESCRIPTOR  
    ISLOCKED  
    configurationcontext   ID  
    PROJECTCATEGORY  
    PROJECT  
    customfield  
    FIELDCONFIGSCHEME  
    worklog 登录工时表 ID  
    issueid issueid  关联jiraissue表ID
    AUTHOR 添加工时作者
    grouplevel  
    rolelevel  
    worklogbody 添加工时备注
    CREATED 添加时间
    UPDATEAUTHOR 修改人
    UPDATED 修改时间
    STARTDATE 工时开始时间
    timeworked 工时时长,单位秒
    CUSTOMFIELD 自定义字段表 ID  
    cfkey  
    CUSTOMFIELDTYPEKEY  
    CUSTOMFIELDSEARCHERKEY  
    cfname 自定义字段名
    DESCRIPTION 描述
    defaultvalue 默认值
    FIELDTYPE  
    PROJECT  
    ISSUETYPE  
    customfieldoption 自定义字段选项表 ID  
    CUSTOMFIELD 关联customfield表ID
    CUSTOMFIELDCONFIG 自定义字段配置
    PARENTOPTIONID  
    SEQUENCE 选项顺序
    customvalue 选项值
    optiontype  
    disabled 是否禁用
    customfieldvalue 自定义字段值表 ID  
    ISSUE issueid  关联jiraissue表ID
    CUSTOMFIELD 自动以字段id 关联customfield表ID
    UPDATED 更新时间
    PARENTKEY 父节点 key
    STRINGVALUE 字符串类型值  如果是选项类型,关联customfieldoption表ID
    NUMBERVALUE 数字类型值
    TEXTVALUE 文本类型值
    DATEVALUE 日期类型值
    VALUETYPE 值类型
    issuelinktype issue链接类型表 ID 类型ID
    LINKNAME 类型名称
    INWARD 链接方描述
    OUTWARD 被链接方描述
    pstyle  
    issuelink issue链接表 ID  
    LINKTYPE 关联issuelinktype表ID
    SOURCE 链接方 issueid  关联jiraissue表ID
    DESTINATION 被链接方 issueid  关联jiraissue表ID
    SEQUENCE  
    changegroup issue修改组表 ID  
    issueid 关联jiraissue表ID
    AUTHOR 修改人
    CREATED 创建时间
    changeitem issue修改记录表 ID  
    groupid 修改组id 关联changegroup表ID
    FIELDTYPE 字段类型 jira, custom
    FIELD 字段名
    OLDVALUE 原始ID等
    OLDSTRING 原始字符串
    NEWVALUE 新值ID等
    NEWSTRING 新值字符串
    nodeassociation issue 内部字段值表 SOURCE_NODE_ID 关联jiraissue表ID
    SOURCE_NODE_ENTITY issue类型
    SINK_NODE_ID 值id  (比如 模块id, 关联component表ID)
    SINK_NODE_ENTITY 值类型 (比如:Component)
    ASSOCIATION_TYPE 类型
    SEQUENCE  
    component 模块表 ID 模块表
    PROJECT 项目ID 关联project表ID
    cname 模块名称
    description 描述
    URL  
    LEAD  
    ASSIGNEETYPE  
    ARCHIVED  

     

    有部分内容是 收藏的别人的

    这里放出链接 https://my.oschina.net/dushougudu/blog/3150200

     

    放一个查询Bug的demo:

    SELECT
            ji.ID as issue_id,
            CONCAT(p.pkey, '-', ji.issuenum) as issue_key, 
    				ji.SUMMARY as issue_summary, 
            ji.issuestatus as issue_jira_status, 
            ji.CREATED as issue_create_time, 		-- 创建时间
    				ji.UPDATED as issue_update_time,    -- 最后更新时间
            ji.RESOLUTIONDATE as issue_resolution_time, -- 解决时间
    				
    				ji.CREATOR as issue_creator, 		-- 创建人
    				ji.REPORTER as issue_reporter, 	-- 报告人
            ji.ASSIGNEE as issue_assignee, 	-- 经办人
    				
            ji_status.pname as issue_status_name, 	-- 状态
    				ji.PRIORITY as issue_level_id,         -- 优先级id
            ji_priority.pname as issue_level_name,			-- 优先级
    				ji.RESOLUTION as issue_resolution_id, 		-- 解决结果id
    				ji_resolution.pname as issue_resolution_name, 		-- 解决结果
    				
    				GROUP_CONCAT(bug_component_op.ID) as issue_component_id, -- 所属模块id
    				GROUP_CONCAT(bug_component_op.cname) as issue_component_name, -- 所属模块
    				
    				GROUP_CONCAT(bug_version_op.ID) as issue_version_id, -- 影响版本id
    				GROUP_CONCAT(bug_version_op.vname) as issue_version_name, -- 影响版本
    				
    				GROUP_CONCAT(bug_fixversion_op.ID) as issue_fixversion_id, -- 修复的版本id
    				GROUP_CONCAT(bug_fixversion_op.vname) as issue_fixversion_name, -- 修复的版本
    				
    				
    --         IF(ji.issuestatus in (5, 10012, 6, 10103),'Done','Backlog') as issue_status,         -- 需求状态
            
    
    				cv_bug_env.STRINGVALUE as bug_env_id, -- Bug 缺陷影响环境id
    				co_bug_env.customvalue as bug_env_name,		-- Bug 缺陷影响环境
    				
    				cv_bug_cause.STRINGVALUE as bug_cause_id,       -- Bug 缺陷根本原因id
    				co_bug_cause.customvalue as bug_cause_name,       -- Bug 缺陷根本原因
    				
            user_bug_feedback.lower_user_name as issue_bug_feedback,            -- 缺陷反馈方
    				
            cv_product.STRINGVALUE as issue_product_id, -- IT总部产品id
            co_product.customvalue as issue_product_name,    -- IT总部产品
    				
    				cv_project.STRINGVALUE as issue_project, -- 所属项目
    				
    				cv_bug_tester.STRINGVALUE as bug_tester,		-- 缺陷跟进测试
    				user_bug_tester.lower_user_name as bug_tester, 			-- 缺陷跟进测试
    				
    				cv_bug_dev.STRINGVALUE as bug_dev,		-- 缺陷跟进研发
    				user_bug_dev.lower_user_name as bug_dev, 			-- 缺陷跟进研发
    				
    				cv_bug_stage.STRINGVALUE as bug_stage_id, -- 缺陷发现阶段id
            co_bug_stage.customvalue as bug_stage_name,    -- 缺陷发现阶段
    				
            cv_bug_relate_sys.STRINGVALUE as bug_relate_sys,    -- 缺陷发现阶段
    				
    				cv_bug_reopen.NUMBERVALUE as bug_reopen_num,    -- 缺陷重启次数
    				
    				
            'end'
        FROM jiraissue ji
            JOIN project p on ji.PROJECT=p.ID
            LEFT JOIN issuestatus ji_status on ji_status.ID=ji.issuestatus        -- issue status
            LEFT JOIN priority ji_priority on ji_priority.ID=ji.PRIORITY            -- issue level
    				LEFT JOIN resolution ji_resolution on ji_resolution.ID=ji.RESOLUTION		-- issue resolution
    				
    				LEFT JOIN nodeassociation bug_component on bug_component.SOURCE_NODE_ID=ji.ID			-- 所属模块
    								AND bug_component.ASSOCIATION_TYPE='IssueComponent'
    				LEFT JOIN component bug_component_op on bug_component_op.ID=bug_component.SINK_NODE_ID			-- 所属模块
    				
    				LEFT JOIN nodeassociation bug_version on bug_version.SOURCE_NODE_ID=ji.ID			-- 影响版本
    								AND bug_version.ASSOCIATION_TYPE='IssueVersion'
    				LEFT JOIN projectversion bug_version_op on bug_version_op.ID=bug_version.SINK_NODE_ID			-- 影响版本
    
    				LEFT JOIN nodeassociation bug_fixversion on bug_fixversion.SOURCE_NODE_ID=ji.ID			-- 修复的版本
    								AND bug_fixversion.ASSOCIATION_TYPE='IssueFixVersion'
    				LEFT JOIN projectversion bug_fixversion_op on bug_fixversion_op.ID=bug_fixversion.SINK_NODE_ID			-- 修复的版本
    				
    				
            LEFT JOIN customfieldvalue cv_product on cv_product.ISSUE=ji.ID        -- IT总部产品id
                    AND cv_product.CUSTOMFIELD=13500
            LEFT JOIN customfieldoption co_product on co_product.ID=cv_product.STRINGVALUE        -- IT总部产品
            
    				LEFT JOIN customfieldvalue cv_project on cv_project.ISSUE=ji.ID        -- 所属项目
                    AND cv_project.CUSTOMFIELD=12501    -- CUSTOMFIELD 所属项目
    				
    				LEFT JOIN customfieldvalue cv_bug_env on cv_bug_env.ISSUE=ji.ID        -- 缺陷影响环境
                    AND cv_bug_env.CUSTOMFIELD=10027
    --                 AND cv_bug_env.STRINGVALUE=10044    -- 生产环境
    				LEFT JOIN customfieldoption co_bug_env on co_bug_env.ID=cv_bug_env.STRINGVALUE
            
    				LEFT JOIN customfieldvalue cv_bug_feedback on cv_bug_feedback.ISSUE=ji.ID        -- 缺陷反馈方
                    AND cv_bug_feedback.CUSTOMFIELD=10271
            LEFT JOIN app_user user_bug_feedback on user_bug_feedback.user_key=cv_bug_feedback.STRINGVALUE            -- app_user
            
    				LEFT JOIN customfieldvalue cv_bug_cause on cv_bug_cause.ISSUE=ji.ID        -- 缺陷根本原因
                    AND cv_bug_cause.CUSTOMFIELD=10026
            LEFT JOIN customfieldoption co_bug_cause on co_bug_cause.ID=cv_bug_cause.STRINGVALUE
    				
    				LEFT JOIN customfieldvalue cv_bug_tester on cv_bug_tester.ISSUE=ji.ID        -- 缺陷跟进测试
                    AND cv_bug_tester.CUSTOMFIELD=10010
            LEFT JOIN app_user user_bug_tester on user_bug_tester.user_key=cv_bug_tester.STRINGVALUE
    				
    				LEFT JOIN customfieldvalue cv_bug_dev on cv_bug_dev.ISSUE=ji.ID        -- 缺陷跟进研发
                    AND cv_bug_dev.CUSTOMFIELD=10012
            LEFT JOIN app_user user_bug_dev on user_bug_dev.user_key=cv_bug_dev.STRINGVALUE
    				
    				LEFT JOIN customfieldvalue cv_bug_stage on cv_bug_stage.ISSUE=ji.ID        -- 缺陷发现阶段
                    AND cv_bug_stage.CUSTOMFIELD=10021
            LEFT JOIN customfieldoption co_bug_stage on co_bug_stage.ID=cv_bug_stage.STRINGVALUE        -- 缺陷发现阶段
    				
    				LEFT JOIN customfieldvalue cv_bug_relate_sys on cv_bug_relate_sys.ISSUE=ji.ID        -- 缺陷关联系统
                    AND cv_bug_relate_sys.CUSTOMFIELD=10043
    								
    				LEFT JOIN customfieldvalue cv_bug_reopen on cv_bug_reopen.ISSUE=ji.ID        -- 缺陷重启次数
                    AND cv_bug_reopen.CUSTOMFIELD=14532
    				
        WHERE
    				ji.issuetype = 10004            -- issuetype = Bug
    --             AND (ji.RESOLUTION in (10000, 10004, 11100) or ji.RESOLUTION is NULL) -- resolution in (Unresolved-10004, Done, "Don't Fixed", 完成) 为空unresolved
    				AND ji.CREATED >= '2020-01-01'   -- CREATED >= -1w
    -- 				and p.pkey = 'IFS'
        GROUP BY issue_id
        ORDER BY issue_id;

     

    展开全文
  • 数据库表结构关系图生成

    万次阅读 2019-12-08 06:21:09
    随便点击试一下,最后你会发现点击从左数第三个的时候,会变成我们想要的数据库表结构图 如果你想看他们单个的模型图,你可选中其中一个,右击鼠标,选择逆向表到模型图 然后就会弹出一个窗体 显示你要的模型图 ....
  • flowable(十) 数据库表结构

    千次阅读 2019-11-28 14:43:49
    参考资料 flowable 数据库表结构 flowable 数据库表结构
  • Mysql之对比数据库表结构

    千次阅读 2019-06-12 14:42:12
    目前公司正在迁移环境,由于之前管理混乱导致不同部署环境下数据库表结构不同,同样功能在不同环境下有差异。数据库使用的是Mysql需要有工具能够对比数据库表结构差异并输出SQL语句直接执行修改表结构。可以使用...
  • 以下是使用 powerDesigner 16.5 的表结构转换方法,不包含导出数据。1.导入 oracle sql 文件File->Reverse Engineer->Database,设置物理模型的名称及所使用数据库类型,选择 Oracle version 1...
  • ofbiz数据库表结构设计

    千次阅读 2014-04-16 11:38:27
    ofbiz数据库表结构设计(1)- PARTY ofbiz数据库表结构设计(2)- CONTACT_MECH ofbiz数据库表结构设计(3)- 订单ORDER ofbiz数据库表结构设计(4)- 订单支付ORDER_PAYMENT_PREFERENCE ofbiz数据库表结构设计...
  • Laravel创建数据库表结构

    千次阅读 2017-11-21 09:36:25
    迁移就像数据库的版本控制,允许团队简单轻松的编辑并共享应用的数据库表结构,迁移通常和Laravel的schema构建器结对从而可以很容易地构建应用的数据库表结构。如果你曾经告知小组成员需要手动添加列到本地数据库...
  • Mysql数据库表结构导出工具介绍

    千次阅读 2019-02-27 11:15:02
    软件开发过程中,数据库设计是其中非常重要的一个环节,一般在设计阶段都会采用PowerDesigner进行数据库表的设计并生成数据库表结构文档。但是有的时候数据库表结构文档缺失了怎么办,能不能从数据库直接导出一个...
  • MySQL数据库表结构的设计

    千次阅读 多人点赞 2019-05-28 13:51:56
    MySQL数据库表结构的设计。四大范式。表结构的设计是数据库优化中至关重要的环节,需要认真谨慎对待,在遵守四大范式的前提下,充分考虑业务未来的可扩展性,适应未来业务变化,促进系统更加健康健壮。
  • 金蝶数据库表结构

    千次阅读 2017-03-16 10:56:34
    金蝶数据库表结构  2011-03-05 19:27:28| 分类: 默认分类 | 标签: |字号大中小 订阅 统ID 表ID 表名 表中文名 表说明  0 0 t_VoucherGroup 凭证字表 凭证的收付转等分类字  0 1 t_VoucherEntry 凭证分录...
  • mysql比对两个数据库表结构的方法

    万次阅读 2017-12-24 13:02:20
    本文介绍mysql比对两个数据库表结构的方法,可以检查出两个数据库表的差异,并获取更新sql语句消除表之间的差异。提供完整操作步骤与实例,方便大家比对数据库表结构时使用。
  • Mysql——》查看数据库表结构

    千次阅读 2019-05-14 08:49:10
    版权声明:本文为博主原创文章,无需授权即可转载,甚至无需保留以上版权声明,...Mysql——》查看数据库表结构一、查看数据库表结构 一、查看数据库表结构 -- table_schema:库名 -- table_name: 表名 SELECT TABLE...
  • Mysql数据库表结构优化

    千次阅读 2017-10-13 16:00:23
    前面介绍了服务器硬件、操作系统、msyql服务器配置,对数据库的影响,其实最重要的是数据库表结构对数据库的影响,良好的数据库逻辑设计和物理设计是数据库获取高性能的基础,数据库结构优化的目的:1、减少数据冗余...
  • PyCharm生成数据库表结构语句脚本以及数据库数据insert语句的方法 首先用pycharm的database工具栏连接项目的数据库。 导出数据库各个表结构脚本 右击数据库,在SQL Scirpts中选择SQL Generator 然后会生成数据库...
  • navicat导出数据库表结构及数据

    千次阅读 2020-06-29 22:09:53
    本文介绍下使用navicat导出数据库表结构、表数据 导出表结构、数据 1、选择工具->数据传输 2、选择我们的数据库,然后目标选择文件,目录导出到本地桌面的1.sql文件(也可以选择连接把数据传输到其他数据库) 3...
  • Activiti数据库表结构(表详细版)

    千次阅读 2019-07-19 16:02:02
    Activiti数据库表结构(表详细版) https://blog.csdn.net/hj7jay/article/details/51302829
  • MyBatis —— 数据库表结构自动生成

    千次阅读 2019-05-10 13:49:23
    文章目录MyBatis —— 数据库表结构自动生成简介映射数据结构所需xml(配置关系及文件生成位置)映射数据结构的命令映射数据结构所需jar总结 MyBatis —— 数据库表结构自动生成 简介 使用MyBatis时,我们需要将表...
  • GP数据库表结构查询语句

    万次阅读 2018-11-23 17:13:04
    一、GP数据库表结构查询SQL语句 查询时替换table_schema.table_name为所要查询的表即可。 select attname, -- 字段名 typname,-- 类型 CASE WHEN pg_truetypmod = -1 /* default typmod */ THEN null WHEN ...
  • 数据库表结构设计

    万次阅读 2018-10-25 20:12:58
    数据库:ads 数据库模型类基类:BaseModel class BaseModel(models.Model):  """模型类基类"""  create_time = models.DateTimeField(auto_now_add=True, verbose_name="...
  • PHP输出MySql数据库表结构

    千次阅读 2016-12-05 16:39:43
    一个漂亮的输出MySql数据库表结构的PHP页面 2013-01-15 01:28:28 标签:php MySql数据库 表结构 输出MySql数据库表结构 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。...
  • Magento数据库表结构

    千次阅读 2012-05-22 14:40:07
    Magento数据库表结构相当复杂,250多张表包含了非常多的表关联关系,让刚刚接触Magento的开发者来说真的非常头疼。往往是看到一个产品的各种属性分散在非常多的表中,找不到任何办法来取出它们的数据。 实际上,...
  • oracle 数据库表结构对比

    千次阅读 2016-12-13 19:39:10
    oracle 数据库表结构对比由于公司工作比较混乱,总有人会改数据库中表的内容和字段。 在部署的时候总会因为数据库出现了未知的改变而发生错误。 所以需要对数据库内容进行比对,以求得到变化的内容。 导出用户对象...
  • 有哪位大神可以帮我设计一个校园车辆出入管理系统的数据库表结构设计,要有基本的主外键关联
  • 数据库表结构设计原则

    千次阅读 2015-10-15 10:28:31
    数据库表结构设计浅谈  这篇文章如题所述,只打算谈一下数据库表本身设计,同时讲到和表结构相关的性能和扩展性问题。下面讲到的东西大多是从实际经验中总结而来,算是对这项技术的一个反思。  基本上...
  • 数据库表结构生成工具使用说明

    千次阅读 2018-01-22 15:20:22
    对于开发来说,如何规范化你的数据库表结构文档是灰常之重要的一件事情。但是当你的库,你的表排山倒海滴多的时候,你就会很头疼了。 推荐一款工具DBExportDocV1.0 For MySQL(MySQL数据库表结构导出器)。   ...
  • spring security自定义数据库表结构

    千次阅读 2018-08-08 10:38:22
    在用spring security对用户进行安全认证的时候,碰到一个很头疼的问题,spring security是使用其默认数据库表结构的,默认表为users,其实嫌麻烦的话,直接使用这个默认配置也是可以的,但是我的项目里已经有了表...
  • spring security之自定义数据库表结构

    千次阅读 2018-03-18 23:45:18
    上一讲中我们说了,我们可以采用spring security默认使用的数据库表结构,就是users和authiration表,但是在实际开发中,用户表通常都是各式各样的,需要根据自己的业务场景来设计,这就要用到了自定义数据库表结构...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 81,167
精华内容 32,466
关键字:

数据库表结构