【问题标题】:Learning database design with EF code first先用EF代码学习数据库设计
【发布时间】:2012-03-26 07:40:30
【问题描述】:

为了掌握有关如何使用 EF 代码优先实现结构良好的数据库模型的体面知识,应涵盖哪些主题? (假设之前没有任何关于 SQL\databases 的知识,但已知 C# 和基本 EF 技术)

参考有关所需主题的文献可能会有所帮助。

【问题讨论】:

  • 这不是您问题的答案,但老实说,我认为您不会使用代码优先学习任何有关数据库设计的知识。事实是,代码优先适用于那些不想浪费时间进行数据库设计而只想深入研究并开始削减代码的人。良好的数据库设计是关于了解哪些信息对您的应用程序很重要,以及应该如何构造这些信息的存储和检索,以使您的代码灵活且易于维护。这类工作应该在编码之前完成。
  • 谢谢乔尔。那么,让我纠正我的问题,将学习要求减少到学习数据库基础知识、结构、关系,然后是仅通过代码实现数据库模型的能力。我意识到纯粹的设计方面需要的不仅仅是 Code First 是关于……Tnks。
  • 也许更多关于我的问题来自哪里:我在开发领域非常新。在学习了一段时间后,我已经说明了第一个项目。我首先使用代码来构建一个不那么复杂的数据库,但随着时间的推移,我确实遇到了一些与我的模型相关的系列问题,我想这是关于如何实现健康的数据库模型的非常松散的知识……
  • 我要说的两条最重要的建议是了解什么是“第三范式”并采用面向对象的方法来设计表格。我的意思是首先为您的系统保存数据的每个有形或抽象事物制作一个表格。考虑如何对应用程序的现实进行建模,而不是直接考虑如何访问数据。数据库和您的 ORM 将担心访问策略。如果您的数据模型符合您的应用所使用的实际情况,那么您可能走在正确的轨道上。
  • 给自己买一本像Database Design for Mere Mortals这样的好书,通读一遍,应用你所学的,再读一遍,反思你读过的东西,并通过实践获得数据库设计经验它(并从你的错误中学习)。这是唯一的出路,真的。

标签: database-design ef-code-first


【解决方案1】:

要学习理论我可以推荐以下文字:

  • C.J.Date, Addison Wesley 的数据库系统简介

在您坐在键盘前之前,您需要了解规范化直至 BCNF。这在本书的第 1 部分中有大量示例。

我建议在您的个人计算机上安装一个 DBMS,例如 MySQL,以完成一些实际示例。这将帮助您了解 SQL 的工作原理以及如何访问和操作数据库系统中的数据。以下文本中包含的示例非常棒,并且充满了一流的行业经验:

  • SQL For Smarties,Joe Celko(以及他的所有其他书籍,尤其是拼图书籍),Morgan Kaufman

为了学习 ADO.NET Entity Framework,我会先通读 MSDN 中的文本,然后用最近的 ADO.NET 4 参考手册对其进行补充。

  • 由 O'Reilly 的 Julia Lerman 编写的实体框架编程

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-27
    • 2018-09-18
    • 2012-08-12
    • 1970-01-01
    相关资源
    最近更新 更多