位置: IT常识 - 正文
推荐整理分享python如何转移数据库里的数据(python转换数字),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:python转换数字,python数据转换问题,python怎么转化数据类型,python数据转移,python转数值,python数据转置,python数据转移,python数据转移,内容如对您有帮助,希望把文章链接给更多的朋友!
1、常见数据库
(1)Scikit-learn:需要复盖特征工程、模型训练和模型测试所有功能的程序库,Scikit-learn是最好的选择。这个优秀的免费软件可以提供机器学习和数据挖掘所需的所有工具,现在是python机器学习的标准库,建议使用成熟的机器学习算法。
(2)NLTK:虽然不是机器学习的程序库,但它是自然语言处理所必需的库。除了文本处理功能之外,它还包括聚类、分词、词干提取、标记、分析等大量数据集和其他关于词法的资源。
2、转移数据
基于Python2.7的版本环境,Python实现了数据库的跨服务器迁移,每次提交查询都要5000条,代码中每个查询提交的数量可以自己改变。
#-*-coding:utf-8-*-importMySQLdbimporttimeimportwarningswarnings.filterwarnings("ignore")classConnectMysql(object):def__init__(self):#这里设置分页查询,每页查询多少数据self.page_size=5000defgetTable(self):conn=MySQLdb.connect(host="***.***.**.**",user="****",passwd="*************",db='****',charset='utf8')conn_local=MySQLdb.connect(host="********************************",user="**********",passwd="********",db='*******',charset='utf8')cur=conn.cursor()cur_local=conn_local.cursor()cur.execute('showtables')tables=cur.fetchall()fortableintables:printstr(table[0]).lower()#需要迁移的数据库查询表的列数cur.execute("SELECTCOUNT(*)FROMinformation_schema.COLUMNSWHEREtable_schema='china'ANDtable_name='"+table[0]+"'")table_col_count=cur.fetchone()#printtable_col_count[0]#需要迁移的数据库查询表的结构cur.execute('showcreatetable'+table[0])result=cur.fetchall()create_sql=result[0][1]#查询需要迁移的数据库表的数据条数cur.execute('selectcount(*)from'+table[0])total=cur.fetchone()page=total[0]/self.page_sizepage1=total[0]%self.page_sizeifpage1!=0:page=page+1#阿里云数据库创建表cur_local.execute("SELECTtable_nameFROMinformation_schema.`TABLES`WHEREtable_schema='user'ANDtable_name='"+str(table[0]).lower()+"'")table_name=cur_local.fetchone()iftable_nameisNone:cur_local.execute(create_sql)forpinrange(0,page):whileTrue:try:print'开始',table[0],'的第',p+1,'页查询'ifp==0:limit_param='limit'+str(p*self.page_size)+','+str(self.page_size)else:limit_param='limit'+str(p*self.page_size+1)+','+str(self.page_size)cur.execute('select*from'+table[0]+limit_param)inserts=cur.fetchall()print'查询成功'param=''foriinrange(0,table_col_count[0]):param=param+'%s,'print'开始插入'cur_local.executemany('replaceinto'+table[0]+'values('+param[0:-1]+')',inserts)printtable[0],'的第',p+1,'页,插入完成,还有',page-p-1,'页,任重而道远'conn_local.commit()breakexceptExceptionase:printetime.sleep(60)cur=conn.cursor()cur_local=conn_local.cursor()printtable[0],'插入完成'print'\n\n========================================================================\n\n'cur_local.close()conn_local.close()cur.close()conn.close()if__name__=='__main__':conn_mysql=ConnectMysql()conn_mysql.getTable()以上就是python转移数据库里数据的方法,希望对大家有所帮助。更多Python学习指路:Python基础教程
上一篇:python的概率分布有哪些类型?(python 概率分布函数)
下一篇:超全织梦dedecms autoindex和itemindex标签的使用介绍(织梦怎么样)
友情链接: 武汉网站建设