如何在 SQLite 中插入换行符(“\n”)?

2024-05-03

在尝试插入类似以下内容时:

"Hello\nWorld"

SQLite 抛出类似以下的错误:

消息:无法识别的令牌:“'Hello”;”(还有一些其他错误)

即使我将上面的字符串转换为"Hello''\nWorld" or "Hello\"\n\"World",这些转义字符序列在这种情况下不起作用。

目前使用 C++ 语言,我像任何其他简单字符串列一样插入此列。我尝试了上面的转义序列(尽管我在互联网上读到,它们不能与\n).

如何在 SQLite DB 中插入换行符和其他此类特殊字符?


在 SQL 中,没有转义换行符的机制;你必须按字面意思插入它们:

INSERT INTO MyTable VALUES('Hello
world');

或者,动态构造字符串:

INSERT INTO MyTable VALUES('Hello' || char(10) || 'world');

(换行符的类型(13 或 10 或 13+10)取决于操作系统。)

当您在 C++ 字符串中嵌入 SQL 语句时,您必须在第一种情况下转义换行符:

q1 = "INSERT INTO MyTable VALUES('Hello\nworld');";
q2 = "INSERT INTO MyTable VALUES('Hello' || char(10) || 'world');";
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 SQLite 中插入换行符(“\n”)? 的相关文章

随机推荐