首页 > 代码库 > 删除凭证表科目中的上级科目的python脚本
删除凭证表科目中的上级科目的python脚本
上个礼拜,遇到一个坑爹的事情,就是经理要我把excel格式的凭证表(财务账套中的一个表)里除最末级科目的科目全删掉,这让并不精通office的我很头疼,因为单是一年的凭证有十几万条记录(手动的话从早删到晚都删不完啊)。后来我就想能不能,把excel导进mysql里,然后通过python处理呢?因为python操作mysql非常方便的事,最后经过一番构思写了个小程序来完成这件事了。
#coding=utf8 import MySQLdb #删除凭证表中科目的上级科目,只保留科目的最末节科目 class conn: #定义用于执行sql的类 connect = MySQLdb.connect("192.168.30.235","shiyan","123456","hongcheng") result = "" sql = "" def __init__(self,sql): self.sql = sql def exe(self): cur = self.connect.cursor() cur.execute(self.sql) self.result = cur.fetchall() self.connect.commit() #self.connect.close() return self.result def __del__(self): pass n = 4 leve01 = "____" #一级科目通配符 while n != 0: #循环遍历除一级科目的科目,从最末节科目开始往上级科目循环 leve01 = leve01 + n*"___" n = n-1 make_sql = "select * from code_14 where kmdm like \""+leve01+"\"" #加载满足条件的科目 query01 = conn(make_sql) leve01 = "____" result1 = query01.exe() for list01 in result1: #循环遍历删除当前科目的上级科目 sjkm = list01[0][0:len(list01)-4] sql_del = "delete from hc14 where kmdm = \""+sjkm+"\"" #组合删除sql query02 = conn(sql_del).exe() print sql_del #打印删除sql print "遍历完毕!"
删除凭证表科目中的上级科目的python脚本
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。