snake_l 发表于 2017-5-5 09:08:15

偷偷写一个 python的批处理任务

需求:
引用

时空论坛
求助,关于SQL的...
isqlw -S myserver -d [数据库名] -u sa -p -i -o ouput.txt
这句是用命令行执行sql的语句,公司客户比较多,要是为每一个客户都写一条语句,那要好几百条,能不能把数据库名和sql语句当2个参数来传递,sql 是一个存储过程,也有2个参数一个是数据库名另一个是存储路径,这是主管给的任务,网上查了半天也没有找到,写过的兄弟们帮我看看啊。




#!/usr/bin/env python
# -*-coding:utf8-*-
# Filename:isql.py
importos
#数据库名称,输出文件存储路径
config = {
#键值对格式 数据库名:存储路径
'db1':'path1',
'db2':'path2',
#其它很多的数据
}
fordbname,path in config.items()
print '----- 开始处理 %s -----' % dbname
print '----- 替换文本 -----'
f1 = file(sqlfile,'r')
sql_str = f1.readline()
if len(sql_str)== 0:
print '----- 没有读取到文本内容 -----'
continue
sql_str = 'sql_pro(%s,%s)' % (dbname,path)
command_str='isqlw -S mysqlserver -d %s -i "%s" -o outfile.txt' % (dbname,sql_str)
if os.system(command_str)!=0 :
print ' ---- 执行命令失败 [%s]----' % command_str
print '----- %s处理结束-----' % dbname
print '#####大结局#####'
页: [1]
查看完整版本: 偷偷写一个 python的批处理任务