命名视图的最佳实践 [关闭]

Posted

技术标签:

【中文标题】命名视图的最佳实践 [关闭]【英文标题】:Best Practices on naming Views [closed] 【发布时间】:2012-08-10 20:16:55 【问题描述】:

例如,我有一个表名 Cars_Import

我需要一个将被调用的视图,该视图抓取要导入的数据,然后运行该视图并执行将数据导入 Cars_Import 表的工作。

我的问题是,我不能将视图命名为相同,我必须区分它,因为我猜 SQL Server 将同名对象视为冲突,无论它是什么类型的对象。

因此,对于普遍接受的命名约定的最佳实践,当您有 2 个真正相互关联的对象时,我知道在名称中附加 tbl、vw 等内容并不是一个好习惯,您会在这里建议什么作为与 Cars_Import 相关的视图名称?

例如,我不希望视图切换它会起作用,但对我来说似乎很乱,例如 Import_Cars

那么,关于命名表及其相关视图的建议是什么?这些视图将从该表中获取我们需要的所有数据?没有业务逻辑,它只是抓取数据,我们将把它导入数据仓库,所有数据都是最初的样子。

【问题讨论】:

我从未听说过有人反对 sql-server 中的匈牙利语(vw 前缀等)表示法,尤其是对于像视图这样的对象。如果您不能以视图的本质命名视图(例如,如果它是两个表的视图,则为表命名),那么我只需使用前缀。 您能否添加一个术语来说明视图存在的原因,例如Cars_Import_InProcessCars_Import_Transfer? 【参考方案1】:

视图实际上是一个我不介意描述它是什么的前缀或后缀的地方。与比较表或存储过程时(因为它们的使用方式不同)很明显不同,表和视图在很大程度上是可互换的。所以我发现这种区分在逆向工程或对代码进行故障排除时会很有帮助(我说的是当你在一段代码中遇到名称时,而不是通过对象资源管理器浏览对象,这使得事情在定义上更加明显)。

您的命名方案由您决定,您在这里基本上不会得到“正确”的答案,除了您应该始终如一地单方面地应用您的约定,并尽您所能确保您的全部时间购买并遵循它。但我会说我不会对这样的事情犹豫不决:

Table: dbo.Cars_Import
View:  dbo.View_Cars_Import

但对我来说,这似乎意味着视图可能只是位于表格上方的东西(例如美化输出、添加或隐藏列等),而不是提供表格的东西。所以我有点同意@HABO 的观点,也许有更好的方法来命名这个视图来描述它的作用。

【讨论】:

是的,这就是我想的......你必须使用一些东西来区分视图......除非有人有更好的方法来对视图进行命名,似乎这是唯一的方法。 我想我可以做 Import_All_Cars 这将比仅仅 Cars_Import 或 Import_Cars 作为视图名称更有意义。我来自 OOP 背景,正确的做法是将方法命名为他们所做的事情,因此它是自读的。我会将同样的应用到数据库

以上是关于命名视图的最佳实践 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

命名 cookie - 最佳实践 [关闭]

创建数据模型的最佳实践 [关闭]

Android strings.xml 最佳实践? [关闭]

iOS ViewController 生命周期最佳实践 [关闭]

为 iphone 4s 和 5/5c/5s 屏幕尺寸开发的最佳实践 [关闭]

链接到 Microsoft 编码标准/最佳实践文档?