SQLite含空格特殊字符列查询报错:sqlite3.OperationalError语法错误
解决SQLite含特殊字符列名的查询语法错误
- 错误根源:你把带空格、逗号的目标列名
Elementary, Middle, or High School拆成了多个片段,SQL将其中的or识别为关键字,直接触发语法错误;同时你错误地用下划线替换空格,导致列名与数据库实际列名不匹配。 - 正确处理方式:SQLite中对包含空格、逗号这类特殊字符的列名,必须用双引号包裹完整的列名,确保SQL将其识别为单个列对象:
SELECT "Elementary, Middle, or High School", AVG(Safety_Score) as Average_Safety_Score FROM chicago_public_schools_data ORDER BY Average_Safety_Score;
- 关键注意点:双引号要完整包裹原始列名,不能拆分列名或修改其中的字符(比如不要替换空格为下划线),否则会因列名不存在或语法逻辑错误导致查询失败。
内容的提问来源于stack exchange,提问作者Aminu Emmanuel
相关产品推荐
相关产品推荐

