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. 结论

玄之又玄,众妙之门

相关推荐
2301_7893804914 分钟前
vsc中使用DBHub-MCP连接云Mysql到vsc-copilot
数据库·mysql
杨DaB16 分钟前
【MySQL】02 数据库的基本操作
数据库·mysql·oracle
jnrjian21 分钟前
Oracle hints 空格要求
sql·oracle
m***66731 小时前
SQL 实战—递归 SQL:层级结构查询与处理树形数据
java·数据库·sql
昙鱼1 小时前
Markdown文件导入Milvus向量数据库完整指南
数据库·ai·milvus
A__tao1 小时前
gotool.top 的 SQL 转 Markdown
数据库·sql
Austindatabases1 小时前
基于SQLite如何设计应用程序,拆散,散,还的散!
数据库·sqlite
马克学长3 小时前
SSM面向乡村振兴服务的产教融合服务平台521gh(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·乡村振兴·ssm 框架·服务平台
u***27613 小时前
C#数据库操作系列---SqlSugar完结篇
网络·数据库·c#
Y***K4344 小时前
MySQL网站
数据库·mysql