sqlite中插入单引号

通常我们在数据库中插入数据时,为了防止数据中的特殊字符导致SQL语法错误,会在插入的内容前后加上单引号。

例如我们有如下数据表:

CREATE TABLE `xs_sessions` ( `session_uuid` VARCHAR(36) NOT NULL,
`teacher_uuid` VARCHAR(36) NOT NULL,
`name` VARCHAR(128) NOT NULL,
`icon_path_name` VARCHAR(255) ,
`create_date_time` DATETIME NOT NULL,
`modify_date_time` DATETIME NOT NULL,
PRIMARY KEY (`session_uuid`),
FOREIGN KEY (`teacher_uuid`) REFERENCES `xs_user` (`user_uuid`));

现在往其中插入一条数据,考虑到字段中有空格,我们会在所有value的前后都加上单引号,例如:
insert into xs_sessions values('S-01','T-01','primary english','icon_path_name','create_date_time','modify_date_time');

这样可以避免value中包含反斜杠,逗号,句号,分号等各种符号的影响,但是如果value中包含单引号则会导致语法错误。
解决办法为将单引号都改为两个单引号即可,例如上例中如果name为mary's english,那么插入语句为:

insert into xs_sessions values('S-02','T-01','mary''s english','icon_path_name','create_date_time','modify_date_time');

查询结果为:
S-02|T-01|mary's english|icon_path_name|create_date_time|modify_date_time

表示我们的插入是正确的。
————————————————
版权声明:本文为CSDN博主「w_xue」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/w_xue/article/details/18305753/

posted @   卡萨丁·周  阅读(1054)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗
历史上的今天:
2016-04-29 导出Excel和Excel生成dt
点击右上角即可分享
微信分享提示