数据库表结构设计参考

合集下载

formmaking数据库表结构设计

formmaking数据库表结构设计

formmaking数据库表结构设计数据库表结构设计是软件开发过程中非常重要的一部分,它直接关系到系统的性能和扩展性。

在开发一个表单制作系统时,合理的数据库表结构设计可以提高系统的效率和稳定性。

本文将从实际需求出发,讨论如何设计表单制作系统的数据库表结构。

一、用户表用户表是任何系统中的基础表,用于存储用户的基本信息。

在表单制作系统中,用户表可以存储用户的用户名、密码、邮箱、手机号等信息。

此外,为了实现多用户的功能,可以在用户表中增加一个角色字段,用于区分普通用户和管理员用户。

二、表单表表单表是表单制作系统中最核心的表,用于存储表单的基本信息。

每个表单都应该有一个唯一的标识符,可以使用自增长的ID或者UUID作为标识符。

表单表还可以包括表单的名称、描述、创建时间、更新时间等字段。

三、字段表字段表用于存储表单中的字段信息。

每个字段都应该有一个唯一的标识符,并与对应的表单进行关联。

字段表可以包括字段的名称、类型、长度、是否必填、默认值等属性。

此外,为了实现表单的动态性,可以在字段表中增加一个排序字段,用于指定字段的显示顺序。

四、选项表选项表用于存储下拉框、单选框、复选框等字段的选项信息。

每个选项都应该有一个唯一的标识符,并与对应的字段进行关联。

选项表可以包括选项的名称、值、排序等属性。

此外,为了实现选项的动态性,可以在选项表中增加一个关联字段,用于指定选项所属的字段。

五、数据表数据表用于存储用户填写的表单数据。

每个数据都应该有一个唯一的标识符,并与对应的表单进行关联。

数据表的字段可以根据字段表中定义的字段动态生成。

为了提高查询效率,可以在数据表中建立索引,索引的选择可以根据查询的频率和字段的选择性进行优化。

六、权限表权限表用于存储用户对表单的权限信息。

每个权限都应该有一个唯一的标识符,并与对应的用户和表单进行关联。

权限表可以包括权限的类型、权限的范围等字段。

为了提高查询效率,可以在权限表中建立索引,索引的选择可以根据查询的频率和字段的选择性进行优化。

数据库表结构设计3篇

数据库表结构设计3篇

数据库表结构设计第一篇:数据库表结构设计的基本原则在进行数据库表结构设计时,我们需要遵循一些基本的原则,以确保数据的存储、查询和维护都能够高效地进行。

1. 数据表的命名应该具有描述性数据表的命名应该具有描述性,能够清晰地表达其所存储的数据内容。

一般来说,我们可以采用名词或者名词短语进行命名。

2. 字段的命名应该具有描述性同样,字段的命名也应该具有描述性,能够清晰地表达其所存储的数据内容。

一般来说,我们可以采用名词或者名词短语进行命名。

3. 数据库表要符合规范化要求规范化是指将数据按照特定的规则进行分解和组织,以达到减少冗余、消除数据插入、删除和更新异常等目的。

在进行数据库表结构设计时,我们应该尽可能地符合规范化要求。

4. 尽量避免使用具有歧义的列名称在字段的命名中,我们应该尽量避免使用容易产生歧义的列名称,例如“state”,这个单词既可以表示州,也可以表示状态。

5. 尽量避免使用大量的空间占用数据类型选择合适的数据类型可以有效地优化数据库的性能。

在进行数据库表结构设计时,应该尽量避免使用大量的空间占用数据类型,例如“text”类型。

6. 尽量避免冗余数据冗余数据指的是相同的数据在不同的表中多次出现。

在进行数据库表结构设计时,应该尽量避免冗余数据,尽量采用关联表的方式进行数据存储。

7. 考虑表的扩展性在进行数据库表结构设计时,应该考虑表的扩展性。

我们可以在表中添加扩展字段,或者将不同的数据类型存储在不同的表中,以支持表的扩展。

以上就是数据库表结构设计的基本原则。

在进行数据库表结构设计时,我们应该尽量遵循这些原则,以为我们的数据库系统奠定坚实的基础。

数据库表结构设计

数据库表结构设计

数据库表结构设计数据库表结构设计是数据库设计的重要环节之一。

一个好的数据库表结构设计可以提高数据存储和查询效率,保证数据的准确性和一致性,同时也方便扩展和维护数据库系统。

在进行数据库表结构设计之前,需要明确数据库系统的需求和目标。

对于不同的应用场景和业务需求,数据库表结构设计可能会有所不同。

下面将以一个电商网站为例,介绍如何进行数据库表结构设计。

一、需求分析在电商网站中,我们需要存储商品、用户、订单等相关信息。

首先,我们需要明确需要存储哪些信息,这些信息之间是否存在关联关系。

例如,商品和订单之间存在关联关系,订单和用户之间也存在关联关系。

其次,我们需要确定每个信息对象的属性,即每个表中的字段。

二、实体-关系图设计根据需求分析的结果,我们可以根据实体-关系模型进行数据库表结构设计。

在这个电商网站中,我们可以根据实体-关系图设计出商品表、用户表和订单表三个基本表。

1. 商品表商品表用于存储商品的相关信息,可以包括商品ID、名称、描述、价格、库存等字段。

其中,商品ID作为主键,可以用于唯一标识每个商品。

另外,可以根据实际需求添加其他字段,如商品分类、销量等。

2. 用户表用户表用于存储用户的相关信息,可以包括用户ID、用户名、密码、手机号、邮箱等字段。

其中,用户ID作为主键,可以用于唯一标识每个用户。

另外,可以根据实际需求添加其他字段,如用户等级、积分等。

3. 订单表订单表用于存储订单的相关信息,可以包括订单ID、用户ID、商品ID、数量、金额、下单时间等字段。

其中,订单ID作为主键,可以用于唯一标识每个订单。

用户ID和商品ID可以作为外键,用于关联用户表和商品表。

另外,可以根据实际需求添加其他字段,如订单状态、收货地址等。

三、表关系设计在实体-关系图设计的基础上,我们需要确定表之间的关系。

在这个电商网站中,商品和订单之间存在一对多的关系,即一个订单可以包含多个商品;订单和用户之间也存在一对多的关系,即一个用户可以有多个订单。

数据库表结构设计例子

数据库表结构设计例子

数据库表结构设计例子数据库表结构设计是数据库开发中的重要环节,它决定了数据的存储方式和数据之间的关系。

下面列举了10个不同领域的数据库表结构设计例子。

1. 学生信息表学生信息表包含学生的姓名、性别、出生日期、班级等字段,用于存储学生的基本信息。

此表的主键可以是学生的学号,用于唯一标识每个学生。

2. 课程信息表课程信息表用于存储课程的信息,包括课程名称、学分、教师等字段。

此表的主键可以是课程号,用于唯一标识每门课程。

3. 图书馆借阅记录表图书馆借阅记录表用于记录读者的借阅情况,包括书籍名称、借阅日期、归还日期等字段。

此表的主键可以是借阅记录的编号,用于唯一标识每条借阅记录。

4. 订单信息表订单信息表用于存储用户的订单信息,包括订单号、商品名称、购买数量、订单日期等字段。

此表的主键可以是订单号,用于唯一标识每个订单。

5. 电影评分表电影评分表用于存储用户对电影的评分信息,包括用户ID、电影ID、评分等字段。

此表的主键可以是用户ID和电影ID的组合,用于唯一标识每条评分记录。

6. 医院病人信息表医院病人信息表用于存储病人的基本信息,包括病人姓名、年龄、性别、病历号等字段。

此表的主键可以是病历号,用于唯一标识每个病人。

7. 酒店预订表酒店预订表用于记录用户的酒店预订信息,包括预订人姓名、入住日期、离店日期、房间类型等字段。

此表的主键可以是预订记录的编号,用于唯一标识每条预订记录。

8. 购物车表购物车表用于存储用户的购物车信息,包括商品名称、商品数量、商品价格等字段。

此表的主键可以是购物车项的编号,用于唯一标识每个购物车项。

9. 员工信息表员工信息表用于存储公司员工的信息,包括员工姓名、职位、入职日期等字段。

此表的主键可以是员工的工号,用于唯一标识每个员工。

10. 聊天记录表聊天记录表用于存储用户之间的聊天记录,包括发送者ID、接收者ID、发送时间、消息内容等字段。

此表的主键可以是聊天记录的编号,用于唯一标识每条聊天记录。

系统的权限管理体系数据库表结构设计

系统的权限管理体系数据库表结构设计

系统的权限管理体系数据库表结构设计(控
制到菜单)
1.思路:
不同的人员, 对系统的操作权限是不同的。

对于一个系统, 权限可能会有很多种, 如果逐一给每一个人员分配权限, 是一件很麻烦的事情。

所以可以使用对“角色”进行操作的概念, 将权限一致的人员赋予同一个角色, 然后对该角色进行权限分配。

这三张表分别人员信息, 角色信息和权限信息。

他们的关系是多对多的, 一个权限可能同时属于多个角色, 一个角色可能拥有多个权限, 同样的道理, 一个人员可能同时拥有多个角色, 而一个角色也可能拥有多个人员。

企业工商数据库表结构

企业工商数据库表结构

企业工商数据库表结构全文共四篇示例,供读者参考第一篇示例:企业工商数据库表结构是指在企业数据库中用于存储工商相关信息的表结构,它包括了企业的基本信息、股东信息、经营范围、注册资本等重要数据。

在企业的管理和运营过程中,这些信息对于实现业务目标和监管合规都至关重要。

下面我们来详细介绍一下企业工商数据库表结构的设计。

一、企业基本信息表结构设计1. 公司基本信息表:包括企业名称、法定代表人、注册资本、注册时间、所属行业等字段;2. 联系信息表:包括联系电话、邮箱、地址等字段;3. 营业执照信息表:包括营业执照号、发证日期、有效期等字段;4. 经营范围表:包括主营业务、经营范围、经营地区等字段;5. 企业状态表:包括企业状态、变更记录、注销原因等字段。

1. 股东基本信息表:包括股东名称、持股比例、股东类型等字段;2. 股东投资信息表:包括投资金额、投资时间、投资项目等字段;3. 股东变动记录表:包括股权转让记录、增减资记录、股东关系维护记录等字段。

1. 经营记录表:包括经营活动记录、经营收入、盈利情况等字段;2. 经营报表数据表:包括资产负债表、利润表、现金流量表等字段;3. 经营风险预警表:包括财务风险、市场风险、政策风险等字段。

1. 法律诉讼记录表:包括法律诉讼案件记录、调解记录、裁决记录等字段;2. 税务记录表:包括税务缴纳记录、税务申报记录、税务优惠情况等字段;3. 审计报告表:包括内部审计报告、外部审计报告、财务审计报告等字段。

以上是企业工商数据库表结构的设计,通过这些表结构的建立和管理,企业可以更好地管理自身的工商信息,及时监测经营情况,减少法律风险,提高经营效率,实现可持续发展。

这些数据也为政府监管部门提供了便利,更好地行使监管职责,确保市场秩序良好。

希望企业各部门在日常工作中能够充分利用企业工商数据库表结构,共同促进企业发展和国家经济繁荣。

第二篇示例:企业工商数据库是一个存储企业相关信息的数据库,其中包含了企业的基本信息、财务信息、人员信息等。

数据库表结构设计例子

数据库表结构设计例子

数据库表结构设计例子数据库表结构设计是构建数据库的基础工作之一,它决定了数据库中数据的组织方式和存储结构。

一个好的数据库表结构设计可以提高数据库的性能、可扩展性和数据的完整性。

下面以一个电商平台的数据库为例,列举10个数据库表结构设计的例子。

1. 用户表(User)- 字段:用户ID、用户名、密码、手机号、邮箱、注册时间等。

- 主键:用户ID。

- 约束:用户名、手机号、邮箱的唯一性约束。

2. 商品表(Product)- 字段:商品ID、商品名称、商品描述、价格、库存、创建时间等。

- 主键:商品ID。

3. 订单表(Order)- 字段:订单ID、用户ID、商品ID、数量、总金额、下单时间等。

- 主键:订单ID。

- 外键:用户ID、商品ID分别关联用户表和商品表。

4. 地址表(Address)- 字段:地址ID、用户ID、收货人姓名、手机号、省份、城市、区县、详细地址等。

- 主键:地址ID。

- 外键:用户ID关联用户表。

5. 购物车表(Cart)- 字段:购物车ID、用户ID、商品ID、数量、创建时间等。

- 主键:购物车ID。

- 外键:用户ID、商品ID分别关联用户表和商品表。

6. 支付表(Payment)- 字段:支付ID、订单ID、支付方式、支付金额、支付时间等。

- 主键:支付ID。

- 外键:订单ID关联订单表。

7. 评价表(Review)- 字段:评价ID、用户ID、商品ID、评分、评论内容、评价时间等。

- 主键:评价ID。

- 外键:用户ID、商品ID分别关联用户表和商品表。

8. 物流表(Logistics)- 字段:物流ID、订单ID、物流公司、物流单号、发货时间、收货时间等。

- 主键:物流ID。

- 外键:订单ID关联订单表。

9. 类别表(Category)- 字段:类别ID、类别名称、父类别ID、创建时间等。

- 主键:类别ID。

- 外键:父类别ID关联类别表自身。

10. 优惠券表(Coupon)- 字段:优惠券ID、优惠券名称、优惠金额、适用商品、有效期等。

进销存数据库表结构设计

进销存数据库表结构设计

1.帐类表(KIND)无索引序号中文名称英文名称类型备注1 帐类编号K_SERIAL byte2 帐类名称K_NAME text*10本表系统自动建立,共划分为15种帐类,不可增删帐类编号帐类名称备注0 上期结存进货,不参加进货统计1 购入进货,购入时必需输入供货单位名称2 自制进货3 投资转入进货4 盘盈进货5 领料出库,领料必需输入领料部门名称6 调拨出库7 报损出库8 盘亏出库9 退库对低值易耗品,在用品退为在用库存10 直接报废对于低值易耗品,在用品转报废11 领用对于低值易耗品,在用库存转在用12 调拨对于低值易耗品,在用库存减少13 报废对于低值易耗品,在用库存报废14 直进直出进出库,购入与领料对库存无影响2.物品表(GOODS)序号索引名称索引域唯一? 主索引?1 G_CODING +G_CODING Y N2 G_SERIAL +G_SERIAL Y Y序号中文名称英文名称类型备注1 物品内部编号G_SERIAL INT->long 系统内部唯一标识该物品2 物品编号G_CODING TEXT * 10 用户使用此编号访问物品&3 物品名称G_NAME TEXT*40 非空&4 物品单位G_UNIT TEXT*8 非空&5 物品规格G_STATE TEXT*206 物品类别G_CLASS INT 取自表CLASS7 备注G_REMARKS MEMO8 最小库存量G_MIN CURRENCY 为零,即无最小库存9 最大库存量G_MAX CURRENCY 为零,即无最大库存10 库存数量G_QUANT CURRENCY 控制出库数量11 虚拟库存数量G_VQUANT CURRENCY 出库时用12 库存金额G_AMOUNT CURRENCY3.类别表(CLASS)序号索引名称索引域唯一? 主索引?1 C_CODING +C_CODING Y N2 C_SERIAL +C_SERIAL Y Y序号中文名称英文名称类型备注1 类别内部序号C_SERIAL INT 系统内部唯一标识该物品2 类别编号C_CODING TEXT *10 用户使用该编号访问类别信息3 类别名称C_NAME TEXT*20 非空4 出库类型C_KIND BYTE 1.移动平均 2..先进先出3.后进先出4.实际计价*5.月末平均5 备注C_REMARKS MEMO*6 底标志C_BOTTOM BOOLEAN*7 类别级别C_LEVEL BYTE4.供货单位、使用部门(DEPART)序号索引名称索引域唯一? 主索引?1 D_CODING +D_CODING Y N2 D_SERIAL +D_SERIAL Y Y序号中文名称英文名称类型备注1 内部序号D_SERIAL INT 系统内部唯一标识该部门>0 供货单位=0 库房<0 使用部门2 单位编号D_CODING TEXT*10&3 单位名称D_NAME TEXT*404 备注D_REMARKS MEMO*5 单位级别D_LEVEL INTEGER*6 底标志D_BOTTOM BOOLEAN*7 类别D_Kind byte 0.删除标志 1.领料部门2.供货单位3.销售单位4.库房5.帐本表(LEDGER)序号索引名称索引域唯一? 主索引?1 L_SERIAL1 +L_SERIAL1 Y Y2 L_SERIAL +L_SERIAL;L_MONTH N N*3 L_CODING +L_CODING;+L_MONTH; N N序号中文名称英文名称类型备注1 帐目流水号L_SERIAL1 LONG 系统自动分配唯一标识2 物品编号L_SERIAL INT->Long 取自GOODS表3 帐目日期L_DAY DATE4 凭证号L_CODING TEXT*10&5 摘要L_REMARKS TEXT*406 进出数量L_QUANT1 CURRENCY7 进出金额L_AMOUNT1 CURRENCY8 进出差价L_AMOUNT11 CURRENCY9 结存数量L_QUANT3 CURRENCY10 结存金额L_AMOUNT3 CURRENCY11 结存差价L_AMOUNT33 CURRENCY12 帐类L_KIND BYTE 取自表KIND13 供应商序号L_GYS INT 取自表DEPART,>014 领料部门序号L_DEPT INT 取自表DEPART, <015 库存数量L_STOCK CURRENCY 扩展使用&16 卡片编号->库存明L_CARD LONG 扩展使用细序号(出库时用)17 财务月份L_MONTH INT18 登帐标志L_TallyFlag byte 0或Null:未登帐 1:已登帐*19 录入操作员名称L_OperName TEXT*12*20 登帐操作员名称L_TOperName Text*126.库存明细表(CONT)序号索引名称索引域唯一? 主索引?1 CONT1_SERIAL +S_SERIAL1 Y Y2 CONT2_SERIAL +S_SERIAL N N&3 CONT3_SERIAL +S_LSERIAL Y N序号中文名称英文名称类型备注1 进货日期S_DATE Date2 帐目流水号S_SERIAL1 LONG 自动计数3 物品编号S_SERIAL INT->Long4 凭证号S_CODING TEXT*105 进货数量S_QUANT1 CURRENCY6 库存数量S_QUANT2 CURRENCY7 虚拟库存数量S_VQUANT CURRENCY8 进货单价S_AMOUNT1 CURRENCY*9 入库帐流水号S_LSERIAL LONG 对应LEDGER帐的流水号7.在用帐本(LEDGER1)序号索引名称索引域唯一? 主索引?1 L1_SERIAL +L_SERIAL;L_DAY N N2 L1_SERIAL1 +L_SERIAL1 Y Y3 L1_LSERIAL1 +L_LSERIAL1 Y N序号中文名称英文名称类型备注1 帐目流水号L_SERIAL1 LONG 系统内部唯一标识该物品2 物品编号L_SERIAL INT->Long3 帐目日期L_DAY DATE4 凭证号L_CODING TEXT*10&5 摘要L_REMARKS MEMO6 进出数量L_QUANT1 CURRENCY7 进出金额L_AMOUNT1 CURRENCY8 帐类L_KIND BYTE9 领料部门L_DEPART INT10 对应帐本LEDGER的流水号L_LSerial1 long 记帐时取LEDEGER表的L_Serial18.在用物品库存表(WAREHOUSE)序号索引名称索引域唯一? 主索引?1 W_SERIAL +W_DAY;+W_SERIAL;+W_DEPART Y N序号中文名称英文名称类型备注1 在用物品序号W_SERIAL INT->LONG2 占用部门W_DEPART INT3 占用库存日期W_DAY INT4 占用数量W_QUANT1 CURRENCY5 占用金额W_AMOUNT1 CURRENCY9.物品进销存表(STOCK)序号索引名称索引域唯一? 主索引?1 S_SERIAL +S_SERIAL;S_MONTH Y Y2序号中文名称英文名称类型备注1 物品编号S_SERIAL INT->long 系统内部唯一标识该物品2 财务月份S_MONTH INT3 进货数量S_QUANT1 CURRENCY4 进货金额S_AMOUNT1 CURRENCY5 进货差价S_AMOUNT11 CURRENCY 扩展使用6 出库数量S_QUANT2 CURRENCY7 出库金额S_AMOUNT2 CURRENCY8 出库差价S_AMOUNT22 CURRENCY 扩展使用9 结存数量S_QUANT3 CURRENCY10 结存金额S_AMOUNT3 CURRENCY11 结存差价S_AMOUNT33 CURRENCY 扩展使用10.分类进货表(STOCK1)序号索引名称索引域唯一? 主索引?1 S1_SERIAL +S_SERIAL;+S_MONTH Y Y序号中文名称英文名称类型备注1 物品序号S_SERIAL INT->long 系统内部唯一标识该物品2 帐本月份S_MONTH INT3 本月购入数量S_QUANT1 CURRENCY4 本月购入金额S_AMOUNT1 CURRENCY5 本月自制数量S_QUANT2 CURRENCY6 本月自制金额S_AMOUNT2 CURRENCY7 本月投资转入数量S_QUANT3 CURRENCY8 本月投资转入金额S_AMOUNT3 CURRENCY9 本月盘盈数量S_QUANT4 CURRENCY10 本月盘盈金额S_AMOUNT4 CURRENCY11.分类出库表(STOCK2)序号索引名称索引域唯一? 主索引?1 S1_SERIAL +S_SERIAL;S_MONTH Y Y序号中文名称英文名称类型备注1 物品序号S_SERIAL INT->long 系统内部唯一标识该物品2 帐本月份S_MONTH INT3 本月领料数量S_QUANT1 CURRENCY4 本月领料金额S_AMOUNT1 CURRENCY5 本月调拨数量S_QUANT2 CURRENCY6 本月调拨金额S_AMOUNT2 CURRENCY7 本月报损数量S_QUANT3 CURRENCY8 本月报损金额S_AMOUNT3 CURRENCY9 本月盘亏数量S_QUANT4 CURRENCY10 本月盘亏金额S_AMOUNT4 CURRENCY12.帐类统计表(STOCK3)序号索引名称索引域唯一? 主索引?1 S3_SERIAL +S_DAY;+S_SERIAL;+S_DEPART Y N序号中文名称英文名称类型备注1 类别序号S_SERIAL INT 取自表CLASS2 帐类序号S_DEPART INT 取自表KIND3 帐本月份S_DAY INT4 数量S_QUANT1 CURRENCY 该类别本帐类数量合计5 金额S_AMOUNT1 CURRENCY 该类别本帐类金额合计13.供应商供应报表(STOCK5)序号索引名称索引域唯一? 主索引?1 S5_SERIAL +S_DAY;+S_SERIAL;+S_DEPART Y N序号中文名称英文名称类型备注1 物品序号S_SERIAL INT->long 供货物品,取自表GOODS2 供应商序号S_DEPT INT 供货单位,取自表DEPART3 帐本月份S_DAY INT4 数量S_QUANT CURRENCY 供货数量合计5 金额S_AMOUNT CURRENCY 供货金额合计14.部门领料报表(STOCK6)序号索引名称索引域唯一? 主索引?1 S6_SERIAL +S_DAY;+S_SERIAL;S_DEPART Y N序号中文名称英文名称类型备注1 物品序号S_SERIAL INT->LONG 部门领料物品;取自库GOODS2 部门序号S_DEPART INT 领料部门;取自库DEPART3 帐本月份S_DAY INT4 数量S_QUANT1 CURRENCY 领料物品数量合计5 金额S_AMOUNT1 CURRENCY 领料物品金额合计15. 供应商应付帐汇总表(SupplyPay)序号索引名称索引域唯一? 主索引?1 Supply_index +P_month;+P_DSerial Y Y序号中文名称英文名称类型备注1 供应商编号P_DSerial integer 唯一对应供应商2 月份序号P_Month integer 年*12+月3 月初应付金额P_MBOAmt currency4 本月累计应付金额P_MTOAmt currency5 年累计应付金额P_YTOAmt currency6 本月累计已付金额P_MTPAmt currency7 年累计已付金额P_YTPAmt currency16.供应商应付帐明细表(SupplyPayDetail)序号索引名称索引域唯一? 主索引?1 PD_DSerial +PD_Month+PD_DSerial; N N2 PD_LSerial1 PD_LSerial1 Y N序号中文名称英文名称类型备注1 供应商编号(主索引2)PD_DSerial integer 唯一对应一个供应商2 帐目日期PD_Date date 入库单日期3 入库月份(主索引1)PD_Month integer 年*12+月4 入库帐流水号PD_LSerial1 long5 应付金额PD_OAmt currency6 已付金额PD_PAmt currency7 付帐标志PD_OPFlag boolean default,false应付金额=已付金额,True17.月末平均物品月合计表(GGether)此表的内容仅对月末平均的物品进行统计,统计是在物品的入库帐计帐时进行。

数据库表结构文档模板

数据库表结构文档模板

数据库表结构文档模板
以下是一个简单的数据库表结构文档模板,你可以根据需要扩展和自定义,以满足具体的项目要求:
#数据库表结构文档
##表1:表名
###描述
(在这里写表的简要描述)
###字段列表
|字段名|数据类型|长度|是否为主键|是否允许为空|默认值|描述|
|--------|----------|------|------------|--------------|--------|------|
|列1|类型|长度|是/否|是/否|默认值|描述|
|列2|类型|长度|是/否|是/否|默认值|描述|
|列3|类型|长度|是/否|是/否|默认值|描述|
|...|...|...|...|...|...|...|
###索引列表
|索引名|类型|字段列表|描述|
|----------|---------|--------------|------|
|索引1|唯一|列1,列2|描述|
|索引2|普通|列3|描述|
|...|...|...|...|
##表2:另一个表
(重复上述结构)
请注意,实际的数据库表结构文档可能会更加详细,包括表之间的关系、外键约束等信息。

这个模板主要提供了一个基本框架,你可以根据项目的实际需求进行修改和扩展。

mysql数据库表设计案例

mysql数据库表设计案例

mysql数据库表设计案例一、引言1.数据库表设计的重要性在当今信息化时代,数据库已成为各类应用系统的基础。

数据库表设计作为数据库建设的核心环节,直接影响到系统的性能、可维护性和扩展性。

一个优秀的数据库表设计能够提高数据查询效率,降低系统资源消耗,为业务发展提供有力支持。

2.MySQL数据库简介MySQL是一款广泛应用于各类项目的开源关系型数据库管理系统。

它基于Structured Query Language(SQL)进行数据操作,支持多种存储引擎,具有高性能、易使用、成本低等优点。

在众多开源数据库中,MySQL凭借其强大的功能和广泛的应用场景,成为许多企业和开发者的首选。

二、MySQL数据库表设计案例分析1.案例一:用户信息表(1)表结构设计:用户信息表主要包括用户ID、用户名、密码、邮箱、手机号、注册时间等字段。

(2)字段类型与约束:用户ID采用整型(INT)存储,设置为主键;用户名采用字符串类型(VARCHAR)存储,长度限制为255;密码采用字符串类型(VARCHAR)存储,长度限制为255,添加加密约束;邮箱采用字符串类型(VARCHAR)存储,长度限制为255,添加唯一约束;手机号采用字符串类型(VARCHAR)存储,长度限制为20;注册时间采用日期时间类型(DATETIME)存储。

(3)索引与查询优化:创建用户名、邮箱和注册时间的索引,以提高查询效率。

2.案例二:商品信息表(1)表结构设计:商品信息表主要包括商品ID、商品名称、商品类别、价格、库存、发布时间等字段。

(2)字段类型与约束:商品ID采用整型(INT)存储,设置为主键;商品名称采用字符串类型(VARCHAR)存储,长度限制为255;商品类别采用整型(INT)存储,关联类别表;价格采用浮点型(FLOAT)存储;库存采用整型(INT)存储;发布时间采用日期时间类型(DATETIME)存储。

(3)索引与查询优化:创建商品名称、类别ID和价格的索引,以提高查询效率。

rbac2数据库表结构设计

rbac2数据库表结构设计

RBAC2数据库表结构设计在基于角色的访问控制(RBAC)系统中,有几个主要的数据库表来存储系统所需的信息。

以下是一个典型的RBAC2数据库表结构设计。

1. 用户表(Users)* user_id:用户ID(主键)* username:用户名* password:密码* email:电子邮件* 其他用户相关信息...2. 角色表(Roles)* role_id:角色ID(主键)* role_name:角色名称* 其他角色相关信息...3. 权限表(Permissions)* permission_id:权限ID(主键)* permission_name:权限名称* 其他权限相关信息...4. 资源表(Resources)* resource_id:资源ID(主键)* resource_name:资源名称* 其他资源相关信息...5. 用户角色关联表(User_Role)* user_id:用户ID(外键,关联Users表)* role_id:角色ID(外键,关联Roles表)* 主键(user_id, role_id)6. 角色权限关联表(Role_Permission)* role_id:角色ID(外键,关联Roles表)* permission_id:权限ID(外键,关联Permissions表)* 主键(role_id, permission_id)7. 用户资源关联表(User_Resource)* user_id:用户ID(外键,关联Users表)* resource_id:资源ID(外键,关联Resources表)* 主键(user_id, resource_id)8. 角色资源关联表(Role_Resource)* role_id:角色ID(外键,关联Roles表)* resource_id:资源ID(外键,关联Resources表)* 主键(role_id, resource_id)这些表结构的设计可以满足RBAC2的基本需求,包括用户、角色、权限和资源的定义以及他们之间的关联关系。

数据库表的结构

数据库表的结构

数据库表的结构数据库表的结构是指数据库中存储数据的方式和组织形式的一种表示方法。

它由数据表名、字段名、数据类型、索引、约束等元素组成,用来定义和描述数据的结构和特性。

正确的数据库表结构设计不仅可以提高数据库的性能和效率,还能保证数据的完整性和一致性。

以下是数据库表结构设计的一些相关参考内容。

1. 表名:表名应该具有清晰、简洁和易于理解的含义,通常使用复数形式,避免使用过长或过于复杂的名称。

例如,学生表可以命名为"students"。

2. 字段名:字段名应该准确描述字段所代表的含义,尽量避免使用缩写或不规范的命名方式。

字段名应该使用小写字母,不同单词之间可以使用下划线或驼峰命名法分隔。

例如,学生表中的字段可以命名为"student_id"、"student_name"等。

3. 数据类型:根据不同的数据类型选择合适的数据类型来存储数据,避免浪费存储空间和提高数据读写效率。

常见的数据类型包括整数型(int)、浮点型(float)、字符串型(varchar)、日期时间型(datetime)等。

4. 索引:索引可以提高数据库的查询效率,通过在某些字段上创建索引来加快查找和排序的速度。

通常在主键和经常用于查询的字段上创建索引。

需要注意的是,索引不宜过多,否则会增加数据写入的成本。

5. 主键:主键是用来唯一标识数据表中每一个记录的字段,可以确保数据的唯一性和删除操作的准确性。

主键可以是单一字段,也可以是多个字段的组合。

常见的主键类型包括自增长整数、GUID等。

6. 外键:外键用于建立数据表之间的联系和关联,保持数据的完整性和一致性。

外键是一个指向其他表主键的字段,用来创建表之间的关系。

外键可以帮助实现表与表之间的数据一致性,并且可以确保数据的正确性。

7. 约束:约束用于限制和定义数据的完整性和一致性,可以在创建表时或者后期添加约束。

常见的约束包括主键约束、唯一约束、非空约束、默认值约束、检查约束等。

数据库结构设计表

数据库结构设计表

数据库结构设计是建立数据库表格的关键部分,它决定了如何组织数据以满足应用程序的需求。

以下是设计数据库表格时需要考虑的一些常见要素和示例:1. **表格命名**:选择有意义的表格名称,描述表格所存储数据的内容。

例如,如果您正在设计一个在线商店的数据库,可以创建名为"products"的表格来存储产品信息。

2. **字段命名**:选择具有描述性的字段名称,以便轻松理解和查询数据。

例如,一个"products"表格可以包括字段如下:- `product_id`:产品唯一标识符。

- `product_name`:产品名称。

- `description`:产品描述。

- `price`:产品价格。

- `stock_quantity`:产品库存数量。

3. **数据类型**:为每个字段选择合适的数据类型,以确保存储有效的数据并节省存储空间。

例如,`price`字段可以使用`DECIMAL`或`FLOAT`数据类型,而`product_id`字段可以使用`INT`数据类型。

4. **主键**:确定每个表格的主键,它是唯一标识表格中每行数据的字段。

通常,主键是自增长的整数。

在上面的示例中,`product_id`可以作为主键。

5. **外键**:如果表格之间存在关系,定义外键以确保数据的完整性。

例如,如果有一个`orders`表格,可以在`orders`表格中创建一个外键,引用`products`表格中的`product_id`字段,以建立订单和产品之间的关系。

6. **索引**:为经常查询的字段创建索引,以提高检索性能。

例如,您可以在`product_name`字段上创建一个索引,以便根据产品名称进行快速搜索。

7. **默认值和约束**:定义字段的默认值和约束,以确保数据的一致性和完整性。

例如,可以为`price`字段定义一个默认值,以确保在没有指定价格时自动分配默认价格。

进销存数据库表结构设计

进销存数据库表结构设计

进销存数据库表结构设计1.帐类表(KIND)无索引序号中文名称英文名称类型备注 1 帐类编号 K_SERIAL byte 2 帐类名称K_NAME text*10本表系统自动建立,共划分为15种帐类,不可增删帐类编号帐类名称备注0 上期结存进货,不参加进货统计1 购入进货,购入时必需输入供货单位名称2 自制进货3 投资转入进货4 盘盈进货5 领料出库,领料必需输入领料部门名称6 调拨出库7 报损出库8 盘亏出库9 退库对低值易耗品,在用品退为在用库存10 直接报废对于低值易耗品,在用品转报废11 领用对于低值易耗品,在用库存转在用12 调拨对于低值易耗品,在用库存减少13 报废对于低值易耗品,在用库存报废14 直进直出进出库,购入与领料对库存无影响2.物品表(GOODS)序号索引名称索引域唯一? 主索引? 1 G_CODING +G_CODING Y N 2G_SERIAL +G_SERIAL Y Y序号中文名称英文名称类型备注 1 物品内部编号 G_SERIAL INT->long系统内部唯一标识该物品 2 物品编号 G_CODING TEXT * 10 用户使用此编号访问物品 &3 物品名称 G_NAME TEXT*40 非空 &4 物品单位 G_UNIT TEXT*8 非空 &5 物品规格 G_STATE TEXT*206 物品类别 G_CLASS INT 取自表CLASS7 备注 G_REMARKS MEMO8 最小库存量 G_MIN CURRENCY 为零,即无最小库存 9 最大库存量 G_MAX CURRENCY 为零,即无最大库存 10 库存数量 G_QUANT CURRENCY 控制出库数量 11 虚拟库存数量 G_VQUANT CURRENCY 出库时用 12 库存金额 G_AMOUNT CURRENCY3.类别表(CLASS)序号索引名称索引域唯一? 主索引? 1 C_CODING +C_CODING Y N 2C_SERIAL +C_SERIAL Y Y序号中文名称英文名称类型备注 1 类别内部序号 C_SERIAL INT 系统内部唯一标识该物品 2 类别编号 C_CODING TEXT *10 用户使用该编号访问类别信息3 类别名称 C_NAME TEXT*20 非空4 出库类型 C_KIND BYTE 1.移动平均 2..先进先出3.后进先出4.实际计价*5.月末平均 5 备注 C_REMARKS MEMO*6 底标志 C_BOTTOM BOOLEAN*7 类别级别 C_LEVEL BYTE4.供货单位、使用部门(DEPART) 序号索引名称索引域唯一? 主索引? 1D_CODING +D_CODING Y N 2 D_SERIAL +D_SERIAL Y Y序号中文名称英文名称类型备注 1 内部序号 D_SERIAL INT 系统内部唯一标识该部门>0 供货单位=0 库房<0 使用部门 2 单位编号 D_CODING TEXT*10&3 单位名称 D_NAME TEXT*404 备注 D_REMARKS MEMO*5 单位级别 D_LEVEL INTEGER*6 底标志 D_BOTTOM BOOLEAN*7 类别 D_Kind byte 0.删除标志 1.领料部门2.供货单位3.销售单位4.库房5.帐本表(LEDGER)序号索引名称索引域唯一? 主索引?1 L_SERIAL1 +L_SERIAL1 Y Y2 L_SERIAL +L_SERIAL;L_MONTH N N*3 L_CODING +L_CODING;+L_MONTH; N N序号中文名称英文名称类型备注1 帐目流水号 L_SERIAL1 LONG 系统自动分配唯一标识2 物品编号 L_SERIAL INT->Long 取自GOODS表3 帐目日期 L_DAY DATE4 凭证号 L_CODING TEXT*10&5 摘要 L_REMARKS TEXT*406 进出数量 L_QUANT1 CURRENCY7 进出金额 L_AMOUNT1 CURRENCY8 进出差价 L_AMOUNT11 CURRENCY9 结存数量 L_QUANT3 CURRENCY10 结存金额 L_AMOUNT3 CURRENCY11 结存差价 L_AMOUNT33 CURRENCY12 帐类 L_KIND BYTE 取自表KIND 13 供应商序号 L_GYS INT 取自表DEPART,>0 14 领料部门序号 L_DEPT INT 取自表DEPART, <0 15 库存数量L_STOCK CURRENCY 扩展使用 &16 卡片编号->库存明L_CARD LONG 扩展使用细序号(出库时用)17 财务月份 L_MONTH INT18 登帐标志 L_TallyFlag byte 0或Null:未登帐 1:已登帐 *19 录入操作员名称 L_OperName TEXT*12*20 登帐操作员名称 L_TOperName Text*126.库存明细表(CONT) 序号索引名称索引域唯一? 主索引?1 CONT1_SERIAL +S_SERIAL1 Y Y2 CONT2_SERIAL +S_SERIAL N N &3 CONT3_SERIAL +S_LSERIAL Y N序号中文名称英文名称类型备注1 进货日期 S_DATE Date2 帐目流水号 S_SERIAL1 LONG 自动计数3 物品编号 S_SERIAL INT->Long4 凭证号 S_CODING TEXT*105 进货数量 S_QUANT1 CURRENCY6 库存数量 S_QUANT2 CURRENCY7 虚拟库存数量 S_VQUANT CURRENCY8 进货单价 S_AMOUNT1 CURRENCY *9 入库帐流水号 S_LSERIAL LONG 对应LEDGER帐的流水号7.在用帐本(LEDGER1)序号索引名称索引域唯一? 主索引?1 L1_SERIAL +L_SERIAL;L_DAY N N2 L1_SERIAL1 +L_SERIAL1 Y Y3 L1_LSERIAL1 +L_LSERIAL1 Y N序号中文名称英文名称类型备注 1 帐目流水号 L_SERIAL1 LONG 系统内部唯一标识该物品 2 物品编号 L_SERIAL INT->Long3 帐目日期 L_DAY DATE4 凭证号 L_CODING TEXT*10&5 摘要 L_REMARKS MEMO6 进出数量 L_QUANT1 CURRENCY7 进出金额 L_AMOUNT1 CURRENCY8 帐类 L_KIND BYTE9 领料部门 L_DEPART INT10 对应帐本LEDGER的流L_LSerial1 long 记帐时取LEDEGER表的水号 L_Serial18.在用物品库存表(WAREHOUSE) 序号索引名称索引域唯一? 主索引? 1W_SERIAL +W_DAY;+W_SERIAL;+W_DEPART Y N序号中文名称英文名称类型备注 1 在用物品序号 W_SERIAL INT->LONG 2 占用部门 W_DEPART INT 3 占用库存日期 W_DAY INT 4 占用数量 W_QUANT1 CURRENCY 5 占用金额 W_AMOUNT1 CURRENCY9.物品进销存表(STOCK) 序号索引名称索引域唯一? 主索引? 1 S_SERIAL +S_SERIAL;S_MONTH Y Y 2序号中文名称英文名称类型备注 1 物品编号 S_SERIAL INT->long 系统内部唯一标识该物品 2 财务月份 S_MONTH INT3 进货数量 S_QUANT1 CURRENCY4 进货金额 S_AMOUNT1 CURRENCY5 进货差价 S_AMOUNT11 CURRENCY 扩展使用6 出库数量 S_QUANT2 CURRENCY7 出库金额 S_AMOUNT2 CURRENCY8 出库差价 S_AMOUNT22 CURRENCY 扩展使用 9 结存数量 S_QUANT3 CURRENCY10 结存金额 S_AMOUNT3 CURRENCY11 结存差价 S_AMOUNT33 CURRENCY 扩展使用10.分类进货表(STOCK1) 序号索引名称索引域唯一? 主索引? 1 S1_SERIAL +S_SERIAL;+S_MONTH Y Y序号中文名称英文名称类型备注 1 物品序号 S_SERIAL INT->long 系统内部唯一标识该物品 2 帐本月份 S_MONTH INT3 本月购入数量 S_QUANT1 CURRENCY4 本月购入金额 S_AMOUNT1 CURRENCY5 本月自制数量 S_QUANT2 CURRENCY6 本月自制金额 S_AMOUNT2 CURRENCY7 本月投资转入数量 S_QUANT3 CURRENCY8 本月投资转入金额 S_AMOUNT3 CURRENCY9 本月盘盈数量 S_QUANT4 CURRENCY10 本月盘盈金额 S_AMOUNT4 CURRENCY11.分类出库表(STOCK2) 序号索引名称索引域唯一? 主索引? 1 S1_SERIAL +S_SERIAL;S_MONTH Y Y序号中文名称英文名称类型备注 1 物品序号 S_SERIAL INT->long 系统内部唯一标识该物品 2 帐本月份 S_MONTH INT3 本月领料数量 S_QUANT1 CURRENCY4 本月领料金额 S_AMOUNT1 CURRENCY5 本月调拨数量 S_QUANT2 CURRENCY6 本月调拨金额 S_AMOUNT2 CURRENCY7 本月报损数量 S_QUANT3 CURRENCY8 本月报损金额 S_AMOUNT3 CURRENCY9 本月盘亏数量 S_QUANT4 CURRENCY10 本月盘亏金额 S_AMOUNT4 CURRENCY12.帐类统计表(STOCK3) 序号索引名称索引域唯一? 主索引? 1 S3_SERIAL +S_DAY;+S_SERIAL;+S_DEPART Y N序号中文名称英文名称类型备注 1 类别序号 S_SERIAL INT 取自表CLASS2 帐类序号 S_DEPART INT 取自表KIND3 帐本月份 S_DAY INT4 数量 S_QUANT1 CURRENCY 该类别本帐类数量合计5 金额 S_AMOUNT1 CURRENCY 该类别本帐类金额合计13.供应商供应报表(STOCK5) 序号索引名称索引域唯一? 主索引? 1S5_SERIAL +S_DAY;+S_SERIAL;+S_DEPART Y N序号中文名称英文名称类型备注 1 物品序号 S_SERIAL INT->long 供货物品,取自表GOODS 2 供应商序号 S_DEPT INT 供货单位,取自表DEPART 3 帐本月份 S_DAY INT4 数量 S_QUANT CURRENCY 供货数量合计5 金额 S_AMOUNT CURRENCY 供货金额合计14.部门领料报表(STOCK6) 序号索引名称索引域唯一? 主索引? 1S6_SERIAL +S_DAY;+S_SERIAL;S_DEPART Y N序号中文名称英文名称类型备注 1 物品序号 S_SERIAL INT->LONG 部门领料物品;取自库GOODS 2 部门序号 S_DEPART INT 领料部门;取自库DEPART 3 帐本月份 S_DAY INT4 数量 S_QUANT1 CURRENCY 领料物品数量合计5 金额 S_AMOUNT1 CURRENCY 领料物品金额合计15. 供应商应付帐汇总表(SupplyPay) 序号索引名称索引域唯一? 主索引?1 Supply_index +P_month;+P_DSerial Y Y序号中文名称英文名称类型备注 1 供应商编号 P_DSerial integer 唯一对应供应商 2 月份序号 P_Month integer 年*12+月 3 月初应付金额 P_MBOAmt currency4 本月累计应付金额 P_MTOAmt currency5 年累计应付金额 P_YTOAmt currency6 本月累计已付金额 P_MTPAmt currency7 年累计已付金额 P_YTPAmt currency16.供应商应付帐明细表(SupplyPayDetail) 序号索引名称索引域唯一? 主索引? 1 PD_DSerial +PD_Month+PD_DSerial; N N 2 PD_LSerial1 PD_LSerial1 Y N序号中文名称英文名称类型备注 1 供应商编号(主索引2) PD_DSerial integer 唯一对应一个供应商 2 帐目日期 PD_Date date 入库单日期 3 入库月份(主索引1) PD_Month integer 年*12+月 4 入库帐流水号 PD_LSerial1 long5 应付金额 PD_OAmt currency6 已付金额 PD_PAmt currency7 付帐标志 PD_OPFlag boolean default,false应付金额=已付金额,True17.月末平均物品月合计表(GGether) 此表的内容仅对月末平均的物品进行统计,统计是在物品的入库帐计帐时进行。

数据库表结构设计参考

数据库表结构设计参考
该表为基础码表,小表
表名
文件登记表(Files)
列名
数据类型(精度范围)
空/非空
约束条件
ID
变长字符串(50)
N
收发类型
Int
N
收文、发文、签报
信件编号
Int
N
文件条码
变长字符串(50)
来文时间
变长字符串(50)
来文单位
变长字符串(100)
来文文号
变长字符串(100)
成文时间
Datetime
文件名称
变长字符串(50)
外键
创建人
变长字符串(50)
外键
创建时间
Datetime
修改部门
变长字符串(50)
外键
修改人
变长字符串(50)
外键
修改时间
Datetime
信件内容?
是否直送?
直送列表码?
序列号?
补充说明
该表记录数大,此信件表删除时的Trigger转移到信件历史记录表
表名
信件历史记录表(LetterHistory)
Int
呼叫时间
Datetime
补充说明
该表对应功能不完善,最后考虑此表
表名
摄像头图像记录表(ScreenShot)
列名
数据类型(精度范围)
空/非空
约束条件
ID
变长字符串(50)
N
拍照时间
Datetime
N
取件人所属部门
变长字符串(50)
N
取件人用户名
变长字符串(50)
取件人卡号
变长字符串(50)
图片文件
列名
数据类型(精度范围)

数据库表结构设计

数据库表结构设计
第三范式(3NF) 在第二范式的基础上,消除传递 函数依赖,进一步减少数据冗余。
第一范式(1NF) 确保每列保持原子性,即每列不 可再分。
第二范式(2NF) 在第一范式的基础上,消除部分 函数依赖,将数据表分解为更小 的表,并建立适当的关联。
反规范化设计
反规范化设计的定义
反规范化设计是通过引入冗余数据来改进查询 性能和简化数据操作的设计方法。
反规范化设计的好处
提高查询性能、减少JOIN操作、降低数据不一 致的风险。
反规范化设计的注意事项
避免过度冗余、维护数据一致性和完整性、定期更新冗余数据。
第三范式与多范式设计
第三范式与多范式设计的定义
01
第三范式是满足第三范式的数据库表结构,而多范式设计是指
同时满足多个范式的数据库表结构。
第三范式与多范式设计的优势
数据模型设计
概念设计
根据需求文档,设计出满足业务需求的 概念模型,如实体关系图(ER图)。
VS
逻辑设计
将概念模型转换为逻辑模型,如关系模型 ,确定每个数据表的字段和数据类型。
表结构设计
表结构设计
根据逻辑模型,设计出具体的数据库表结构,包括字段名、数据类型、长度、约束等。
索引优化
根据查询需求,合理设计索引,提高数据查询效率。
数据库表结构设计
目录
• 数据库表结构设计概述 • 数据库表的要素 • 数据库表结构设计方法 • 数据库表结构设计实践 • 数据库表结构优化 • 数据库表结构设计案例分析
01
数据库表结构设计概述
数据库表的概念
数据库表是数据库中存储数据的结构 化组织,由行和列组成,类似于电子 表格。
每列定义了数据的属性或字段,如姓 名、地址等,而每行则包含具体的数 据记录。

数据库表结构设计

数据库表结构设计

数据库表结构设计1. 原始单据与实体之间的关系可以是一对一、一对多、多对多的关系。

在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体。

在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单证对应多个实体,或多张原始单证对应一个实体。

这里的实体可以理解为基本表。

明确这种对应关系后,对我们设计录入界面大有好处。

〖例1〗:一份员工履历资料,在人力资源信息系统中,就对应三个基本表:员工基本情况表、社会关系表、工作简历表。

这就是“一张原始单证对应多个实体”的典型例子。

2. 主键与外键一般而言,一个实体不能既无主键又无外键。

在E—R 图中, 处于叶子部位的实体, 可以定义主键,也可以不定义主键(因为它无子孙), 但必须要有外键(因为它有父亲)。

主键与外键的设计,在全局数据库的设计中,占有重要地位。

当全局数据库的设计完成以后,有个美国数据库设计专家说:“键,到处都是键,除了键之外,什么也没有”,这就是他的数据库设计经验之谈,也反映了他对信息系统核心(数据模型)的高度抽象思想。

因为:主键是实体的高度抽象,主键与外键的配对,表示实体之间的连接。

3. 基本表的性质基本表与中间表、临时表不同,因为它具有如下四个特性:(1) 原子性。

基本表中的字段是不可再分解的。

(2) 原始性。

基本表中的记录是原始数据(基础数据)的记录。

(3) 演绎性。

由基本表与代码表中的数据,可以派生出所有的输出数据。

(4) 稳定性。

基本表的结构是相对稳定的,表中的记录是要长期保存的。

理解基本表的性质后,在设计数据库时,就能将基本表与中间表、临时表区分开来。

4. 范式标准基本表及其字段之间的关系, 应尽量满足第三范式。

但是,满足第三范式的数据库设计,往往不是最好的设计。

为了提高数据库的运行效率,常常需要降低范式标准:适当增加冗余,达到以空间换时间的目的。

〖例2〗:有一张存放商品的基本表,如表1所示。

“金额”这个字段的存在,表明该表的设计不满足第三范式,因为“金额”可以由“单价”乘以“数量”得到,说明“金额”是冗余字段。

数据库表结构设计参考

数据库表结构设计参考
操作者
变长字符串(50)
操作时间
Datetime
补充说明
该表暂不用。
表名
信件地区邮编映射表(LetterAreaPostcode)
列名
数据类型(精度范围)
空/非空
约束条件
ID
变长字符串(50)
N
地区名称
变长字符串(50)
N
邮编
变长字符串(10)
N
补充说明
该表为基础码表,小表
表名
报刊常量表(Constant_Mgz)
约束条件
ID
变长字符串(50)
N
名称
变长字符串(50)
N
外键
投递号
变长字符串(255)
N
补充说明
该表记录数固定
表名
急件电话语音记录表(TelCall)
列名
数据类型(精度范围)
空/非空
约束条件
ID
变长字符串(50)
N
发送部门
变长字符串(50)
N
接收部门
变长字符串(50)
N
拨打电话号码
变长字符串(50)
创建者所属部门
变长字符串(50)
创建者
变长字符串(50)
创建时间
Datetime
修改者所属部门
变长字符串(50)
修改者
变长字符串(50)
修改时间
Datetime
数据库表结构设计参考
表名
外部单位表(DeptOut)
列名
数据类型(精度范围)
空/非空
约束条件
外部单位ID
变长字符串(50)
N
主键
类型
变长字符串(50)
N
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据库表结构设计参考.)表名外部单位表(DeptOut 约束条件非空空数据类型(精度范围) /列名外部单位ID N 变长字符串(50) 主键 N 变长字符串类型 (50)N 单位名称(255) 变长字符串 (50) 单位简称变长字符变长字符(255)单位全交换类交换、市机、直送、邮变长字符(50)N(6)单位邮变长字符变长字符(50))单位标英整排序(4)(50)交换变长字符变长字符(50)单位领变长字符单位电(50)变长字符所属城(50)变长字符(255)单位地备(255)变长字符补充说300条左右,一般不做修改。

初始化记录该表记录数表外部单位子表DeptOutSu数据类型(精度范围列非约束条变长字符(50)外部子单IDN外ID变长字符(50)N单位名N变长字符(255)变长字符单位编(50)该表记录数一般很补充说表内部单位表DeptI数据类型(精度范围非列约束条IDN(50)变长字符主内部单类N变长字符(50) (255)变长字符N单位名(50)变长字符单位简变长字符单位全(255)工作职排序整(4)单位领导(50) 变长字符串 (50) 单位电话(分机)变长字符串 (255)变长字符串备注.条以内),一般不做修改。

维护一次后很少修改补充说明该表记录数较小(100内部单位子表(DeptInSub)表名约束条件数据类型(精度范围)空列名/非空 (50) N 变长字符串内部子单位ID变长字符串(50) 父ID N 外键 (255) 单位名称 N 变长字符变长字符(50)单位编领导、部变长字符(50)单位类Int排序该表记录数一般很补充说省、直辖市表Provinc表约束条数据类型(精度范围列非IDN变长字符(50)名外(50)N变长字符变长字符N(255)投递补充说该表记录数固表急件电话语音记录表TelCal数据类型(精度范围列非约束条NID变长字符(50)(50)N发送部变长字符N接收部变长字符(50)拨打电话号(50)变长字符变长字符拨打内(50)Int呼叫次Datetime呼叫时该表对应功能不完善,最后考虑此补充说表摄像头图像记录表ScreenSho数据类型(精度范围非约束条列变长字符(50)NIDN拍照时Datetime取件人所属部N变长字符(50)取件人用户名变长字符串 (50)取件人卡号变长字符串 (50)BLOB/Image图片文件.该表记录数可能较多,并且有大对象补充说明BoxSet)表名箱体设置表(约束条件列名空/非空数据类型(精度范围) (50) N ID 变长字符串Int 主控箱体号 NInt分控箱体号 N变长字符(50)箱体名变长字符所属部门名(50)外ID变长字符(50)控制用该表记录数比实际分控箱体数略多,小补充说表信件表Letter数据类型(精度范围非约束条列N变长字符信ID(50)收N变长字符(50)发N信件类挂号变长字符(50)交汇款(50)信件年变长字符变长字符(50)信件条一维条变长字符(50)信件信件条码的单元变长字符(255)接收单变长字符(255)接收二级单外变长字符(50)接收人名变长字符(50)箱体(50)变长字符箱体单(255)变长字符发送单(50)变长字符密变长字符(50)紧急程Datetime限制时(50)变长字符大宗变长字符(255)备变长字符箱状(50)登变长字符外(50)创建部创建时Datetime(50)变长字符外修改部修改变长字符(50)外键修改时间 Datetime信件内容?是否直送?直送列表码?序列号?转移到信件历史记录表该表记录数大,此信件表删除时的Trigger补充说明)信件历史记录表(表名LetterHistory约束条件列名空/数据类型(精度范围)非NID信变长字符(50) (50)N变长字符发收变长字符(50)汇款挂号交信件类N(50)变长字符信件年变长字符信件条(50)一维条信件变长字符(50)信件条码的单元变长字符(255)接收单(255)接收二级单变长字符(50)接收人名外变长字符变长字符箱体(50)变长字符(50)箱体单发送单(255)变长字符变长字符密(50)变长字符(50)紧急程Datetime限制时(255)变长字符备登箱状变长字符(50)外变长字符创建部(50)变长字符(50)创建外创建时Datetime修改部(50)变长字符外修改外(50)变长字符修改时Datetime该表记录数大,由原来的信件表删除时补充说Trigge转移到此表信函流程跟踪表LetterTrac数据类型(精度范围列非约束条变长字符(50)IDN变长字符(50)N信ID外连接信函变长字符(100)条/??? 变长字符串(50) 登记流程类型外键(50) 变长字符串创建部门(50) 变长字符串创建人外键 Datetime创建时间.该表记录数较小,因为模板一般用户自定义的个数不会太多补充说明LetterBulkTpl)表名大宗发信模板表(约束条件数据类型(精度范围)空/列名非空N 变长字符串(50) 模板ID(50)模板名N变长字符N选择单位类外变长字符(50)外N单位名变长字符(255)(50)变长字符二级单位名变长字符(50)单位用户顺序Int补充说该表记录数较小,因为模板一般用户自定义的个数不会太发信排序表表LetterOrde非列约束条数据类型(精度范围(50)N变长字符ID变长字符(50)N发送方N外变长字符单位名(50)N外信ID变长字符(50)(50)清单变长字符变长字符排序单(50)排序用户变长字符(50)排序时Datetime补充说该表记录数普通,使用扫描枪录入。

清单号自动生成LetterOrderHistor发信排序历史表表约束条列非数据类型(精度范围补充说与发信排序表相同表大宗发信表LetterBul数据类型(精度范围非约束条列N(50)变长字符发件单外N(50)变长字符大宗补充说大宗号唯一表名信函投箱表(LetterBox)约束条件非空/空数据类型(精度范围)列名N ID 变长字符串(50)N 信件ID 外键变长字符串(50)(50) 变长字符串信件条码变长字符串(50) 箱体名称主控号 IntInt分控号(50) 状态箱中变长字符串 (50) 变长字符串投箱者部门变长字符投箱(50)投箱时Datetime变长字符(50)外箱体所属部(50)变长字符清单备变长字符(255)补充说表信函投箱历史表LetterBoxHistor数据类型(精度范围非列约束条ID变长字符(50)N外信ID变长字符(50)N变长字符(50)信件条箱体名(50)变长字符Int主控分控Int(50)变长字符箱状投箱者部变长字符(50)变长字符(50)投箱Datetime投箱时(50)箱体所属部外变长字符变长字符(50)清单(255)备变长字符开箱取件者部变长字符(50) 变长字符取件(50)取件时Datetime补充说信函投箱表删除时转移到此表名发信IC卡表(LetterIC)数据类型(精度范围)空/非空列名约束条件变长字符串ID (50) NN(50)变长字符串卡类型IC.N 外键变长字符串清单号 (50)N 外键变长字符串(1000) IC卡内容字符串写卡单位变长字符串(50)变长字符串(50) 写卡人Datetime 写卡时间该表暂不用。

补充说明公文转信函表File2Lette表约束条非数据类型(精度范围列N(50)变长字符文ID外变长字符(50)N文件条文外变长字符(50)NIDIntN文件数N变长字符信ID(50)外N变长字符信件条(50)变长字符(50)信件(255)变长字符操作者所属单操作变长字符(50)操作时Datetime补充说该表暂不用LetterAreaPostcod表信件地区邮编映射表约束条非数据类型(精度范围列N变长字符ID(50) N地区名(50)变长字符N变长字符(10)邮该表为基础码表,小补充说表报刊常量表Constant_Mg数据类型(精度范围非列约束条ID(50)N变长字符变长字符(50)N类变长字符(50)名N变长字符(50)排序Int补充说该表为基础码表,小表名报刊基础表(Magazine)数据类型(精度范围)空/非空列名约束条件 N(50)变长字符串IDN (50) 变长字符串报刊名称变长字符串(50) N 邮发代号报纸、期刊杂志变长字符串/期刊 (50) 报纸单价两位小数两位小数年价外键语言变长字符串(50)邮发、自办变长字符串(50) 邮发类型外键报刊类型 (50) 变长字符外变长字符(50)刊出版变长字符(50)电变长字符(50)(50)变长字符栏目介变长字符(255)内容简变长字符(50)地该表为基础码表,小补充说表文件登记表File数据类型(精度范围非列约束条N变长字符(50)IDN收文、发文、签收发类IntN信件编Int变长字符文件条(50)(50)变长字符来文时变长字符(100)来文单来文文(100)变长字符成文时Datetime文件名变长字符(50)变长字符文件标(255)变长字符主题词(关键字(255)变长字符收文文(255)办件收通Int收文类Int文件页Int文件份Int文件复印份外变长字符密(50)(50)紧急程外变长字符文件号范002-00如变长字符(50)0不是否限1Int限时Datetime限时时间外键(50) 变长字符串连接文件批示表ID 批示表变长字符串县团级公开/(50) 发布层次/省军级等 (1000) 变长字符串主送单位变长字符串抄送单位 (1000)(255) 拟稿单位变长字符串变长字符串(50) 拟稿电话拟稿人变长字符串(50)拟稿时间 Datetime变长字符串核稿单位 (255)(50) 核稿人变长字符串核稿时间Datetime变长字符(255)会签单会签(50)变长字符Datetime会签时0是否办未1Int 已办变长字符办结单(255)办结变长字符(50)Datetime办结时排版变长字符(50)(50)校对变长字符变长字符(255)审批单变长字符审批(50)审批电变长字符(50)Datetime审批时检查时备条码内变长字符(500)备变长字符(255)创建单(255)变长字符变长字符创建(50)创建时Datetime修改者单变长字符(255)修改变长字符(50)修改时Datetime该表记录数与实际文件流转业务相关,主要的表,大表补充说表文件登记文号表FileN数据类型(精度范围非列约束条ID(50)变长字符N文件登NInt收文、发文、签IDIntN文变长字符文件类(50)Int文号年文号顺序Int备注(255) 变长字符串(50) 创建者所属部门变长字符串(50) 创建者变长字符串Datetime创建时间.变长字符串(50) 修改者所属部门修改者 (50) 变长字符串Datetime 修改时间补充说明从表,一份文件对应多个文号的情况。

相关文档
最新文档