数据库表设计是否需要在字段前标注字段的所属对象,比如用户表的名字是 user_name,学校表的名字字段是 school_name

2021-04-14 22:06:57 +08:00
 Renco

这样写法会不会过于冗余。

9228 次点击
所在节点    程序员
102 条回复
AlexWIT
2021-04-15 12:33:59 +08:00
@feifanhanmc 笑拉了,没十年脑血栓想不出来这缩写
no1xsyzy
2021-04-15 12:35:10 +08:00
@feifanhanmc 匈牙利命名法复刻,没想到这里还能看到不识好歹的
WilliamYang
2021-04-15 12:58:27 +08:00
代码整洁之道,多看看书,你就会有答案了
morimi2026
2021-04-15 13:01:51 +08:00
@feifanhanmc 命名要避免非通用的缩写,这样才有可读性。可读性高就维护起来就容易。
star7th
2021-04-15 13:53:50 +08:00
建议写,方便一眼看出这是什么字段。
Rwing
2021-04-15 13:57:23 +08:00
不加,另外一楼真的笑到我了
ychost
2021-04-15 14:00:52 +08:00
不加,join 的时候 as 一下就好了
deepmindlab
2021-04-15 14:04:26 +08:00
@feifanhanmc 这命名规范比我今天的粑粑还臭
newtype0092
2021-04-15 14:09:06 +08:00
@feifanhanmc V2 点赞功能太不人性化了,自己的点赞有提醒,别人喷自己的点赞却没有,这样想一个一个喷回去太麻烦了,咱们一起给站长提建议加上这个功能吧🐶
tairan2006
2021-04-15 14:09:42 +08:00
不用加,不过如果是为了避免数据库的保留字,可以加前缀
weiwenhao
2021-04-15 14:12:59 +08:00
建议都加上前缀,下面推荐一些好的写法


建议 map 字段命名:
public $publibUser = [
$userStringPublicName => "xxx",
$userIntPublicSex => 12,
$userIntPublicId => 1,
]

建议类命名
class User {

public PublicObjectUserInfo() {}
public PublicArrayUserList() {}
public PublicVoidUserUpdate {}
public PublicVoidUserCreate {}
public PublicVoidUserDelete {}
private _VoidAddUserSex{}
}

建议接口命名
api/users/12/user_posts (获取用户文章)

api/products/12/product_comments (获取商品评论)
caixiaomao
2021-04-15 14:13:33 +08:00
没必要 一般表名会体现 但是在关联表之类的会加上
CantSee
2021-04-15 14:17:46 +08:00
我们一般都是固定的:比如活动表.是一个固定前缀加英文 XXX_ACTIVE_BASE, 如果是活动条件表就是 XXX_ACTIVE_LIMIT
wupher
2021-04-15 14:54:08 +08:00
一般不需要。

除非你进行的是超大型项目,类似运营商 CRM 这类。表结构大,数据多,未来会上 N 多个 BI 、分析系统,主表如用户或者交易还经常会被各种联表、过程进行查询。上述情况,推荐添加。实际上,电信以及相应厂商的规范里面也写的很清楚。

正常一般应用,我是觉得 User.name 比 user.userName 好多了。
lvtuyukuai
2021-04-15 15:26:58 +08:00
1 楼赶紧回 M78 星云吧,地球已经没有怪兽了。
way2create
2021-04-15 15:37:27 +08:00
个人不喜欢加 特别是 id
ipwx
2021-04-15 15:41:22 +08:00
@c6h6benzene 如果只是 join,那么别名用 unit & user 不就行了。。。
dayudayupao
2021-04-15 15:49:49 +08:00
一楼要是不骂人麻瓜,我觉得作为一种讨论倒也没什么,都是互相学习过来的,关键是自己滂臭的命名别人反驳一下都不行....
id4alex
2021-04-15 15:51:27 +08:00
好处是以你眼就可以看出来这个字段是来自哪个表, 坏处是太啰嗦.

大家一起权衡
lithiumii
2021-04-15 16:02:55 +08:00
用户表 user
name, school_name, ...

学校表 school
name, ...

某个不知道啥既有用户又有学校的表
user_name, school_name, ...

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/770704

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX