`
rikugun
  • 浏览: 354369 次
  • 性别: Icon_minigender_1
  • 来自: 南宁
社区版块
存档分类
最新评论

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

阅读更多
需求:
引用

时空论坛
求助,关于SQL的...

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



#!/usr/bin/env python
# -*-coding:utf8-*-
# Filename:isql.py
import	os

#数据库名称,输出文件存储路径
config = {
#键值对  格式 数据库名:存储路径
'db1':'path1',
'db2':'path2',
#其它很多的数据
}
for	dbname,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 '#####大结局#####'
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics