转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/45841117

#!/usr/bin/env python

# -*- coding:utf-8 -*-

"""
  Purpose: 生成日明细账单数据
  Created: 2015/4/21
  Modified:2015/4/24
  @author: guoyJoe
"""
#导入模块
import MySQLdb
import time
import datetime
import os

#日期
today = datetime.date.today()
yestoday = today - datetime.timedelta(days=1)

#账单日期
date_acct = yestoday.strftime('%Y%m%d')

#SQL语句
sqlDel = 'DELETE FROM dbchkbill.tb_day_chkbill WHERE date_acct = %s'
  
sqlIns = """
     INSERT INTO  dbchkbill.tb_day_chkbill(order_id,traderno,order_dtsend,oid_biz,oid_billno,date_acct,amt_paybill,flag,
       stat_bill,pay_prod,pay_type,order_info,dt_billupd) 
     SELECT p.order_id as order_id,q.pay_custid as traderno,p.order_dtsend as order_dtsend,
       q.oid_biz as oid_biz,CAST(q.oid_billno as char) as oid_billno,q.date_acct as date_acct,
       q.amt_payserial as amt_paybill,'1' as flag,p.stat_bill as stat_bill,p.oid_chnl as pay_prod,
       q.pay_type as pay_type,p.order_info as order_info,q.dt_col as dt_billupd
     FROM dbpay.tb_pay_bill p, dbpay.tb_paybillserial q 
     WHERE p.oid_billno = q.oid_billno and p.paycust_accttype = '2' 
      AND p.Paycust_Type = '1'
      AND p.stat_bill in ('0', '4')
      AND q.pay_stat = '1' 
      AND q.col_stat = '1'
      and q.date_acct = %s
   UNION ALL
     SELECT distinct p.order_id as order_id,p.col_custid as traderno,
       p.order_dtsend as order_dtsend,q.oid_biz as oid_biz,CAST(q.oid_billno AS CHAR) as oid_billno,
       q.date_acct as date_acct,q.amt_payserial  as amt_paybill,(
       case when q.amt_payserial > 0 then '0' else '1' end) as flag,p.stat_bill as stat_bill,
       p.oid_chnl as pay_prod,q.pay_type as pay_type,p.order_info as order_info,q.dt_col as dt_billupd 
     FROM dbpay.tb_pay_bill p, dbpay.tb_paybillserial q
     WHERE p.oid_billno = q.oid_billno 
      AND p.col_accttype = 2
      AND p.col_type = 1 
      AND p.stat_bill in (0, 4) 
      AND q.pay_stat = 1 
      AND q.col_stat = 1
      AND q.DATE_ACCT = %s
   UNION ALL 
     SELECT R.ORDER_ID AS ORDER_ID,R.ORI_COL_CUSTID as traderno,R.ORDER_DT AS ORDER_DTSEND,
       Q.OID_BIZ AS OID_BIZ,R.ORI_ORDER_ID AS OID_BILLNO,q.date_acct as date_acct,
       Q.AMT_PAYSERIAL  AS AMT_PAYBILL,
      (CASE WHEN Q.Colcust_Type='1' THEN '0' WHEN  Q.Paycust_Type='1' THEN '1' END) as flag,
      IF(R.STAT_BILL, '2', '5') AS STAT_BILL,r.oid_chnl as pay_prod,q.pay_type as pay_type,r.memo as order_info,
      q.dt_col as dt_billupd FROM DBPAY.TB_REFUND_BILL R, DBPAY.TB_PAYBILLSERIAL Q 
   WHERE R.oid_refundno = trim(Q.OID_BILLNO)
     AND R.ORI_COL_ACCTTYPE = 2 
     AND R.ORI_COL_TYPE = 1
     AND R.STAT_BILL = 2 
     AND Q.PAY_STAT = 1 
     AND Q.COL_STAT = 1 
     AND Q.DATE_ACCT = %s
   """

try:
#连接MySQL数据库
    connDB = MySQLdb.connect("192.168.1.6","root","root","test" )
    connDB.select_db('test‘)

#删除昨晚账单的数据
    curDel = connDB.cursor()
    curDel.execute(sqlDel,date_acct)
    connDB.commit()
    curDel.close()

#插入昨天账单的数据
    curIns = connDB.cursor()
    curIns.execute(sqlIns,(date_acct,date_acct,date_acct))
    connDB.commit()
    curIns.close()
    connDB.close()
    print ('Insert the billing data successfully! %s' %time.strftime('%Y-%m-%d %H:%M:%S'))

#异常
except MySQLdb.Error,err_msg:
    print "MySQL error msg:",err_msg

Python脚本---在 MySQL数据库中跑批加载多个表的数据相关推荐

  1. python脚本监控mysql数据库_Python脚本监控mysql数据库,Python脚本监控mongo数据库

    任务:应帅气的领导要求,需要监控生产环境mysql和mongo数据库服务.不仅要connect successful还要进行数据交互进一步确认数据库服务正常. 思路: mysql和mongo 数据库i ...

  2. mysql数据库中查询第几条到第几条数据_在 mysql 数据库中,从查询结果的第四条记录开始选取5条记录,下面 sql 语句正确的是( )...

    [单选题]同一种货物,在同一线路上或平行线路上作相对方向的运送,而与对方运程的全部或一部分发生重迭交错的运输被称为( ). [多选题]水闸一般由()三部分组成 [单选题]在一个常规的统计表内,非必需包 ...

  3. python示例--下载mysql数据库中数据--excel表格,合并表格

    用到的知识点 1.mysql连接 2.pandas的concat数据合并 3.路径等 import threading import requests import json import pymys ...

  4. shell脚本将mysql数据库中查询结果导出制作成.CSV格式文件;或.txt/.log文件

    #第一种方法在命令行中直接执行下面代码(.log可替换为其他格式文件) mysql -hlocalhost -P3306 -uroot -p1234 -e"select * from dem ...

  5. python获取mysql表中一列数据_将Python列表插入mySQL数据库中的一列

    嗨,我试图在一列中插入一个python列表,但是它总是在语法上给出错误. 这是新手.谢谢你的帮助.谢谢.在from time import time import MySQLdb import url ...

  6. mysql 数据库中 ,按照字母加数字的字符串排序

    left(c.CODE,1),convert(substr(c.CODE,2,length(c.CODE)-1),SIGNED) https://zhidao.baidu.com/question/1 ...

  7. c 使用mysql的语句_在 MySQL 数据库中使用C 履行SQL的语句

    与 PostgreSQL 类似,可运用许多不一样的言语来访问 MySQL,包括 C.C++.Java 和 Perl.从 Professional Linux Programming 中第 5 章有关 ...

  8. 关于怎么把Excel表格导入MySQL数据库中

    关于怎么把Excel表格导入MySQL数据库中 第一步:建造Excel表格并且编辑数据. 1.我们要建立一个Excel表格文件 2.编辑我们需要的数据 3.保存到你知道的位置 第二步:在MySQL中建 ...

  9. python hive mysql_[7] 编写Python脚本将Hive的运算结果保存到MySQL数据库中(1) - 摩西莫西 - ITeye技术网站...

    编写Python脚本将Hive的运算结果保存到MySQL数据库中(1) 很多情况下,需要将Hive中的运算结果保存到MySQL数据库中,可以通过简单的Python脚本来实现. 例子1:如果获取Hive ...

最新文章

  1. try~Catch语句中异常的处理过程
  2. linux启动phpstudy,phpstudy启动不了解决方法
  3. 计算机英文文献博客,计算机专业外文文献论文翻译.docx
  4. 使用openSSL构造一个支持https的nodejs服务器
  5. python可以做运动控制卡吗_今天,终于明白了运动控制器和运动控制卡的区别
  6. 0530JavaScript基础2
  7. 使用 @ControllerAdvice 和 实现ResponseBodyAdvice接口, 拦截Controller方法默认返回参数,统一处理返回值/响应体
  8. linux怎么复制文件夹全部内容,linux局域网怎么复制文件夹下的全部文件到另外文件夹...
  9. html是一种描述的沙子语言,小学低年级语文阅读训练
  10. mysql三大范式 答案_数据库逻辑设计之三大范式通俗理解,一看就懂,书上说的太晦涩...
  11. Java中Integer与String类型互转
  12. 求职干货:再也不怕面试官问斐波那契数列了!
  13. 简谈Java的join()方法(转)
  14. 《BI那点儿事》Cube的存储
  15. Java_基础—readLine()和newLine()方法
  16. 算法设计——极大极小搜索
  17. 6种最好的图片无损压缩工具
  18. 什么是火起来的“宅经济”,重庆阿尔克互联网技能帮扶学习,进入互联网
  19. Flume 1.9.0用户指南
  20. 有关队列的操作 python

热门文章

  1. 数据库开发工程师-招聘技能要求
  2. 物联网技术与应用【第二章测验答案】
  3. 关于汇川PLC变量中的数组如何用到威纶通的触摸屏中
  4. 安卓自定义日期控件(仿QQ,IOS7)
  5. 微信公众号开发 https访问的封装
  6. canvas 雨滴效果
  7. 百度富文本编辑器umeditor,ueditor字体,字号修改无效的问题 umeditor1_2_3
  8. win10 家庭版 没有「本地用户和组」
  9. 546计算机综合什么意思,装系统出现546怎么设置
  10. 使用Qwt绘制历史曲线