首先,我仍在学习如何使用 PHP/MySQL ......所以在选择时或仅在插入/更新时是否可以使用事务?
如果可能,那么我将如何解决这个问题(伪代码):
关闭自动提交
从身份验证中选择 id,其中别名 = [用户输入]
从 id = ID FROM ABOVE SELECT 的标志中选择活动
如果:没有错误提交
其他:回滚
从第二个选择中获取行
以上是否可能与MySQL(请使用PHP语法)有关?
首先,我仍在学习如何使用 PHP/MySQL ......所以在选择时或仅在插入/更新时是否可以使用事务?
如果可能,那么我将如何解决这个问题(伪代码):
关闭自动提交
从身份验证中选择 id,其中别名 = [用户输入]
从 id = ID FROM ABOVE SELECT 的标志中选择活动
如果:没有错误提交
其他:回滚
从第二个选择中获取行
以上是否可能与MySQL(请使用PHP语法)有关?
在这里使用事务将毫无用处,因为您的查询仅处理SELECT
.
这里有2个选择。(请注意,我只包含了 SQL 代码。)
1. 可以使用SELECT
insideSELECT
语句。
SELECT active
FROM flags
WHERE id IN (
SELECT id
FROM auth
WHERE alias = 'userinput'
);
2. 其他可能性是使用JOIN
.
SELECT f.active
FROM flags f
INNER JOIN auth a
ON f.id = a.id
WHERE a.alias = 'userinput';
在这里,别名如f
和a
用于指定表。