Python 在SQLite数据库中存储XML/HTML文件-可能吗?

Python 在SQLite数据库中存储XML/HTML文件-可能吗?,python,xml,sqlite,Python,Xml,Sqlite,是否可以在SQLite数据库中直接存储XML/HTML文件 我正在用python编写一个程序,用来解析XML/HTML文件并将值存储在数据库中。但是,XML/HTML文件中的字段可能会有所不同,我认为简单地将整个XML/HTML文件存储在数据库中,然后仅在使用时解析它会更容易 python和SQLite可以做到这一点吗?还是我从错误的角度看待这个问题 提前谢谢 编辑:有人可以分享一个关于如何存储文件的代码示例吗?我知道这是可能的,但我不确定如何着手去做 您可以将XML/HTML文件存储为文本,而

是否可以在SQLite数据库中直接存储XML/HTML文件

我正在用python编写一个程序,用来解析XML/HTML文件并将值存储在数据库中。但是,XML/HTML文件中的字段可能会有所不同,我认为简单地将整个XML/HTML文件存储在数据库中,然后仅在使用时解析它会更容易

python和SQLite可以做到这一点吗?还是我从错误的角度看待这个问题

提前谢谢


编辑:有人可以分享一个关于如何存储文件的代码示例吗?我知道这是可能的,但我不确定如何着手去做

您可以将XML/HTML文件存储为文本,而不会在文本列中出现问题

明显的缺点是,您无法真正查询XML中的值

编辑: 这里有一个例子。只需将XML文件读入一个变量,并将其存储在DB中,就像存储任何字符串一样,同时存储任何其他要存储的值。当您想要使用XML时,只需从DB中读取它并使用XML解析器对其进行解析

# connect to database and create table
import sqlite3
conn = sqlite3.connect(":memory:")
conn.execute('''create table my_table (value1 integer, value2 integer, xml text)''')

# read text from your input file containing xml
f = file('/tmp/my_file.xml')
xml_string_from_file = f.read()

# insert text into database
cur = conn.cursor()
cur.execute('''insert into my_table (value1, value2, xml) values (?, ?, ?)''', (23, 42, xml_string_from_file))
conn.commit()

# read from database into variable
cur.execute('''select * from my_table''')
xml_string_from_db = cur.fetchone()[2]

# parse with the XML parser of your choice
from xml.dom.minidom import parseString
dom = parseString(xml_string_from_db)

这意味着我打开XML/HTML文件并将内容复制到文本列中?对于我的场景,无法查询值是可以的。如果我听起来很愚蠢,我很抱歉,这是我第一次一起处理数据库和XML。你真的可以在SQLite中存储任何东西。如何解析和使用它取决于您。SQLite对类型非常宽容,甚至。。。