Qt QSQlite数据库插入字符串中存在单个双引号或单个单引号解决方案

1. 前言

当进行数据库写入或更新时,有时会遇到存在字符串中包含单个双引号或者单引号。

2. 单引号''和双引号""作用

在数据库中,字符串常量时需要用一对英文单引号''或英文双引号""将字符串常量括起来。

比如:

cpp 复制代码
select * from xxx where info = `hello world`;

cpp 复制代码
select * from xxx where info = "ni hao";

一般是使用单引号,如果是数值,则不加单引号或双引号。

但如果字符串中包含单引号,除了使用转义外,还可以用一对双引号来包括字符串,这样字符串内的单引号被视作普通字符,无需特殊处理。

如:

cpp 复制代码
"hello'world"

存入到数据库中,就是:hello'world

反之,如果字符串中包含双引号,可以用一对单引号来包括字符串。

如:

cpp 复制代码
'hello"world'

存入到数据库中,就是:hello"world

3. 如果字段为关键字

当出现SQL语句中,包含的字段为关键字时,如下:

cpp 复制代码
select select from xxx;

会报错,这时,需要用````````符号将字段给括起来,如下:

cpp 复制代码
select `select` from xxx;

4. 字符串中,既包含双引号又包含单引号

当字符串常量中,既包含双引号,同时又包含单引号,可将单个单引号改为成对的单引号,如下:

5. 结论

玄之又玄,众妙之门

相关推荐
炬火初现36 分钟前
Etcd的安装与使用
数据库·etcd
IT猿手44 分钟前
2025最新群智能优化算法:云漂移优化(Cloud Drift Optimization,CDO)算法求解23个经典函数测试集,MATLAB
开发语言·数据库·算法·数学建模·matlab·机器人
雷渊1 小时前
深入分析理解mysql的MVCC
java·数据库·面试
easonhyj1 小时前
搞我,DBA角色用户调用存储过程失败?
oracle
Paparazi灬1 小时前
RocksDB写流程各种场景下的处理逻辑和线程交互时序
数据库
神经星星1 小时前
【vLLM 教程】使用 TPU 安装
数据库·人工智能·机器学习
꧁坚持很酷꧂2 小时前
QT登录系统界面
开发语言·qt
hjehheje2 小时前
clickhouse查询效率低
数据库·人工智能
七七powerful2 小时前
ClickHouse 中出现 DB::Exception: Too many parts 错误
java·前端·数据库
Linux运维老纪3 小时前
Python实战项目(‌Hands-on Python Project)
开发语言·数据库·python·sql·mysql·云计算·运维开发