2016-03-23 17 views
1

我正在創建一個C++程序,它將輸出一系列SQL語句(創建,插入等)並將它們寫入文件。該文件將用於創建和填充SQLite3數據庫。用於SQLite3命令的轉義字符(無需準備)

我需要確保插入的值已正確轉義,以便它們可以放入雙引號字符串中(在插入語句中)。由於沒有可用的SQLite數據庫(該程序只是寫入文本文件),因此我無法使用prepare。有人能告訴我哪些角色需要逃跑嗎?

到目前爲止,我只發現「字符需要與另一個進行轉義」

+0

'''是根據ansi sql的唯一符號,它應該被轉義爲'''',所有其他符號,比如''''或'\\'都是特定於rdbms的 –

回答

0

在字符串中,轉義唯一的字符是報價'本身。

至於表/列名稱,如果它們與SQL關鍵字衝突,則需要quote them