沿着插入来自select语句的值到表中我有一个名为ROLES与角色ID和ROLEDESC作为列的表。 我试图从ROLES表得到最大角色ID并将其存储在另一个表中的硬编码值一起说“NEWROLEDESC”如何使用硬编码的值
新的表结构(即“DROLES”。): DID和DROLEDESC其中DROLEDESC是用硬编码值来填充和DID是填充了select语句的值:SELECT MAX(ROLEID)+1 as maxroleid FROM ROLES
我曾尝试:
insert into DROLES(DID) SELECT MAX(ROLEID)+1 FROM ROLES
现在,上面插入DID中的最大ID,但是当我尝试
insert into DROLES(DID,DROLEDESC)
values ((SELECT MAX(ROLEID)+1 FROM ROLES),'NEWROLEDESC')
它不work.Ofcourse的SQL语法不正确。有没有办法实现它/正确的SQL语法?
注意:我只是写这个作为一个实验。我知道AUTO增量会做到这一点。除此之外的任何事情?
'插入DROLES(DID,DROLEDESC)SELECT MAX(ROLEID)+1,'NEWROLEDESC'FROM ROLES'请注意并发查询可能导致的错误。重新创建'AUTO_INCREMENT'不是最好的选择。 – lad2025
啊......只是我一直在寻找的东西。正确的SQL语法! :) 谢谢! 谢谢你的建议!只是问这是为了学习的目的! –
@ lad2025,你真的很快:)如果你已经使用评论解决它,如何写在答案..哈哈,1评论^^ – Japongskie