当前位置:首页 > 问答 > 正文

数据库里那些常见英文字段名,平时写代码老用的词汇总结

(根据网络开发者社区常见讨论、各类软件教程博客、以及GitHub上开源项目代码库中的高频词汇归纳总结)

id:这个几乎是每个表都必须有的,就是每条记录的身份证号,唯一标识,有时候也写成ID,大写的,没什么好说的,见到就知道是主键。

name:名字,标题,用户有用户名,商品有商品名,分类有分类名,非常通用,有时候也会用title,特别是对于文章、新闻这种,用title感觉更正式一点。

type:类型,用来给数据分类,比如用户类型是普通用户还是管理员,商品类型是实物还是虚拟物品,它的值通常是一些预设好的选项。

status:状态,表示一条记录当前处于什么状况,比如订单状态是待付款、已付款、已发货、已完成;用户状态是正常、禁用、未激活,和type有点像,但status更偏向于生命周期内的状态变化。

description:描述,说明,就是一个详细的介绍文字,可以很长,有时候会简写成desc,但desc在SQL里是降序的关键字,容易冲突,所以有些人会避免,也有用intro,就是介绍的意思。

content:内容,专门用来放一大段文本的,比如文章正文、帖子内容、评论内容,通常就是那种很长的文字块。

price:价格,商品价格、订单金额什么的,涉及到钱的字段,一般用小数类型。

amount:数量,总额,这个词有点多义,有时候表示数量,比如购买数量;有时候表示总金额,比如订单总金额,具体看场景,和price经常一起出现。

count:计数,比amount更明确,就是数量的意思,比如文章阅读数、点赞数、库存数量,也经常用作动词,比如SELECT COUNT(*) from table。

create_time:创建时间,记录是哪天什么时候被加到数据库里的,非常重要,用于排序和追踪,同义词有created_at,特别是用一些框架的时候,像Rails的约定俗成就是created_at和updated_at,add_time也行,但没create_time那么普遍。

update_time:更新时间,记录最后一次被修改的时间,和create_time是好朋友,通常成对出现,同样,updated_at也很常见。

user_id:用户ID,这种带下划线加id的,百分之九十九是外键,意思是这条记录属于哪个用户,比如一条订单记录,会有一个user_id字段指向用户表里的那个用户,同理,order_id就是订单ID,article_id就是文章ID。

email:邮箱,用户注册、登录、接收通知都用它。

phone:电话,手机号码,有时候叫mobile,或者telephone。

password:密码,存的是加密后的字符串,不会是明文。

avatar:头像,存头像图片的链接地址,现在一般不直接把图片存数据库里,而是存个URL。

image:图片,泛指图片链接,比如商品图片、文章封面图。

url:链接,就是一个网址。

sort:排序,给记录一个数字,数字小的排在前面,用来手动控制显示顺序,也叫order_num,或者order,但order是SQL关键字,所以一般不用。

parent_id:父级ID,用来实现树形结构,比如分类目录,一个分类可以有父分类,这个字段就指向它爹的id,有爹就有儿子,这样就可以搞出无限层级的结构。

level:层级,和parent_id配合使用,表示这个节点在树形结构里是第几层,方便查询。

code:代码,编码,可以是验证码、优惠码、国家代码、错误码等等,就是一个不太长的字符串代码。

ip:IP地址,记录用户操作时的IP地址,用于分析或安全目的。

is_deleted:是否删除,现在删数据一般不真删,而是软删除,就是把这个字段标记为1或true,表示这条记录“已删除”,也叫deleted,或者delete_flag,用is_open表示是否开启,is_valid表示是否有效,都是一个套路。

remark:备注,就是给管理员或内部人员看的备注信息,可长可短,比较随意。

version:版本,主要用于乐观锁,防止多人同时修改一条数据时出错,每次更新数据时,把这个版本号加一。

operator:操作人,记录这条记录是谁创建或修改的,存的是操作人的ID或者名字。

begin_time 和 end_time:开始时间和结束时间,用于定义一段有效时间范围,比如活动的开始和结束时间。

last_login_time:最后登录时间,记录用户最后一次登录的时间点。

这些词汇基本上在开发各种应用,尤其是Web应用时,会反反复复地碰到,看多了自然就熟了,很多时候设计表结构,这些字段名都是下意识的第一选择。

数据库里那些常见英文字段名,平时写代码老用的词汇总结