在SQL事务中,我是否可以从第一个INSERT INTO语句中捕获主键的ID并在第二个上使用它?在这里只是有一些基本的SQL,想知道我做错了什么。还是新的,所以试图学习这一切。谢谢!
没有任何东西被这个语句推送到DB,所以它在某个地方失败了。 addressID
表中的Customers
应与第一个语句中插入的行的主键匹配。我读到了SCOPE_IDENTITY()
,但似乎无法正常工作。谢谢您的帮助!
$sql = "START TRANSACTION;
INSERT INTO Address(city, state) VALUES ('Orlando', 'Florida');
INSERT INTO Customers(username, password, addressId) VALUES ('admin', 'someHashedPassword', SCOPE_IDENTITY());
COMMIT;";
$result = mysqli_query($connection, $sql);