You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

未知ID时如何删除指定name的数据?SQL语法报错求助

解决MariaDB中按name批量删除数据的语法错误问题

嗨,这个问题我之前也踩过坑!你遇到的报错原因很明确:字符串类型的查询值必须用单引号(或双引号)包裹,你写的name IN ( name1 , name2 )里,MariaDB会把name1、name2当成字段名来解析,而不是你要匹配的字符串值,所以才会抛出语法错误。

正确的删除语句

直接给你能正常执行的SQL:

DELETE FROM tab WHERE name IN ('name1', 'name2');

补充说明

  • 为什么用id IN (1,2)没问题?因为id是数值类型,数值常量不需要引号包裹,数据库能直接识别。
  • 如果是在应用程序中执行这类操作,建议使用参数化查询(比如Java的PreparedStatement、Python的pymysql参数化写法),既能避免这类语法错误,还能有效防止SQL注入风险。

内容的提问来源于stack exchange,提问作者And

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.08 16:12:29