python oracle使用心得

2022-10-11 06:06:11 字數 3531 閱讀 8624

1. 首先確定版本。 

解壓到指定目錄,加入環境變數

變數名 oracle_home

變數名 tns_admin

變數名 nls_lang   

變數名 path

在解壓的oracle目錄instantclient_11_2/network/admin建立tnsnames.ora檔案,寫入連線資料庫位址

1. 首先確定版本。 

3. 安裝和環境變數配置

unzip instantclient-basic-linux.x64-11.2.0.4.0.zip

unzip instantclient-sdk-linux.x64-11.2.0.4.0.zip

unzip instantclient-sqlplus-linux.x64-11.2.0.4.0.zip

instantclient_11_2目錄下network/admin建立tnsnames.ora檔案,寫入連線資料庫位址

export oracle_home=/home/oracle/instantclient_11_2

export path=$oracle_home:$path

export tns_admin=$oracle_home/network/admin

export ld_library_path=$oracle_home:$ld_library_path

export nls_lang=american_america.zhs16gbk

建立軟連線

ln -s /home/oracle/instantclient_11_2/libclntsh.so.11.1 /home/oracle/instantclient_11_2/libclntsh.so

tar -xvf  cx_oracle-5.2.1.tar.gz

cd cx_oracle-5.2.1

python setup.py install

5.匯入測試

import cx_oracle

# -*- coding: utf-8 -*-

import cx_oracle

from east_web import settings

from east_web.log_config import django_logger as logger

class oracle(object):

def __init__(self):

self.__username = settings.oracle_conn['username']

self.__password = settings.oracle_conn['password']

self.__host = settings.oracle_conn['host']

self.__port = settings.oracle_conn['port']

self.__tnsname = settings.oracle_conn['tnsname']

self.cursor = self.connect()

def connect(self):

"""連線資料庫, 獲取游標

語法: cx_oracle.connect('username','pwd','ip/hostname:port/tnsname')

或cx_oracle.makedsn(ip,port,tnsname)

cx_oracle.connect(username,pwd,dsn)

"""try:

dsn = cx_oracle.makedsn(self.__host, self.__port, self.__tnsname)

conn = cx_oracle.connect(self.__username, self.__password, dsn)

# self.__conn = cx_oracle.connect(self.__username, self.__password,

# self.__host + ':' + self.__port + '/' + self.__service_name)

cursor = conn.cursor()

return cursor

except exception as err:

logger.error(err)

def ogg_process_lag(self, sql):

""":param sql:

:return: 執行sql

"""self.cursor.execute(sql)

def fetchone(self):

""":return: 返回第一條資料

"""res_one = self.cursor.fetchone()

return res_one

def fetchmang(self, n):

""":param n:

:return: 返回第n條資料

"""res_mang = self.cursor.fetchmany(n)

return res_mang

def fetchall(self):

""":return: 返回所有資料

"""res_all = self.cursor.fetchall()

return res_all

def main():

oracle = oracle()

oracle.ogg_process_lag("select * from table")

print oracle.fetchmang(7)

if __name__ == '__main__':

main()

python oracle 資料庫連線

firstly 一定要搞清楚版本 1 oracle 客戶端的版本32 or64 11g 2 python 的版本 32or 64 4 安裝oracle客戶端之後,開啟oracle客戶端中的檔案,找到 複製oci,oraocci11,oraociei11的3個dll貼上到你的py目錄的libs sit...

python oracle 環境變數 亂碼

coding utf 8 import os oracle庫位置 解決32 64位版本不一至 os.environ path r c program files oracle instantclient 12 1 os.environ path oracle編碼 解決亂碼 os.environ nl...

使用HtmlParser使用心得

最近因工作的需要,需要檢查html那些不合理或則什麼沒有閉合。在網上找了很久都沒有找到比較合適的工具。於是句試著搞搞htmlparser。獲取html的 string getcontentfromurl string url content sb.tostring response.close re...