啊,遇到一個問題。
有600多張表要進行下發,我得先確定這些表在我係統裏到底有沒有。
偷懶,直接 excel裏,補全:select count(*) from t_a;
然後,到plsql中去執行,發現執行到最後的時候,已經提醒:
超出最大可打開的tab數。
而且,問題是,一個一個看,把自己都已經看花了。
靈機一動,放到bat中執行
具體操作如下:
一、
select count(\*) from t_a;
select count(*) from t_b;
exit;
把這幾句話寫在txt中,然後另存爲時,注意,選擇 所有文件,文件名命名爲: select.sql
二、
接着,在同目錄下的txt中編寫如下語句:
sqlplus usr_1/psw_1@link_name @select.sql > lastlog_select.log
然後,另存爲,選擇 所有文件, 文件名 命名爲 select.bat
雙擊該bat。
即可執行了。
三、
然後在 lastlog_select.log 中,查找: 已選擇 或者 -----,就知道有幾張表裏有數據,也就是說,有幾張表存在了。
問題解決~
下面給部分小白稍微解釋一下這些語句。
- select.sql 中的 exit 不可省,否則 執行完後,黑框框不退出,還要自己退出
- select.bat 文件中:
- 第一部分 sqlplus usr_1/psw_1@link_name 其實就是用sqlplus 連接到對應的數據庫(這個數據庫可以是本地的,也可以是遠端的,只要 tnsname.ora文件中定義好就可以)
- @select.sql 表示去執行 select.sql 文件
- > lastlog_select.log 表示將輸出的內容寫到 lastlog_select.log中去
我們會在此後的文章中詳細介紹bat 及 對應 sql 文件的編寫
敬請期待~