gpt4 book ai didi

sql - 功能键和并发

转载 作者:行者123 更新时间:2023-12-03 04:39:37 25 4
gpt4 key购买 nike

上下文:Web 应用程序、SQL Server/SQL Azure 通过 EF Code First、asp.net mvc 3、windows azure。

我有一个 TPH 表company,其中包含客户公司和提供商公司。该表包含一列 type,它是表鉴别符:c 表示客户,p 表示提供商。

表的主键是一个自动递增的整数id,由数据库管理。

现在我想要一个功能复合键(short_id, type),其中short_id也是一个自动递增整数,但我不知道如何以及何时生成 short_id 值以避免并发问题。

如果一家公司在纽约的数据库中输入,而另一家公司在巴黎的数据库中输入,那么如何防止两家不同的客户公司获得相同的 short_id

id name       type  short_id
1 company_a c 1
2 company_b c 2
3 company_c p 1
4 company_d c 3
5 company_e p 2
6 company_f c 4

我知道这不太可能,因为这个例子很愚蠢,但问题是技术性的。

感谢您的阅读

最佳答案

您可以尝试此操作,但如果表很大,它可能会变慢:

INSERT INTO company (name, type, short_id)SELECT 'mycompany', 'c', ISNULL(MAX(short_id),0) + 1FROM companyWHERE type = 'c'

关于sql - 功能键和并发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8172110/

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