有没有将JSON,XML或CSV数据发送到本地MySQL服务器的方法?将JSON或XML或CSV数据添加到MySQL服务器
我是MySQL新手,无法在网上找到任何东西。
两种数据类型都可以工作,因为我的代码可以将所有数据转换为我需要的任何格式,即JSON,XML和CSV。
任何帮助表示赞赏!
有没有将JSON,XML或CSV数据发送到本地MySQL服务器的方法?将JSON或XML或CSV数据添加到MySQL服务器
我是MySQL新手,无法在网上找到任何东西。
两种数据类型都可以工作,因为我的代码可以将所有数据转换为我需要的任何格式,即JSON,XML和CSV。
任何帮助表示赞赏!
1)。我打算给你答案JSON
>>
如何使用python在JSON数据库中存储JSON数据?
如果你的JSON格式下,你想联想存储在MySQL database >> table
那么你可以按照第一个例子。
实施例:1
JSON格式
{
"first_key" : 10,
"second_key" : 20
}
为JSON的Python核心脚本。
import MySQLdb
myjson = json.loads(jdata)
def dbconnect():
try:
db = MySQLdb.connect(
host='localhost',
user='root',
passwd='',
db='myjson_db'
)
except Exception as e:
sys.exit("Can't connect to database")
return db
cursor = db.cursor()
sql = """INSERT INTO my_table (array_key, array_value) VALUES (%s, %s)"""
for array_key, array_value in myjson.items():
cursor.execute(sql, (array_key, array_value))
如果你只想在一列中存储数据,那么你可以按照下面的第二个。
实施例:2
import MySQLdb
myjson = json.loads(jdata)
def dbconnect():
try:
db = MySQLdb.connect(
host='localhost',
user='root',
passwd='',
db='myjson_db'
)
except Exception as e:
sys.exit("Can't connect to database")
return db
cursor = db.cursor()
sql = """INSERT INTO my_table (json_column) VALUES (%s)"""
cursor.execute(sql, (myjson))
2)。让我们以XML开头
>>
如何使用 python在MySQL数据库中存储XML数据?
XML数据
<?xml version="1.0" encoding="UTF-8" ?>
<first_key>10</first_key>
<second_key>20</second_key>
下一步是:请安装用于将XML转换成JSON Python脚本从我们核心的Python脚本here进口和import xml2json
。
的Python核心脚本XML
import MySQLdb
import xml2json
import json
xml_data = json.loads(xml2json.xml2json(xmldata))
### data store functionality or logic is same as example 1 and example 2
def dbconnect():
try:
db = MySQLdb.connect(
host='localhost',
user='root',
passwd='',
db='myxml_db'
)
except Exception as e:
sys.exit("Can't connect to database")
return db
cursor = db.cursor()
sql = """INSERT INTO my_table (xml_data) VALUES (%s)"""
cursor.execute(sql, (xml_data))
3)。让我们讨论CSV
>>
如何使用 python将CSV数据存储在MySQL DB中?
import csv
import MySQLdb
csv_data = csv.reader(file('my_csv_file.csv'))
def dbconnect():
try:
db = MySQLdb.connect(
host='localhost',
user='root',
passwd='',
db='mycsv_db'
)
except Exception as e:
sys.exit("Can't connect to database")
return db
for row in csv_data:
cursor.execute('INSERT INTO my_csv_table(csv_first_column, \
csv_first_column)' \
'VALUES("%s", "%s")',
row)
,我不知道反正直接插入JSON,XML或CSV到MySQL数据库。
您可以通过使用模块(如MySQL-python)将数据解析为可将其插入数据库的脚本。
我的python不是很好,但希望这个例子应该足够了。
#!usr/bin/python
# Import mySQL module to interact with database.
import MySQLdb
# Import json module to convert the JSON into a Python data structure.
import json
# Convert the JSON to a usable format.
data = json.loads(yourjson)
# Connect to MySQL server.
db = mySQLdb.connect(host='yourhost',
user='youruser',
passwd='yourpassword',
db='yourschema')
# Create an object to handle SQL statements.
cur = db.cursor()
# Attempt to execute the SQL statement, if not revert any changes.
try:
cur.execute('INSERT INTO table SET col1 = %s, col2 = %s', data.foo, data.bar)
db.commit()
except:
db.rollback()