我的数据库中有一个字段,用于存储产品表中每个产品的product-page.html名称。
我遇到的问题是我正在使用的CMS允许重复产品,并且在上传时我会突出显示产品的重复页面名称。这是由于CMS中的设置问题引起的。
要解决它......
是否可以在包含产品页面名称的每条记录中附加增量值,以使它们都是唯一的?
即
因此,通过SQL语句创建值1,2,以使所有页面名称唯一
答案 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-name
和page-id
以检索整个页面名称。
SELECT
page-name + '-' + CONVERT(VARCHAR(MAX), page-id) + '.html' AS full-page-name
FROM
your-table
WHERE
product-name = 'your product name'
注意:我目前正在猜测您的表和列的名称。
我已经请求了更多信息,以便我可以重温这个答案,并在将来为您提供实际代码。