将增量编号附加到字段

时间:2017-06-07 11:47:03

标签: sql ms-access

我的数据库中有一个字段,用于存储产品表中每个产品的product-page.html名称。

我遇到的问题是我正在使用的CMS允许重复产品,并且在上传时我会突出显示产品的重复页面名称。这是由于CMS中的设置问题引起的。

要解决它......

是否可以在包含产品页面名称的每条记录中附加增量值,以使它们都是唯一的?

  • 产品页-1.HTML
  • 产品页-2.HTML

因此,通过SQL语句创建值1,2,以使所有页面名称唯一

1 个答案:

答案 0 :(得分:0)

在您的表格中添加一个名为page-id或类似的列。

修改INSERT语句,如下所示:

DECLARE @NewPageName VARCHAR(MAX) = 'your page name'
DECLARE @NewProductName VARCHAR(MAX) = 'your product name'

DECLARE @NewPageId = CONVERT(VARCHAR(MAX), SELECT ISNULL(MAX(page-id), 0) + 1 FROM your-table WHERE page-name = @NewPageName)

INSERT INTO 
    your-table
    (
        product-name
        , page-name
        , page-id
        , ...
    ) 
    VALUES 
    (
        @NewProductName
        , @NewPageName
        , @NewPageId
        , ...
    )

现在,您可以在代码中连接page-namepage-id以检索整个页面名称。

SELECT 
    page-name + '-' + CONVERT(VARCHAR(MAX), page-id) + '.html' AS full-page-name
FROM 
    your-table 
WHERE 
    product-name = 'your product name'

注意:我目前正在猜测您的表和列的名称。

我已经请求了更多信息,以便我可以重温这个答案,并在将来为您提供实际代码。