有没有一种方法可以在不修改数据库的情况下测试mysql查询?
例如,我可以运行delete from my_table where id=101
而不会实际删除任何内容吗?那插入和更新呢?
谢谢。
START TRANSACTION;
在查询的结尾运行以下语句:
ROLLBACK;
就其他连接而言,您的数据库将永远不会被修改。您当前的连接将在ROLLBACK之前看到更改,之后将恢复原始状态。
如果你只是想查看将删除多少行数据,为什么不将"delete"替换为"select count(*)"呢?
将您的数据库复制到测试数据库或自动生成导入脚本。然后,您可以在测试数据库上测试任何想要的内容,并使用脚本或导入功能再次恢复它。