gpt4 book ai didi

c# - SQL 主键生成

转载 作者:行者123 更新时间:2023-11-29 06:44:33 24 4
gpt4 key购买 nike

使用 SQL Server = MySQL
编程语言=无关紧要,但我坚持Java和C#

我有一个理论问题,关于为 SQL 数据库生成主键的最佳方法,然后由我编写的另一个程序使用,(假设它不是基于 Web 的。)

我知道主键必须是唯一的,我更喜欢主键,当我看到它们时,我也可以立即知道它们来自哪里,无论是在我的 eclipse 中还是在我使用数据库时的 Windows 控制台中,以及在关系表中。出于这个原因,我通常将自己的主键创建为字母数字字符串,除非有特定的唯一值可用,例如 ISBN 或 SS 编号。对于 Actors 表,主键可能看起来像 a1,在 Movies 表中 m1020(假设标题不是唯一的,例如电影“重返女巫山”的不同版本)。

那么我的问题是,如何最好地生成主键(在我的程序中或作为过程在数据库本身中)?对于这样的方案,是否最好使用两列,一列包含一个常量字符串,例如表示 Actor 的“a”和一个运行计数? (那我需要研究如何引用一个PK跨多列的表)处理这样的任务最专业的方法是什么?

感谢您的宝贵时间。

最佳答案

最佳做法是让您的数据库引擎将主键生成为自动递增 NUMBER。字母数字字符串不是一个好方法,即使它对您来说似乎太“抽象”。然后,您不必担心程序中的主键(Java、C# 或其他);在数据库中插入的每一行,都会自动插入一个唯一的主键

顺便说一句,对于您的解决方案,我不确定您能否处理同时插入两行的情况...您确定在任何情况下都不能复制您的主键吗?

关于c# - SQL 主键生成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19444478/

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