数据库设计方法总结

本文介绍了数据库设计中的三范式原则,包括字段不可分、非主键直接依赖于主键及避免传递依赖等内容,并通过实例说明了如何应用这些原则进行表结构设计。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.  三范式

         a.  字段不可分

         b.  非主键直接倚赖于主键(确定主键)

         c.  非主键不能有传递信赖(多个实体要拆表)


       范式的优点:减少数据冗余

       范式的缺点:表多,操作难,性能差。

       以空间换时间。


2. 要用多少个表存储哪些信息,再考虑每个表要用哪些字段,最后考虑每个字段要用什么类型存储,还有就是考虑表的主键以及表与表之间的关联。最后,要考虑后期系统表的扩展。



3.  主键、外键和索引的区别(primary key \ foregner key \index)

                unique key: 主要是用来防止数据插入的时候重复的。

                index/key: 作用相同,都是创建索引


DROP TABLE IF EXISTS `S64`.`T6412`;
CREATE TABLE `S64`.`T6412` (
  `F01` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增ID',
  `F02` int(10) unsigned NOT NULL COMMENT '优选理财计划ID,参考T6410.F01',
  `F03` int(10) unsigned NOT NULL COMMENT '付款用户ID,参考T6110.F01',
  `F04` int(10) unsigned NOT NULL COMMENT '收款用户ID,参考T6110.F01',
  `F05` int(10) unsigned NOT NULL COMMENT '交易类型ID,参考T5122.F01',
  `F06` int(10) unsigned NOT NULL COMMENT '期号',
  `F07` decimal(20,2) unsigned NOT NULL COMMENT '金额',
  `F08` date NOT NULL COMMENT '应还日期',
  `F09` enum('WH','YH') NOT NULL COMMENT '状态,WH:未还;YH:已还;',
  `F10` datetime DEFAULT NULL COMMENT '实际还款时间',
  PRIMARY KEY (`F01`),   // 主键
  UNIQUE KEY `F02_UNIQUE` (`F02`,`F03`,`F04`,`F05`,`F06`),   //唯一性索引
  KEY `F05` (`F05`),        // 创建索引
  KEY `F03` (`F03`),
  KEY `F04` (`F04`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='优选理财还款记录';

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值