
如何生成带有自定义格式的数据库id?
在 postgresql 中,我们需要创建一个具有特定格式的 id,例如:
- 固定字符串加上指定长度的自增长数字(例:'bg-0000000000000001')
- 固定字符串加上指定长度的随机字母数字(例:'bg-000857y3ex')
解决方案
要生成这种格式的 id,我们可以使用 postgresql 的内置数据类型 serial 和字符串连接函数 concat()。
自增长数字格式
网络工作室源码基于热腾CMS(RTCMS)定制,栏目全站自动调用,可设置生成为html静态文件。网站分类适合网络公司和工作室使用。程序中带有演示数据,如果全新安装,可将根目录下的/uploads 文件夹中的演示图片文件删掉。安装方式:上传upload_install中的文件上传到虚拟主机或服务器网站根目录下;访问 http://域名/ 即可安装,安装时可以选取“演示数据&
对于带有自增长数字的 id,我们可以使用以下代码:
create table your_table_name (
id text primary key default concat('bg-', lpad(serial, 16, '0'))
);- serial 数据类型用于生成自增长的序列。
- lpad() 函数用于在数字前面填充前导零,以确保所需的长度。
- concat() 函数连接固定字符串和格式化的数字以创建最终的 id。
随机字母数字格式
对于带有随机字母数字的 id,我们可以使用以下代码:
CREATE TABLE your_table_name (
id TEXT PRIMARY KEY DEFAULT concat('bg-', MD5(RANDOM()))
);- random() 函数生成一个随机字符串。
- md5() 函数将随机字符串转换为一个固定长度的十六进制值。
- concat() 函数连接固定字符串和十六进制值以创建最终的 id。









