0
我想用Django生成一個完整的SQL文件,該文件可以下載並執行以創建SQLite數據庫。使用Django爲SQLite生成SQL插入語句
問題是轉義字符串以將它們插入到要下載的文件中。這是我到目前爲止:
name = MySQLdb.escape_string(self.name.encode("utf-8")).decode("utf-8")
return "INSERT INTO names VALUES(%d,'%s');" % (self.id, name)
但不幸的是,MySQL用單斜引號\ \ SQlite不喜歡的單引號。我寧願使用Django中包含的東西來替換MySQLdb.escape_string()。我不確定在MySQL轉義和SQLite之間是否存在任何其他不兼容的問題,因此完全避免MySQLdb.escape_string()會很好。
作最後的求助返回之前,我這樣做:
name = name.replace("\\\'","\'\'")
有什麼想法?
我找不到在Python/Django中使用此函數的任何參考http://docs.python.org/2/library/sqlite3.html –
它是一個* SQLite *函數。只有當原始數據在數據庫中時,才能使用它。 –
原始數據位於MySQL數據庫中,但我不想在數據庫級別上工作。我使用Django視圖來生成要下載的文件。 –