【问题标题】:Having an incremented ID with string value具有带字符串值的递增 ID
【发布时间】:2017-01-10 11:25:29
【问题描述】:

我需要一些帮助,我想要一些可以递增的字符串 ID!我该怎么做?

这是旧的:

    Product_ID        Product_Name
    1                 Milk
    2                 Beer
    3                 Hot Chocolate

我希望它是这样的:

    Product_ID        Product_Name
    PROD-0001         Milk
    PROD-0002         Beer
    PROD-0003         Hot Chocolate

我怎样才能制作这样的 Product_ID?非常感谢您的回答

【问题讨论】:

  • 如果要将值存储在表中,则必须使用触发器。我建议您重新考虑您的设计,并让自己相信自动递增/身份/序列数字 id 的好处。
  • 一种方法是创建循环并通过查询检查是否存在任何 productID。如果是这样,则使用计数器添加具有新产品 ID 和字符串连接的产品。您不能自动增加字符串。

标签: php sql codeigniter


【解决方案1】:

MySQL 5.7.6 添加了生成的列。您可以使用它来生成修改后的产品 ID:

ALTER TABLE YourTable
    ADD Product_ID_String AS CONCAT('PROD-', LPAD(Product_ID, 4, '0'));

【讨论】:

    猜你喜欢
    • 2015-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-03
    • 2018-12-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多