我想知道人们对数据库表中ID列命名的看法.
如果我有一个名为Invoices的表,其中包含一个标识列的主键,我会调用该列InvoiceID,这样我就不会与其他表发生冲突,而且它显然是什么.
我工作的当前他们已经调用了所有ID列ID.
所以他们会做以下事情:
Select
i.ID
, il.ID
From
Invoices i
Left Join InvoiceLines il
on i.ID = il.InvoiceID
Run Code Online (Sandbox Code Playgroud)
现在,我在这里看到一些问题:
1.你需要在select
2 上对列进行别名.ID = InvoiceID不适合我的大脑
3.如果你没有别名表并且提到InvoiceID那么显然是什么表它开着?
关于这个话题的其他人的想法是什么?
说我有一张叫做学生的桌子.您更喜欢哪些列的命名约定?你也可以推荐自己的.
Student
-------
StudentID
StudentName
MentorID
Student
-------
StudentID
Name
MentorID
Student
-------
ID
Name
MentorID
Run Code Online (Sandbox Code Playgroud) 一位朋友告诉我,我应该将表名包含在同一个表的字段名中,我想知道为什么?它应该是这样吗?例:
(Table) Users
(Fields) user_id, username, password, last_login_time
Run Code Online (Sandbox Code Playgroud)
我看到前缀'user_'是没有意义的,因为我知道它已经是一个用户.但我也想听听你的意见.注意:我在php,mysql中编程.
您是否在具有缩写表名的表中为每个字段添加前缀?
例:
Table: User
Fields:
user_id
user_name
user_password
Run Code Online (Sandbox Code Playgroud)
或者你是否将你的田地命名为最低限度?
Fields:
id
name
password
Run Code Online (Sandbox Code Playgroud)
如果您同时使用了这两种格式,那么从长远来看,您认为哪种格式对您最有帮助?
编辑:这个问题似乎没有明确的答案,双方都提出了好的观点.但是我已经把这个问题保持了很长时间,也许是时候将一个答案标记为已被接受.因此,我被认为是被接受的最高票数.