如何在数据库中插入带有双引号的值?

how to insert the value having double quotes in the database?

insert into sent_message (user_id,subject,message,background_url,total_recipients,created_at) values ('115','Greeting','Hx z'xi','/images/default/1.jpg',2,'2015-07-23 10:48:41')

对于消息列,我使用了带有单引号的值,因此出现了插入错误....

我尝试如下更改查询,但输出和错误是相同的。呵呵过来吧。

SET QUOTED_IDENTIFIER ON GO insert into sent_message (user_id,subject,message,background_url,total_recipients,created_at) values ('115','Greeting','Hx z'xi','/images/default/1.jpg',2,'2015-07-23 10:48:41')

您是否尝试过使用准备好的语句?这样您就不必担心在值部分添加引号;您使用问号代替占位符。

然后,当您将 variables/strings 传递给执行方法时,您可以使用 addslashes 转义任何 double/single 引号。

你没有提到你使用的是哪个数据库,所以我假设 MySQL?

这是PHP准备好的语句手册:

http://php.net/manual/en/mysqli.quickstart.prepared-statements.php

单引号 (') 的转义字符是两个单引号 ('')。因此 示例:

Insert into SomeTable(TextField) Select 'Some ''single quotes inserted'''

将产生:

Select TextField from SomeTable

Some 'single quotes inserted'