首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >YAGNI和数据库创建脚本

YAGNI和数据库创建脚本
EN

Stack Overflow用户
提问于 2010-06-18 13:35:58
回答 2查看 139关注 0票数 3

现在,我有代码在我的主数据库访问类中创建数据库(在SQLite数据库上创建几个查询)。这似乎没有必要,因为我不打算使用代码。如果出了问题,我就需要它,我需要重新创建数据库。我该不该..。

尽管数据库创建代码大约是我文件大小的四分之一,但

  1. 仍然保持原样,
  2. 将数据库创建代码移动到单独的脚本中。无论如何,如果我需要再次运行它,我很可能会手动运行它,这会使我在编写主代码时失去意识。
  3. 删除数据库创建代码,如果我再次需要它,则依赖于修改控制。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-06-18 13:45:56

我认为最好还是遵守密码。更重要的是,每次数据库模式更改时,您都应该维护这段代码(或者生成它)。

这是重要的,因为以下原因。

  1. 你可能会惊讶于你有多少次需要它。如果您需要迁移您的服务器,或者设置其他环境(例如,测试或演示),等等。
  2. 我还发现在编写代码时经常引用DDL SQL,特别是当我有一段时间没有接触系统时。
  3. 您可以引用您所做的决策,如您创建的索引、唯一键等。

如果您没有严格的方法来处理这个问题,我已经发现数据库模式会随着时间的推移而随着时间的推移而变化,这可能会导致一些模糊的问题,直到您访问数据库时才会发现这些问题。更糟糕的是,如果没有有纪律的方法(即模式的引用定义),您可能会发现不同的数据库有不同的模式。

票数 3
EN

Stack Overflow用户

发布于 2010-06-18 13:47:14

,如果出了问题,我就需要它,我需要重新创建数据库。

重新创建数据库绝对不是例外情况。该代码是新/不同系统上部署过程的一部分,它代表了您的代码希望使用的DB结构。实际上,您应该进行集成测试来确认这一点。在开发过程中无限期地使用单个DB服务器的模式是通过手动分派的SQL语句增量创建的,您不应该依赖它。

但是是的,它应该与访问代码分开;所以选项2是正确的。然后,测试和部署都可以使用独立的脚本。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3070053

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档