【发布时间】:2020-10-06 19:35:54
【问题描述】:
我想将 Amazon 上托管的 DocumentDb 中的数据移动到 MySQL 表中(避免重复插入,因此我使用“INSERT IGNORE INTO”)。 DocumentDb 中的数据如下所示:
[{
"_id": {
"$oid": "5f0e2c96eebd1c040a42523c"
},
"packNumber": 324,
"DMMMeasuredCurrent": 1.75,
"BMUReportedCurrent": 1.76,
"error": 0.5,
"operator": "Abc",
"notes": "na",
"reworks": [],
"createdAt": {
"$date": 1594764438975
},
"updatedAt": {
"$date": 1594764438975
},
"__v": 0
}, , {
"_id": {
"$oid": "5f7b390701476b835e4379dd"
},
"packNumber": 420,
"DMMMeasuredCurrent": 1.75,
"BMUReportedCurrent": 1.74,
"error": 0.5,
"operator": "xyz",
"notes": "l",
"reworks": [],
"createdAt": {
"$date": 1601911047462
},
"updatedAt": {
"$date": 1601911047462
},
"__v": 0
}]
我在 MySql 中创建了如下表: 创建表 auxcurrents1
(
BMUReportedCurrent varchar(50),
DMMMeasuredCurrent varchar(50),
notes varchar(500),
packNumber varchar(50),
__v varchar(50),
createdAt varchar(50),
updatedAt varchar(50),
operator varchar(50),
idno varchar(50),
reworks varchar(50)
)
如何将我从 DocumentDb 获取的数据插入 MySQL 表?下面的代码,sn -p 是我目前尝试过的,但是没有在MySQL表里面插入数据。
import pymongo
import sys
from bson.json_util import dumps, loads
from bson import json_util
import mysql.connector
from mysql.connector import connection
#import MySQLdb
import json
from pandas.io import sql
from sqlalchemy import create_engine
import pandas as pd
from pandas.io.json import json_normalize
client = pymongo.MongoClient('mongodb://user:passwrd@host:27017/?ssl=**=.pemFile
print('DocumentDb connected')
#Create MySQL Connection
mysqlConnection = mysql.connector.connect(host='host',database='db', user='user', password='passwrd',port=3306)
mysqlCursor = mysqlConnection.cursor()
print('MySQL Connection Established')
#Specify the database to be used
db = client.everestdocumentdb
col=db.auxcurrents.find()
print('The next line will print col')
print(json_util.dumps(col))
#Insert Into MySQL
rows = ("INSERT IGNORE INTO table1 VALUES(%s)")
mysqlCursor.executemany(rows,test)
mysqlConnection.commit()
print('Ran the db.execute command')
非常感谢任何帮助。提前致谢。
【问题讨论】:
-
INSERT IGNORE INTO table SET ? -
@aRvi 怎么用?你能按照我的代码修改它吗?
标签: mysql python-3.x aws-documentdb