sql - 如何让字符串自动递增

标签 sql sql-server

我有 2 个不同的 table :

表1

ID
AK001 
AK001 
AK001 

(上面应该是AK001、AK002、AK003等等......)

表2

LastNum
 1

表1:更新table1集合ID = xx + RIGHT('....'+())等

表2:UPDATE table2 SET LastNum = LastNum + 1(这有效,但是当我在创建新表单时输入错误的详细信息但尚未保存时,它也会给我+1)

我的问题是表2更新后如何自动递增和更新表1?因为我面临的是 table1 在 table2 更新时保持给我相同的数字。请帮忙!

最佳答案

您应该考虑使用 INT 作为主键而不是 varchar。然后使用该字段作为外键。

这是一个detailed answer为什么不使用 VARCHAR 作为任何类型的键。

继续将您的商店 ID 存储为 varchar,只需在两个表上添加新字段,在主表上确保为 IDENTITY,它会自动递增。

关于using VARCHAR as primary key这个主题有很多意见。 。您应该仔分割析您要解决的问题。当然,也许你无法改变任何东西并使用已有的东西。在这种情况下,您需要按照 @sgeddes 的建议使用一些解决方法作为触发器。

关于sql - 如何让字符串自动递增,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14434132/

相关文章:

sql - 如何判断在经典 ASP 中使用 ADO 调用 SQL Execute() 是否失败

mysql - phpmyadmin 数据库触发器创建查询

sql-server - 无法在 Powershell 中安装 SQLServer 模块

按日历日期排序的 SQL 数据

c# - Days 和 TotalDays 之间有什么区别?

用于查找无效电子邮件地址的 SQL 脚本

sql-server - SQL 服务器 : add reference number according other fields in record

sql-server - 变音位 3 信息

sql - 我可以使用逻辑来选择在 SQL Server 中从哪个表创建 View 吗?

SQL Server、ISABOUT、加权项