linux下python导出sybase 数据库 表记录的方式

时间:2023-12-29 22:24:14

导出sybase 数据库 表记录的方式

1 执行启动sybase 数据库命令 
code :

dbeng7 gkdb

2 执行 连接sybase 数据库命令
code :

dbisql -c "uid=dba111;pwd=222sql;eng=gk333db" -q oilvouch.sql

3 执行 SQL脚本文件oilvouch.sql 进行导出文件 oilvouch.txt 
code:

select top 10 * from oilvouch;
output to /root/oilvouch.txt format ascii;
commit;

---------------------------------------------
shell 如下:

dbeng7 gkdb
dbisql -c "uid=dba111;pwd=222sql;eng=gk333db" -q oilvouch.sql

==============================================
sql 修改如下:
select top 10 ttc,cardno,machineoilno,oilno,takedate,oilgunno,
openo,liter,price,amount,balance,pumpno,paymode,payunit,accountdate,tracode,
getttime,teamvouchno,transflag,billstatus from oilvouch order by takedate desc

===============================================

最终系统实现:

1 oildata_vouch.sql

select top 20 * from oilvouch order by takedate desc;
output to /root/oilvouch.txt format ascii;
commit;

2 oildata_export
dbisql -c "uid=dba;pwd=sql;eng=gkdb" -q oildata_vouch.sql
mv oilvouch.txt /opt/vouchoil.txt

3 oildata_py
#! /user/bin/env python
#coding=utf-8
import time,os,sched,shutil
schedule=sched.scheduler(time.time,time.sleep)
def perform_command(cmd,inc):
schedule.enter(inc,0,perform_command,(cmd,inc))
os.system(cmd)
def timming_exe(cmd,inc=60):
schedule.enter(inc,0,perform_command,(cmd,inc))
schedule.run()
print("exe run..shell after 10 senconds ")
#result=os.popen("dbeng7 gkdb")
result=os.popen("dbeng7 /smc20/database/gkdb.db")
print(result)
timming_exe("./oildata_export",10)
#shutil.copy("oilvouch.txt","/opt/oilvouch.txt")