python編寫指令碼,刪除固定使用者下的所有表
指令碼如下:
[oracle@ycr python]$ more t_del.py
#/usr/bin/python
#coding:utf8
import sys
import cx_Oracle
i=0
conn=cx_Oracle.connect('%s/%s@%s' % (sys.argv[1],sys.argv[2],sys.argv[3]))
cursor=conn.cursor()
cursor.execute('select table_name from user_tables')
rows=cursor.fetchall()
for row in rows:
cursor.execute('drop table %s cascade constraints purge' % row)
i+=1
cursor.close()
conn.close()
print 'Drop table complete! %d tables droped' % i
測試
建立測試表,使用test使用者執行如下指令碼:
create table t1 as select * from user_tables;
create table t2 as select * from user_tablespaces;
create table t3 as select * from user_objects;
執行程式:
python t_del.py test oracle YCR2
此小程式有三個引數,test為要刪除表的使用者名稱,oracle為密碼,YCR2為連線字串。
執行結果如下:
python t_del.py test oracle YCR2
Drop table complete! 3 tables droped
------------------------------------------------------------------------------
本指令碼寫來練習用,實際意義不是很大,昨天開發同時讓幫忙spool出來一個刪除表的指令碼,自動化要求較高,所以寫了個小程式。
不過執行此程式需要安裝cx_Oracle模組,相對繁瑣。
Clark
2016.08.03
[oracle@ycr python]$ more t_del.py
#/usr/bin/python
#coding:utf8
import sys
import cx_Oracle
i=0
conn=cx_Oracle.connect('%s/%s@%s' % (sys.argv[1],sys.argv[2],sys.argv[3]))
cursor=conn.cursor()
cursor.execute('select table_name from user_tables')
rows=cursor.fetchall()
for row in rows:
cursor.execute('drop table %s cascade constraints purge' % row)
i+=1
cursor.close()
conn.close()
print 'Drop table complete! %d tables droped' % i
測試
建立測試表,使用test使用者執行如下指令碼:
create table t1 as select * from user_tables;
create table t2 as select * from user_tablespaces;
create table t3 as select * from user_objects;
執行程式:
python t_del.py test oracle YCR2
此小程式有三個引數,test為要刪除表的使用者名稱,oracle為密碼,YCR2為連線字串。
執行結果如下:
python t_del.py test oracle YCR2
Drop table complete! 3 tables droped
------------------------------------------------------------------------------
本指令碼寫來練習用,實際意義不是很大,昨天開發同時讓幫忙spool出來一個刪除表的指令碼,自動化要求較高,所以寫了個小程式。
不過執行此程式需要安裝cx_Oracle模組,相對繁瑣。
Clark
2016.08.03
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29135257/viewspace-2122884/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 刪除一個使用者下的所有表指令碼指令碼
- 利用PHP指令碼刪除MySQL上所有的表PHP指令碼MySql
- 寫一個Python指令碼刪除一個.py檔案的所有註釋Python指令碼
- ORACLE刪除當前使用者下所有的表的方法Oracle
- 刪除使用者下的所有的objectObject
- Oracle 刪除使用者、表空間、資料檔案、使用者下的所有表Oracle
- SQL刪除資料庫裡所有表的外來鍵,同時刪除所有使用者表SQL資料庫
- shell指令碼之刪除固定天數之前的檔案指令碼
- 【Oracle】刪除所有表Oracle
- 如何刪除資料庫下的所有表(mysql)資料庫MySql
- 刪除使用者及使用者下的所有資料
- 刪除一個使用者下所有的物件物件
- 刪除資料庫所有使用者表(SqlServer)資料庫SQLServer
- Oracle中刪除使用者下所有物件的多種方法Oracle物件
- 【shell 指令碼】刪除/var/log 下的日誌指令碼
- 批次刪除指定目錄下的sh指令碼指令碼
- sql server編寫archive通用模板指令碼實現自動分批刪除資料SQLServerHive指令碼
- 徹底刪除mac使用者下的所有檔案和資料Mac
- 日誌刪除指令碼指令碼
- 【SQL】【指令碼】遷移當前使用者下所有表和索引到新表空間SQL指令碼索引
- 生成指令碼,得到所有表的外來鍵約束,然後刪除並重建這些約束指令碼
- mysql下批量清空某個庫下的所有表(庫不要刪除,保留空庫)MySql
- js刪除父元素下所有的元素節點程式碼JS
- gdb指令碼編寫指令碼
- Shell 指令碼編寫指令碼
- 刪除資料庫指令碼資料庫指令碼
- oracle級聯刪除使用者,刪除表空間Oracle
- python編寫的簡單的mysql巡檢指令碼PythonMySql指令碼
- 刪除表空間及所有指向關係
- 指令碼定期自動刪除ASM下的歸檔檔案指令碼ASM
- 【工具】批量刪除binlog 的指令碼指令碼
- 編譯FFMPEG原始碼的指令碼編寫案例編譯原始碼指令碼
- javascript刪除所有cookie例項程式碼JavaScriptCookie
- 如果執行了root.sh和另一個指令碼,還要到/usr/bin下刪除相關命令,刪除所有$oracle_home下目錄檔案指令碼Oracle
- 油猴指令碼編寫指令碼
- 編寫git指令碼.shGit指令碼
- 定時刪除檔案指令碼指令碼
- 編寫shell指令碼的規範指令碼