首先,我还在学习如何使用PHP/MySQL…那么,是否有可能在选择或仅在插入/更新时使用事务呢?
如果它是可能的,那么我如何解决这个(伪代码):
关闭自动提交
Select id from auth where alias = [user input]
Select active from flags where id = id from ABOVEIf:没有错误提交
:回滚
从second select中获取行
是上述可能做与MySQL (PHP语法,请)?
在这里使用事务将是相当无用的,因为您的查询只处理一个SELECT
。
这里有两个选择。(请注意,我只包含了sql代码。)
1。可以在SELECT
语句中使用SELECT
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
这样的别名被用来指定表。