我是 SQL 新手,可以使用一些帮助来为我的程序创建数据库模式,该程序为我的家庭网络管理和安装程序。是否有创建数据库模式的指南/教程?
2 回答
在你设计你的模式之前,你需要理解的最重要的概念(你以后会感谢自己的,相信我!:-) 可能是规范化。db.grussell.org上的教程看起来并不太寒碜,会给你一个很好的基础。事实上,如果您单击“Up One Level”链接并环顾四周,其他一些信息也可能非常有用。
我的“重要提示”是:在开始编写代码之前,将其写在纸上或记事本或数据库以外的任何东西上。在将其设置为一成不变之前,请先了解您需要架构能够做什么(并且通过“一成不变”,我的意思是,意识到您已经针对架构编写了大量代码,这些代码必须如果您将其更改为执行您刚刚意识到您现在需要的操作,请重新编写)。
设计数据库是一个独立的研究领域和专业知识。它不能浓缩为一个答案。由于您对教程感兴趣,请查看任何有关数据库管理系统的教科书中的数据库设计部分。我会推荐 Database System Concepts,5e,Abraham Silberschatz,Henry F.Korth,Sudarshan
在数据库设计中,记住以下几点
1) 您正在识别您的家庭网络中感兴趣的重要对象。尽量避免过度沉迷于流程本身,尽管它们对于识别您需要捕获的重要数据单元很重要
2) 使用 ER/UML 建模技术提出数据模型图/设计。有许多案例工具可以帮助您绘制此图。
3) 使用数据库规范化的原则来微调你的模式以避免数据冗余。冗余数据会导致以下副作用:无法保持冗余数据之间的一致性,无法以优雅的方式存储某些数据
3) 将您的设计前向工程为您选择的数据库的 DDL 语句。大多数案例工具都支持这一点。
案例工具:
- 微软视觉
- 急诊室(非常昂贵)
- TOAD 数据建模器
还有很多开源工具。你可以试试迪亚。这不支持正向工程