Mysql 将等于自动递增字段值的值传递给数据库
我有一个插入声明让我们说Mysql 将等于自动递增字段值的值传递给数据库,mysql,Mysql,我有一个插入声明让我们说 Insert into tablename(A,B,C,D)vales(2,3,4); LetA是一个自动递增字段。因此无需传递值 现在我想传递D的值,它与A的值相同。但是D不是自动递增字段。现在我如何将值传递到数据库?。 非常感谢您的帮助。您可以从信息模式 INSERT INTO tableName (B,C,D) SELECT 2, 3, AUTO_INCREMENT FROM information_schema.TABLES WHERE TABLE_S
Insert into tablename(A,B,C,D)vales(2,3,4);
LetA
是一个自动递增字段。因此无需传递值
现在我想传递D
的值,它与A
的值相同。但是D
不是自动递增字段。现在我如何将值传递到数据库?。
非常感谢您的帮助。您可以从
信息模式
INSERT INTO tableName (B,C,D)
SELECT 2, 3, AUTO_INCREMENT
FROM information_schema.TABLES
WHERE TABLE_SCHEMA = "databaseName"
AND TABLE_NAME = "tablename";
为什么?您似乎在这里破坏了3NF。在某些情况下,in D可能不等于A,D在某些情况下可能为零。为什么不在这里使用
sequence
?我对你们要求的……问题感到困惑。您可以做一件事,使用序列n将值插入A
和D
,然后根据您的条件将D
更新为零,在3NF中不应存在D等于A的条件。听起来像是布尔型的工作。完全同意@EJP。规范化是必须的。