今天发生了一件沉痛的事情,由于我的sql语句写错,导致mysql执行时报错将整张表的数据都清空了。特此记录一下,以做警示。下面贴出sql语句。
错误语句:delete from t_app_article_comment_reply where com_id in (select com_id from t_app_article_comment where art_id = 100002129);
在这个语句中括号内的子查询语句中com_id是不存在于t_app_article_comment表中的,导致子句执行出错。但是这种情况mysql并不会停止前半部分的语句执行。反而会直接执行前面一小段,导致将整张表清空。再次做一下记录,以免以后再犯同样的错误。