因此,对于每个表都有一个id,通常是int(11)Auto inc,而不是null。
当我在学校时,我主要将其命名为id,
然而,当我遇到更复杂的数据库设计时,我发现如果我使用“id”,我必须在选择查询中做更多工作
例如,有一个表“customer”,“customer_group”
所以我只是得到客户和他的customer_group信息:
SELECT *
FROM customer
JOIN customer_group
ON customer.group_id = customer_group.id
请注意,将有两个id返回,如果我想区分它们,我需要这样做:
SELECT customer.id AS cid
,customer_group_id AS cgid
,customer.NAME
,.......
FROM customer
JOIN customer_group
ON customer.group_id = customer_group.id
这使得工作非常繁琐,查询很长。所以,我想知道命名id的做法是什么,我应该使用table_name +“id”来命名吗?谢谢
答案 0 :(得分:1)
我们可以使用aliasing做这样的事情,以减少它的繁琐和可读性。
SELECT c.id AS cid
,customer_group_id AS cgid
,c.NAME
,.......
FROM customer c
JOIN customer_group cg
ON c.group_id = cg.id
在为ID命名的情况下,ID的最佳实践是基于意见或基于实施标准。根据情况,每种方法的好处各不相同。
通常,ID
的{{1}}应为X Table
,但在其他表中使用时,请将ID
称为外键,它将成为Y Table
}
因此,这将在Y表中清楚地表明此X_ID引用(来自)X表的X_ID
命名约定是根据开发人员的方便定义的,然后它变成了方法论,后来它将成为标准。 但是,这也会影响我们发展环境的变化。
我会建议它的商业项目是否按照标准选择命名约定。
如果是个人项目,请选择适合您习惯的项目..