MySQL id序列

标签 mysql unique sequence uniqueidentifier sequences

这是在 MySQL 中生成 ID 的正确方法吗?

INSERT INTO Picture (PictureId,First_pick,Title,Description,File_Name,Is_Vertical)VALUES
((SELECT max(pictureid)+1 FROM Picture),0,?,?,?,?)

我的意思是,当此查询由多个线程运行时,是否保证 PictureId 是唯一的?

我无法修改表结构。我应该使用任何特定的锁、索引或事务隔离级别吗?

问候,米哈尔

最佳答案

您通常会使用一个AUTO_INCREMENT 字段来为您处理这些事情:Manual

不过这个问题还是不错的,我想听听mySQL专家对此的深入解答。以所述方式进行操作的可靠性如何?

关于MySQL id序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2400537/

相关文章:

php - Mysql 选择多个查询

mysql - 如何让这个 mysql 查询包含空值?

java - Spring JPA - MySQL 数据库创建外键时 Hibernate 出错

html - 使链接打开 "pop up"不同内容的窗口

mysql - 在 MySQL 中订购发票号码和字母

Java Set 获取重复项

ubuntu - 如何从 ubuntu 中的文本文件生成(唯一)单词列表?

collections - 如何在 Kotlin 中无限重复序列?

python - 如何使用\In Python 列表

F#使用GetEnumerator时无法枚举yield生成的序列