import  MySQLdb
import  cx_Oracle   as  ora
import  pandas  as  pd
from    sqlalchemy import create_engine
from    settings    import  DATABASES
from sqlalchemy.sql.sqltypes import *
from math import isnan

//连接mysql

conn_Mysql
= MySQLdb.connect(host=DATABASES["Stock_Diagnosis"].get("host"),
user=DATABASES["Stock_Diagnosis"].get("user"),
passwd=DATABASES["Stock_Diagnosis"].get("passwd"),
db=DATABASES["Stock_Diagnosis"].get("db"), charset="utf8")

engine_Mysql
= create_engine(DATABASES["Stock_Diagnosis"].get("engine") + "://" +
DATABASES["Stock_Diagnosis"].get("user") + ":" +
DATABASES["Stock_Diagnosis"].get("passwd") + "@" +
DATABASES["Stock_Diagnosis"].get("host") + "/" +
DATABASES["Stock_Diagnosis"].get("db") + "?charset=utf8")

//连接oracle

dsn = ora.makedsn(DATABASES["datacenter"].get("host", "127.0.0.1"),
                  DATABASES["datacenter"].get("port", "1521"),
                  DATABASES["datacenter"].get("sid", "upapp"))
oraconn = ora.connect(DATABASES["datacenter"].get("user"),
                      DATABASES["datacenter"].get("passwd"),
                      dsn)
oraengine = create_engine(DATABASES["datacenter"].get("engine")
                         + "://"
                         + DATABASES["datacenter"].get("user")
                         +":"
                         +DATABASES["datacenter"].get("passwd")
                         +"@"
                         +DATABASES["datacenter"].get("host")
                         +"/"
                         +DATABASES["datacenter"].get("sid")
                         +"?charset=utf8")

#查询数据

strsql
= "select c.INDU_NAME from upapp.PUB_INDU_CODE c where c.INDU_UNI_CODE 
in(select b.INDU_UNI_CODE from upapp.PUB_COM_INDU_RELA b where
b.INDU_SYS_CODE='16'and b.COM_UNI_CODE  in(select a.COM_UNI_CODE from
upapp.STK_BASIC_INFO a where a.STK_CODE='600000'))"
dfOra = pd.read_sql(strsql, oraconn)  #返回一个DataFrame

#写库

#构建DataFrame,将 资金面 数据 存到 stk_money_flow_fac 表中

#self._stkpool_uni、codes、end_date。。。这些都是list(append对应的值就行了,不过几个list的元素个数得相同)
        dfData = {"STK_UNI_CODE":self._stkpool_uni, "STK_CODE":codes, "END_DATE":end_date,
                  "SCORE_FAC":score, "DIS_FAC":descri, "RAT_FAC":star, "MAC_FAC":mac}
        df = pd.DataFrame(data=dfData)
        dttype = {"STK_UNI_CODE":INT, "STK_CODE":VARCHAR(10), "END_DATE" :DATE,
                  "SCORE_FAC":FLOAT, "DIS_FAC":VARCHAR(256), "RAT_FAC":VARCHAR(10), "MAC_FAC":VARCHAR(200)}
        df.to_sql("stk_money_flow_fac", oraengine,  if_exists='append',  dtype=dttype)

python连接mysql、oracle小例子的更多相关文章

  1. python连接mysql数据库简单例子

    今天用pyhton2连接本地的mysql数据库,总的来说比较简单,但还是遇到一些小问题 代码如下: # -*- coding: utf-8 -*- import os import MySQLdb i ...

  2. 使用python连接mysql/oracle

    最近python比较火,我本身觉得python这种语言速度也不快,做项目也一般,学他干啥?但是了解到python把其他语言的函数封装成了自己的包,用python就可以直接调用,感觉python还是值得 ...

  3. paip.python连接mysql最佳实践o4

    paip.python连接mysql最佳实践o4 python连接mysql 还使用了不少时间...,相比php困难多了..麻烦的.. 而php,就容易的多兰.. python标准库没mysql库,只 ...

  4. python入门(十七)python连接mysql数据库

    mysql 数据库:关系型数据库mysql:互联网公司 sqllite:小型数据库,占用资源少,手机里面使用oracle:银行.保险.以前外企.sybase:银行+通信 互联网公司key:valuem ...

  5. Java中连接MySql数据库的例子

    Java中连接MySql数据库的例子: package com.joinmysql.demo; import java.sql.DriverManager; import java.sql.Resul ...

  6. 【初学python】使用python连接mysql数据查询结果并显示

    因为测试工作经常需要与后台数据库进行数据比较和统计,所以采用python编写连接数据库脚本方便测试,提高工作效率,脚本如下(python连接mysql需要引入第三方库MySQLdb,百度下载安装) # ...

  7. python连接mysql的驱动

    对于py2.7的朋友,直接可以用MySQLdb去连接,但是MySQLdb不支持python3.x.这是需要注意的~ 那应该用什么python连接mysql的驱动呢,在stackoverflow上有人解 ...

  8. python 连接Mysql数据库

    1.下载http://dev.mysql.com/downloads/connector/python/ 由于Python安装的是3.4,所以需要下载下面的mysql-connector-python ...

  9. Python连接MySQL数据库的多种方式

    上篇文章分享了windows下载mysql5.7压缩包配置安装mysql 后续可以选择 ①在本地创建一个数据库,使用navicat工具导出远程测试服务器的数据库至本地,用于学习操作,且不影响测试服务器 ...

  10. 用python连接mysql失败总结

    所用环境:python3,pycharm2018.2.4 先用mysql创建用户并授予相关权限 在我用python连接mysql时,一直提示连接不上,报错原因就是,用户没有被给予相关权限,比如查询,插 ...

随机推荐

  1. Windows Serer 2003 配置手册 – 创建Active Dictionary域

    域与工作组的关系 实际上我们可以把域和工作组联系起来理解,在工作组上你一切的设置在本机上进行包括各种策略,用户登录也是登录在本机的,密码是放在本机的数据库来验证的.而如果你的计算机加入域的话,各种策略 ...

  2. WebApp之PC客户端

    开发WebApp之PC客户端 HTML5的跨平台性还是很好的,苹果.Android手机都可以用,所在最近使用Jquery Mobile开发了一个手机端应用程序,一次开发,多个平台使用. 但我们的很多客 ...

  3. 【转】Install Oracle Jdbc driver in your Maven local repository

    Install Oracle Jdbc driver in your Maven local repository If you are using Oracle, you must first in ...

  4. JavaScript面向对象编程(二)构造函数和类

    new关键字和构造函数 在文章JavaScript面向对象编程(一)原型与继承中讨论啦JavaScript中原型的概念,并且提到了new关键字和构造函数.利用new关键字构造对象的实例代码如下: // ...

  5. 使用传入的总记录数实现一条sql语句完成分页查询

    使用传入的总记录数实现一条sql语句完成分页查询     问题:在传统的分页查询的实现中不可避免的需要两条sql语句,一条用于查询数据一条用于查询总记录数.如下面的实际代码所示: Img1 当然如果使 ...

  6. 在gem5的full system下运行 x86编译的测试程序 running gem5 on ubuntu in full system mode in x86

    背景 上篇博客写了如何在gem5的full system模式运行alpha的指令编译的程序,这篇博客讲述如何在gem5的full system模式运行x86指令集编译的程序,这两种方式非常类似. 首先 ...

  7. 从零开始学C++之RTTI、dynamic_cast、typeid、类与类之间的关系uml

    一.RTTI Run-time type information (RTTI) is a mechanism that allows the type of an object to be deter ...

  8. phper談談最近重構代碼的感受(3)

    这篇文章本来该和同一系列的文章一起写的,因为最近换工作的缘故滞后了.重构是非常细碎的叠加,有很多值得注意的地方. 1.消灭过多的临时变量. 有时候过多的无意义的临时变量,真心让人抓狂,特别是过了比较长 ...

  9. java nio io模型

    I/O模型 在开始NIO的学习之前,先对I/O的模型有一个理解,这对NIO的学习是绝对有好处的.我画一张图,简单表示一下数据从外部磁盘向运行中进程的内存区域移动的过程: 这张图片明显忽略了很多细节,只 ...

  10. PYTHON黑帽编程 4.1 SNIFFER(嗅探器)之数据捕获(下)

    上一节(<4.1 SNIFFER(嗅探器)之数据捕获(上)>)中, 我们讲解了通过Raw Socket的方式来编写Sniffer的基本方法. 本节我们继续来编写Sniffer,只不过使用现 ...