我的问题很容易解释:在我的pure-ftp配置文件中,只允许一个INSERT语句读取密码。就像这样:
SELECT password FROM ftpuser WHERE userid = "\L"
" \ L"是userid的占位符。它工作得很好,但我需要计算对ftp服务器的访问权限。该表中有一个名为" access"的字段。所以我也需要运行这个SQL:
UPDATE ftpuser SET accessed = accessed + 1 WHERE userid = "\L"
有没有办法将这两个陈述改为一个,用#34;密码"结果?或者是否有其他方法可以触发pure-ftp的访问?非常感谢你!
塞巴斯蒂安
答案 0 :(得分:1)
如果这是保留原子性的问题,那么如果您的表是使用事务引擎(例如InnoDB)存储的,那么您可以使用locking read将事务包装在一个事务中:
START TRANSACTION;
SELECT password FROM ftpuser WHERE userid = '\L' FOR UPDATE;
UPDATE ftpuser SET accessed = accessed + 1 WHERE userid = '\L';
COMMIT;