如何能自定義自動提取sybase數據呢?首先,我們要確定sybase里是否安裝了Interactive Sql,有了Interactive Sql,就可以使用dbisql進行連接。
格式:dbisql -datasource[dsn-name] -host[hostname] -port -nogui[是否使用交互窗口] -onerror[]
主要介紹關鍵參數,還有其他參數可以自己去百度一下~~~
-datasource:DNS名稱
-host:數據庫ip地址
-nogui:是否使用交互窗口
-onerror:發生錯誤時continue或exit
方法一:基于BAT方式運行(打開TXT,輸入以下指令并保存,改名為TEXT.BAT,其中XX.SQL是已寫好的固定腳本,里面寫好)
if exist "ENM1.sql" dbisql -datasource ENM1 ENM1.sql
if exist "ENM6.sql" dbisql -datasource ENM6 ENM6.sql
方法二:可用Python/ target=_blank class=infotextkey>Python/VBA進行調用(可動態實時提取小時或天腳本)
path1 = os.getcwd()
enm1_r= "dbisql -datasource enm1 -onerror continue read " + path1 + "scripenm1.sql ['" + sdate + "'] ['" + edate + "'] ['" + edate + "'];"
1、利用win任務進行定時執行
2、.SQL模板需要有輸入參數,保存路徑等
腳本模板:如ENM1.SQL
PARAMETERS sdate,edate,hour;
select .......
..............
output to "D:scripoutputenm6_ENM1_{edate}.csv" FORMAT TEXT DELIMITED BY ',' QUOTE '' WITH COLUMN NAMES;