在实际项目中需要把mongodb数据库的数据迁移到mysql数据库,由于该功能只使用一次,因此使用python实现,代码量比较小,特此奉上自己的代码,供大家参考,谢谢!如有问题,请在下方留言,我会及时的回复。

from pymongo import MongoClient
import pymysql
import time
#连接mysql数据库  后面加上 charset="utf8mb4" 这样方便传输汉字,解决字符集不匹配的问题
client1 = pymysql.connect("localhost","数据库账号","数据库密码","数据库名",charset="utf8mb4")
#定义mysql数据库的游标
cursor = client1.cursor()
#连接Momgo数据库
client = MongoClient('localhost',27017)
#连接相应的collection
db = client.organization.orgProductsScope
sql = "INSERT INTO orgProductsScope (orgId,isSharedByCity,districtName,cityId,provinceId,seriesId,isSharedByProvince,districtId,cityName,isSharedBydistrict,brandId,disabled,provinceName,isShared,ctime,mtime) VALUES (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s);"
#遍历mongo数据库,加入batch_size(30)方法解决解决 MongoDB 的 cursor id is not valid at server 问题
for i in db.find().batch_size(30):orgId = int(i["orgId"])relationOrgProductsScope = i["relationOrgProductsScope"]for j in relationOrgProductsScope:print(j)isSharedByCity = 0if 'isSharedByCity' in j:if j["isSharedByCity"] != "":isSharedByCity = int(j["isSharedByCity"])districtName = ""if 'districtName' in j:districtName = j["districtName"]cityId = ""if 'cityId' in j:cityId = j["cityId"]provinceId = ""if 'provinceId' in j:provinceId = j["provinceId"]seriesId = ""if 'seriesId' in j:seriesId = j["seriesId"]isSharedByProvince = "0"if 'isSharedByProvince' in j:isSharedByProvince = j["isSharedByProvince"]districtId = ""if 'districtId' in j:districtId = j["districtId"]cityName = ""if 'cityName' in j:cityName = j["cityName"]isSharedByCity = "0"if 'isSharedByCity' in j:isSharedBydistrict = j["isSharedByCity"]brandId = "0"if 'brandId' in j:brandId = j["brandId"]disabled = 0if 'disabled' in j:if j["disabled"] != "":disabled = int(j["disabled"])provinceName = ""if 'provinceName' in j:provinceName = j["provinceName"]isShared = 0if 'isShared' in j:if j["isShared"] != "":isShared = int(j["isShared"])# 向表orgProductsScope插入相应的数据par = (orgId, isSharedByCity, districtName, cityId, provinceId, seriesId, isSharedByProvince, districtId, cityName,isSharedBydistrict, brandId, disabled, provinceName, isShared,time.localtime(),time.localtime())try:cursor.execute(sql, par)client1.commit()except Exception as e:client1.rollback()print(e)
cursor.close()
client.close()

python实现mongodb数据导入到mysql相关推荐

  1. mysql 查询 系统字段 自然日_吴裕雄--天生自然python数据清洗与数据可视化:MYSQL、MongoDB数据库连接与查询、爬取天猫连衣裙数据保存到MongoDB...

    本博文使用的数据库是MySQL和MongoDB数据库.安装MySQL可以参照我的这篇博文:https://www.cnblogs.com/tszr/p/12112777.html 其中操作Mysql使 ...

  2. 使用Python将Excel中的数据导入到MySQL

    使用Python将Excel中的数据导入到MySQL 工具 Python 2.7 xlrd MySQLdb 安装 Python 对于不同的系统安装方式不同,Windows平台有exe安装包,Ubunt ...

  3. Python实现Excel数据导入MySQL

    前言 近年来,数据分析正在改变我们的工作方式,数据分析的相关工作也越来越受到人们的青睐.很多编程语言都可以做数据分析,比如Python.B.Matlab等,Python凭借着自身无可比拟的优势,被广泛 ...

  4. python处理完数据导入数据库_python操作数据库之批量导入

    python操作数据库之批量导入 Python语法简洁清晰,特色之一是强制用空白符(white space)作为语句缩进. Python具有丰富和强大的库.它常被昵称为胶水语言,能够把用其他语言制作的 ...

  5. python接入excel_使用python将excel数据导入数据库过程详解

    因为需要对数据处理,将excel数据导入到数据库,记录一下过程. 使用到的库:xlrd 和 pymysql (如果需要写到excel可以使用xlwt) 直接丢代码,使用python3,注释比较清楚. ...

  6. mongodb数据导入hbase,spark读取hbase数据分析

    为什么80%的码农都做不了架构师?>>>    使用mavn管理相关依赖包pom.xml <project xmlns="http://maven.apache.or ...

  7. oracle 数据导入 mysql_将oracle的数据导入到mysql的三种方法

    为了生产库释放部分资源,需要将API模块迁移到MysqL中,及需要导数据. 尝试了oracle to MysqL工具,迁移时报错不说,这么大的数据量,用这种简陋的工具不大可靠. 意外发现平时用的数据库 ...

  8. php实现sql server数据导入到mysql数据库_php实现SQL Server数据导入Mysql数据库(示例)...

    php将mssql的数据导入到mysql数据库中,代码: 代码示例: //连接SQL server数据库 $conn=mssql_connect("localhost"," ...

  9. python将EXCEL数据导入数据库时日期型数据变成数字并加.0的问题一行代码解决方案方案

    [问题描述]:python将EXCEL数据导入数据库时日期变成文本型数据并显示为数字格式 [解决方案] 数据源: codes: #!/usr/bin/python3 -- coding: utf-8 ...

最新文章

  1. 关于ExtJS在使用下拉列表框的二级联动获取数据
  2. Selenium 自动化测试基础知识
  3. Edge 修改字符编码(详细图文)
  4. 通过JS和CSS,实现网页加载中的动画效果
  5. C语言是作为一个程序员必须了解的,那么你知道怎样学习C语言吗?
  6. 聊天机器人-AIML人工智能标记语言
  7. regression+classification
  8. wps中将文档输出为pdf_‎
  9. 在pytorch中使用tensorboard
  10. 使用vue-print-nb插件页面空白以及打印没有样式问题
  11. DropdownList获取ID方法
  12. java自己写不出来_java学习中,能看懂代码,但是自己写不出来怎么处理?
  13. java计算机毕业设计基于安卓Android微信的团务智慧管理小程序uniAPP
  14. 计算机保研个人简介,保研个人简历模板
  15. 使用百度API获取位置信息
  16. Microsoft server2008的sql server身份验证出现18456错误
  17. linux 的vim快速查找内容
  18. Windows个性化之稀奇古怪三两式(转)
  19. 任正非谈“咖啡杯”文化
  20. Java 常用内置对象

热门文章

  1. 计算机ppt2007考试试题,全国计算机等级考试二级officeppt演示文稿题目
  2. composer详解
  3. python 数据、曲线平滑处理
  4. Java 中 String 字符串可以有多长?65535?
  5. 梳理正则表达式发展史
  6. 轻量级程序编辑器的选择:EmEditor、Editplus等---Web开发系列之工具篇(一)
  7. 不用标点符号实现加减乘除运算
  8. 交叉表、行列转换和交叉查询经典
  9. Android开发-基本概念小整理(二)为了面试的小伙伴们所准备~~
  10. 网站分析11——成本控制类指标