Python模拟Oracle的SQL/PLUS工具的实现办法[Oracle防范]
本文“Python模拟Oracle的SQL/PLUS工具的实现办法[Oracle防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
用Python模拟Oracle的SQL/PLUS工具的实现办法是本文我们主要要介绍的内容.我们知道,团队筹划开辟数据库服务平台,需求用到一些服务器的脚本开辟,为了理解python,给自己定了一个模拟sqlplus的小需求,然后去实现.
python开辟快速,集成很多常用的大众包,对常用数据构造利用很便利,最大的缺陷是版本较多,新版本不向前兼容,对AIX及HP-UNIX不太常用的OS也贫乏直接支持.
以下是工具演示:
以下是源代码:
以下代码用的python版本是python2.7 需求安装cx_Oracle开辟包(python拜候ORACLE用的)
import cx_Oracle
import os
import sys
os.environ['NLS_LANG'] ='AMERICAN_AMERICA.ZHS16GBK';
connectresult=0;
promptstr="";
fetchsize=50;
#conn = cx_Oracle.connect('yzs/yzs@mydb');
print("------------Welcome To Python Sqlplus ----------------------");
print("
Version : 0.1");
Author : MKing");
print("
qi
Blog
Sina weibo print("
Release Date: 2011-08-08");
print("
Login Example1:username/password@tnsname");
print("
Login Example2:username/password@host:port/dbname");
print("
Input exit to Quit");
print("-----------------------------------------------------------");
print("");
def getConnect(loginstr):
global connectresult
global promptstr
try:
connectresult=0;
promptstr="";
conn= cx_Oracle.connect(loginstr);
promptstr=conn.username+"@"+conn.dsn;
print("Database version:",conn.version);
print("Connected.");
connectresult=1;
return conn
except cx_Oracle.InterfaceError as exc:
error, = exc.args
print(exc);
except cx_Oracle.DatabaseError as exc:
error, = exc.args
print(error.message);
def getcolformatstr(coldef):
if coldef[1]==cx_Oracle.NUMBER:
formatstr='%12s';
else:
if coldef[2]<=32:
formatstr='%-'+str(coldef[2])+'s';
else:
formatstr='%-32s';
return formatstr
#########################################################################
while 1:
try:
以上是“Python模拟Oracle的SQL/PLUS工具的实现办法[Oracle防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |