gpt4 book ai didi

mysql - 强制 auto_increment 跳过某些值?

转载 作者:可可西里 更新时间:2023-11-01 07:35:28 24 4
gpt4 key购买 nike

作为我当前项目的一部分,URL 可能如下所示:

http://example.com/summary/ab123

最后一部分是使用自定义字母表运行有效 base_convert(~,10,64) 之后的整数 ID。

但是,字母可以拼写东西。例如,当 ID 1,950,434 出现时,URL 将是:

http://example.com/summary/shit

所以...是的。有什么方法可以“保留”形成不需要的单词的 ID 并使 AUTO_INCREMENT 字段跳过它们吗?

最佳答案

虽然您可以通过创建一个检查自动生成的 ID 的触发器来在数据库中实现某些功能,如果该 ID 包含在您的排除列表中 - 删除该行并重试。

但是,这对我来说似乎有点 hacky...并且让数据库关心应该超出其范围的事情 - 转换为脏话的 ID。

相反,我会建议一个完全在数据库之外的解决方案。例如,您可以更改自定义字母表以排除所有元音字母吗?这样一来,无论生成的 ID 是什么,它都不会在您的 URL 中拼出任何令人不快的内容。

我能想到很多您不希望在您的 URL 中使用的词。如果您尝试将不需要的词列入黑名单,我会说一个更奇特的术语会溜走的可能性非常大......所以我认为不需要黑名单的方法也因此是理想的。

关于mysql - 强制 auto_increment 跳过某些值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15503795/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com