sql - tbl_Product、tbl_Order 命名约定的目的是什么?

标签 sql naming-conventions

在我使用过的最后两个代码库中,我已经看到 tbl_ 前缀装饰了所有表。我想不出它们对应用程序开发人员或数据库管理员有用的任何理由。

如果 DBA 需要查看哪些对象是表,他们总是可以连接到 DMV 或 master 中的模式表,对吗?我也想不出它们对程序员有什么用处,如果项目使用 ORM 工具,则更是如此。

即使在编写存储过程时,它们似乎也很碍事。

任何人都可以以非主观的方式解释它们如何有用吗? Ex(让 tbl_ 帮助我执行 x 任务)

最佳答案

我一遍又一遍地听到同样的事情,原因是,这有助于他们了解对象的类型。

例如,在查询中,使用前缀可以帮助他们将表与 View 分开。

我真的不同意这一点。在习惯了数据库模式后,前缀变得多余,并且就像所有多余的东西一样,它可能变得不同步或使更改更难进行。

假设您有一张 table ,无论出于何种原因,您都必须将其拆分为两张 table 。
假设您决定创建一个 View 来模拟从两个新表中选择数据的原始表。

您是要在整个代码库中重命名还是坚持使用前缀为 tbl_ 的 View ?

所以我的观点是数据库对象名称应该 而不是 有任何前缀来推断它们的类型。

关于sql - tbl_Product、tbl_Order 命名约定的目的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1316289/

相关文章:

javascript - JavaScript 中对象内部函数的命名约定?

css - 我可以使用下划线开始 CSS 选择器 ID 或类吗?

naming-conventions - 迭代的最佳名称集?

sql - 比较 2 个表中的数据

sql - Oracle PL/SQL 中的 For In 循环

Linux 库命名约定 : Capitalization?

language-agnostic - 您使用的最常见的方法/变量/类名称是什么?

php - MySQL Process List - 提高性能 - 锁定问题

使用多个表的 SQL Server 更新

sql - 以天 :Hours:Mins:Seconds format 计算 SQL 中的 DateDiff