[英]Newlines: Migration from MySQL to SQLite
當前,我面臨的問題是,當我將數據放入SQLite數據庫時,將忽略來自MySQL轉儲的換行符。 MySQL轉儲的“ \\ r \\ n”將SQLite解釋為字符串,因此我在應用程序中使用類似“ nomnomnom \\ r \\ n nomnomnom”的句子,而不是“ nomnomnom”
nomnomnom”。
所以我的問題是,SQLite正確讀取換行符該怎么辦? 我已經在Google上進行了大量搜索,以查找SQLite需要什么樣的換行語法,但是令我驚訝的是,我還沒有找到明確的答案。
SQL沒有反斜杠轉義符(這是MySQL的怪癖)。
要將MySQL轉儲轉換為真實的SQL,請使用編輯器或一些腳本將這些轉義序列轉換為:
\n -> new line
\r -> carriage return
\" -> "
\' -> '' (inside strings)
(在SQL字符串中,除'
以外'
所有字符均按字面意義進行解釋。)
例如,此命令:
INSERT INTO MyTable VALUES('nomnomnom\r\n nomnomnom');
將被轉換為:
INSERT INTO MyTable VALUES('nomnomnom
nomnomnom');
或者,您可以使用SQL函數插入控制字符:
INSERT INTO MyTable VALUES('nomnomnom' || char(13) || char(10) || ' nomnomnom');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.