找回密码
 立即注册

QQ登录

只需一步,快速开始

mfkpie8

银牌会员

283

主题

1261

帖子

3968

积分

银牌会员

积分
3968

微信认证勋章

mfkpie8
银牌会员   /  发表于:2019-5-21 11:24  /   查看:2243  /  回复:6
第三范式3NF
可以做映射 方便后期运维,

表1:
产品代号      名称
001                 鞋子


表2:
销售订单表身产品代号                 数量

001                                                       2





实际表的业务为

select * from 表1,表2 where 表1.产品=表2.产品

这样在表2存值的时候就只存 代号不存其名称,名称不新建列值只是一个映射  
不然存在于数据库的名称又是静态的,如果发生改变还得触发对产品名称的改变

6 个回复

倒序浏览
Tracy.Liu讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2019-5-24 12:29:15
推荐
您好,您这个问题的话,我觉着可以百度一下,然后学习一下关于数据库设计的知识呐~
这里贴出来了大家的讨论内容哦~
活字格 3NF讨论
https://gcdn.grapecity.com.cn/fo ... 8&fromuid=52377
(出处: 葡萄城产品技术社区)
回复 使用道具 举报
cg6207悬赏达人认证 活字格认证
金牌服务用户   /  发表于:2019-5-21 11:50:26
沙发
在表2中显示名称:
select 表2.*,表1.名称 FROM 表2 LEFT JOIN 表1 ON 表1.产品代号 = 表2.销售订单表身产品代号

在表1中显示产品销量
SELECT 表1.*,SUM(表2.数量) AS 销量 FROM 表1
LEFT JOIN 表2 ON 表1.产品代号 = 表2.销售订单表身产品代号
GROUP BY 表1.产品代号
回复 使用道具 举报
Simon.hu讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2019-5-21 14:30:28
板凳
你说的和第三范式是,更多的是要做表设计吧?
就是不要有数据的冗余
回复 使用道具 举报
mfkpie8
银牌会员   /  发表于:2019-5-23 17:19:24
地板
Simon.hu 发表于 2019-5-21 14:30
你说的和第三范式是,更多的是要做表设计吧?
就是不要有数据的冗余

对对我们填报数据 分为   写入数据与展示     那么我们这样就可以如果用第三范式的模式来做这个呢!全部用视图的方式 做这个框架吗?请教
回复 使用道具 举报
Simon.hu讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2019-5-24 10:22:41
5#
首先,表就是按照您的说法来创建


在活字格中,要做的只是设置关联字段


设置好了以后,就可以只从ID关联显示出产品的其他信息了


然后产品表只要修改这个订单就会随时跟着修改啦~

其实这个就是我们的关联字段,其实您的这个需求应该更像是主从表,那我就把主从表的教程给您,其中也是有关联的意思的,
有关这边的教程:https://help.grapecity.com.cn/pa ... ion?pageId=23594263

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
宋小猫悬赏达人认证
中级会员   /  发表于:2019-5-24 11:31:00
6#
我也想尝试用3NF做数据表 很容易设计 不过换到活字格里感觉脑袋秀逗了 不会搞呢 希望小兔姐姐和胡老板可以来堂公开课啊

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部