Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 专门用于排序的列的命名约定_Sql_Database_Language Agnostic_Naming Conventions - Fatal编程技术网

Sql 专门用于排序的列的命名约定

Sql 专门用于排序的列的命名约定,sql,database,language-agnostic,naming-conventions,Sql,Database,Language Agnostic,Naming Conventions,比如说,我们有一组记录,这些记录应该用一种非平凡的排序方法进行排序,例如。G自然排序或仅按用户定义的特定顺序排序。我们必须推出一个专门用于订购的专栏 对这些列的命名是否有或多或少的共同约定?你用什么名字?我看到了序列以及排序器的使用。就我个人而言,我更喜欢序列,因为它意味着唯一性。当我们试图避免这些类型的构造时,正如您发现的,有时它是最短和最好的解决方案 我们通常称之为SortSequence或UserSortOrder,但我没有看到关于命名的任何特定约定(通常是因为排序通常来自其他数据,而不是

比如说,我们有一组记录,这些记录应该用一种非平凡的排序方法进行排序,例如。G自然排序或仅按用户定义的特定顺序排序。我们必须推出一个专门用于订购的专栏


对这些列的命名是否有或多或少的共同约定?你用什么名字?

我看到了
序列
以及
排序器
的使用。就我个人而言,我更喜欢序列,因为它意味着唯一性。

当我们试图避免这些类型的构造时,正如您发现的,有时它是最短和最好的解决方案


我们通常称之为SortSequence或UserSortOrder,但我没有看到关于命名的任何特定约定(通常是因为排序通常来自其他数据,而不是明确的东西…),只要名称有意义,并且(如果您在其他地方这样做的话)是一致的,这正是我努力追求的。

我个人对字段使用任何逻辑名称。我在任何地方都没有看到特定字段的名称,但是,我尝试确保名称不是mysql保留关键字之一,这样我就不会到处使用反勾字符
`

另外,MySQL通常不区分大小写。所以“mytable”和“mytable”对于MySQL是相同的。在某些平台下,我相信您可以将MySQL配置为区分大小写,但如果您想将数据库移植到其他平台,那么这样做会造成潜在的可移植性问题

资源到命名约定:


对于表示相对但任意的排序方式的列,我使用
SortOrder
Sequence
来表示应该是连续且没有间隙的值。因此,
SortOrder
的值可能是10、20、99,但
序列的值可能永远不会。我可能有一个
SortOrder
,比如一个货币列表,某些货币出现在顶部,但在订单或发票行项目上有一个名为
Sequence
的列。

我会在
Sequence
上使用
SortOrder
,因为序列是由一些供应商提供的(Oracle,PostgreSQL)提供自动递增/标识功能。SortOrder更清楚/明确地说明了列的用途。

正如其他人所指出的,没有命名此类列的真正标准


我的偏好倾向于“序号”(或秩),但我认为只要有人能够查看表定义,并且他们能够找出一列代表的数据,那么我认为您是好的

我一直使用
Sequence
SequenceHint
来处理这类事情。