PHP SQL:在注册中自动生成带有前缀的 ID/自动增量

我已经编写了一个注册系统,我想在其中设置一个带有前缀的 ID。已经调试了几个小时,并决定在这里创建一个帖子。尝试寻找有关此问题的线程,但它们主要用于 SQL SERVER。


正在查看@Mikael Eriksson查询,并将其转为在我这边工作,但我失败了。


我的例子:


CREATE TABLE 2njaho1fluahymj1auusz5ormx5zmraqqpdrmsut0eotpjzk2(

 wuZ7gIfEz9UAZydySMnE5e1h28Nqvd4Kmk46Ovko1CiDvsf0iDRDC INT IDENTITY(10000,1),

 5nJDfmCpaYwEvIbzShL35uhnbcI4kKmUicxCDaHHRQlc49VUoPh4a AS '#QWE-'+right('00000'+cast(wuZ7gIfEz9UAZydySMnE5e1h28Nqvd4Kmk46Ovko1CiDvsf0iDRDC AS VARCHAR(5)), 5) PERSISTED,

 G5cWsbp6ob2DKgZVwZnzguSpdZacwXXfHvl7Bo4rLB5BT4uI5lNAK VARCHAR(300),

 T8x4q5RfqVyK5Eoae9UmVEIMF7FwzK00e0vzpYHB5NMr6mDO VARCHAR(300),

 0SUdlsy5q0b9rwD2ePJHLuCeWn8q8vyFquB0hf0f3v0VC43m VARCHAR(300),

 Guwox6dyV7faJZlWxCyKIeStrO9t7xDbKIIXMGx6bb3QucYAI8mMC VARCHAR(300),

 X3nIkFzS6KyaksZz9iBCyOUKaq96lK15bTIuDsou8e3cfI49VVsTS VARCHAR(300),

 82HQunAIr3kEEeCn3JypweDhRMDxAljIMufT3NZB5W4aB3Ns2qSPi VARCHAR(300),

 3HTMIH1dzv6roy4SXmUozupWzOGrzCKwQ7K3qZIFeyNQahIkIGRIe VARCHAR(300),

 FP6U0wzvs06kXt6gQb7SXeathDXZUCAayQbBaMbSItdn9py6JO61i VARCHAR(300),

 L4u7NxC0t8Gvv2BzWbcR3eFmDTVgCmrZfquzgd2YvBRUAa2RCFv6y VARCHAR(300),

 Lx4WTEWUPCtwi6f5TMtxhuyIEfYcOxIziGjBM2c5IdEmM0jrehYcW VARCHAR(300),

 lQg6bMRmFbwx5yP7gRgmhONOvqTOXMLy08PLeBSdBGug8Ujz6HX6u VARCHAR(300),

 PRIMARY KEY(5nJDfmCpaYwEvIbzShL35uhnbcI4kKmUicxCDaHHRQlc49VUoPh4a)

);

我得到的实际错误:


您的 SQL 语法有错误;检查与您的 MariaDB 服务器版本相对应的手册,了解在第 3 行的 'AS '#JWT-'+right('00000'+cast(wuZ7gIfEz9UAZydySMnE5e1h28Nqvd4Kmk46Ovko1CiDvsf0iD' 附近使用的正确语法


我猜这是因为它与我使用的 RDBMS 不兼容。


拉丁的传说
浏览 153回答 1
1回答

Helenr

MariaDB 10.2中引入了“生成”列另请阅读ZEROFILL:id INT(6) ZEROFILL将为您提供带有前导零的 6 位数字。不需要RIGHT等。无论如何CONCAT( , )用于串联,而不是+.
打开App,查看更多内容
随时随地看视频慕课网APP