从Python2.7填充SQLite3表没有结果 - (数据文件是UTF-8编码的)

时间:2016-11-15 12:18:08

标签: python utf-8 sqlite

我在填充SQLite表时需要帮助。创建的数据库和表不是UTF-8 ENCODED。

表格结构:

c.execute('''CREATE TABLE news_Raw (NewsID INTEGER PRIMARY KEY AUTOINCREMENT, dateNews TEXT, SourceNews text, URLNews text, 

hindiHeadlineNews text, descriptionNews text)''')

我正在运行的用于填充表的查询:     - -执行 import sqlite3

conn = sqlite3.connect(“C:\ Users \ ABC \ Desktop \ ndtv \ ndtvdb.sqlite”)

c = conn.cursor()

format_str =“”“INSERT INTO news_Raw(NewsID,dateNews,SourceNews,URLNews,hindiHeadlineNews,descriptionNews)VALUES(NULL,”{nDate}“,”{nSource}“,”{nURL}“,”{nHindiHeading} “,”{nDescription}“);”“”

sql_command = format_str.format(nDate ='2016-11-15',nSource =“NDTV”,nURL = en_newsurl,nHindiHeading = en_newsTitle,nDescription = newsDescription)

print sql_command

c.execute(sql_command)

示例在IDLE上输出“print sql_command”: INSERT INTO news_Raw(NewsID,dateNews,SourceNews,URLNews,hindiHeadlineNews,descriptionNews)VALUES(NULL,“2016-11-15”,“NDTV”,“http://khabar.ndtv.com/news/india/happy-new-year-parties-in-delhi-344519”,“दिल्लीमेंजमकरमनायागयानएसालकाजश्न “” दिल्लीमेंनएसालकाजश्नकाजमकरजश्नमनायागयाहै。यहांपार्टियांतोशामसेहीशुरूहोगईथींलेकिनजैसेहीघड़ीने12बजाएतोनएसालकेआनेकीखुशीमेंजमकरआतिशाबाजीभीहुई。इसदौरानदिल्लीके सारेशॉपिंगमॉल्स,पबबररेस्टोरेंट्समेंलोगोंकीभीड़रही。दिल्लीमेंकईफॉर्महाउसोंमेंनएसालक ीशानदारपार्टियांआयोजितकीगईंऔरइनपार्टियोंमेंरूसऔरउज्बेकिस्तानसेखासतौरपरबुलाईगईंबैलेडांसर्सनेशानदारडांसपेशकियापार्टियोंमेंआएलोगोंनेभीयहांजमकरमस्तीकी“);。。

错误:运行代码的输出: UTF-8编码的文本文件中的输出正常,如上所示,如果我不尝试将上述语句填充到SQLite表中。但是一旦我尝试填充SQLite表,输出就会变成乱码。

打印sql_command的输出,如果我尝试填充SQLite表: 上面提到的插入()注释转为

à¤|िलà¥à¤²à¥àà¤à¥‡à¤,à¤œà¤®à¤•à¤°à¤®à¤¨à¤¾à¤¯à ¤¾à¤-यानà¤à¤¸à¤¾à¤²à¤•à¤¾à¤œà¤¶à¥à¤¨~http://khabar.ndtv.com/news/india/happy-new-year-parties-in-delhi-344519

à¤|िलà¥à¤²à¥àà®à¥‡à¤,नà¤à¤¸à¤¾à¤²à¤•à¤¾à¤œà¤ ¶à¥à¤¨à¤•à¤¾à¤œà¤®à¤•à¤°à¤œà¤¶à¥à¤¨à¤®à¤¨à¤¾à¤¯à¤¾à¤- याहà¥à¥¤à¤¯à¤¹à¤¾à¤,पारà¥à¤Ÿà¤¿à¤¯à¤¾à¤,तॠ<शामसेहीàà¥àà°à¥,हà¥<à¤-à¤à¤¥à¥€ ,लेकिनजà¥à¤¸à¥‡à¤¹à¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥ œà¤¾à¤à¤¤à¥<नà¤à¤¸à¤¾à¤²à¤•à¥‡à¤†à¤¨à¥‡à¤•à¥€-à¥àà ¤¶à¥€àààेà¤,जमकरआतिशाबाजी ¤à¥€à¹à¥à¤à¥¤à¤‡à¤¸à¤|ौरानà¤|िलà¥à¤²à€€à• ेसारेशॠ‰àªªà¤¿à¤,à¤-à¤àॉलà¥à¤¸,पबओररेसà¥à Ÿà¥<रेà¤,टà¥à¤¸à¤àेà¤,लà¥<à¤-à¥<à¤,की ¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥ ॉरàààà®à¤¹à¤¾à¤‰à¤¸à¥<à¤,मेà¤,नà¤à¤¸à¤¾à¤²à ¤•à¥¥àत¾à¤¨à¤|ारपारà¥à¤Ÿà¤¿à¤¯à¤¾à¤,à¤†à¤¯à ¥<जितकà¥àà¤-à¤à¤,ओरइनपारà¥à¤Ÿà¤¿ यà¥<à¤,मेà¤,रà¥,सओरउजà¥à¤¬à¥‡à¤•à ¤¿à¤¸à¥à¤¤à¤¾à¤¨à¤¸à¥‡à¤-ासतौरपरबà¥à¤²à ¤¾à¤à¤-à¤à¤,बà¥à¤²¥ ‡à¤¡à¤¾à¤,सरà¥à¤¸à¤àेशानà¤|ारडाà¤, सपेशकिया।ààªà¤¾à¤°à¥à¤Ÿà¤¿à¤¯à¥<à¤,ठ®à¥‡à¤,आà¤à¤²à¥<à¤-à¥<à¤,ਨेààà¥àà¯à¤¹à¤¾à¤,à¤œà ¤®à¤•à¤°à¤®à¤¸à¥à¤¤à¥à€•à¥€¥¥

表中没有填充任何行。当我以递归方式运行它时,它只运行两次迭代并停止。

然后出现错误: Traceback(最近一次调用最后一次):   文件“C:\ Users \ cprasad \ Desktop \ ndtv_2downloadNewsArticles - wip sqlite.py”,第47行,in     c.execute(sql_command) 操作错误:靠近“सà¤,चेती”:语法错误

我尝试了什么? 我尝试更改表格的编码,但此链接How do I quote a UTF-8 String Literal in Sqlite3表示我不需要它

有人可以帮忙解决问题吗? 感谢

0 个答案:

没有答案