Python

python flask web加oracle

前提條件:1、python2.7版本,

2、flask版本0.12.2,

3、flask-Bootstrap版本3.3.7.1,

4、cx_oracle版本6.2.1,

以上插件安裝在file-->setting-->Project Interpreter右側+號添加,或者安裝Python之後使用pip進行安裝,此外ide爲pycharm2018。

下面說道重點Oracle的鏈接與編碼問題(與HTML交互):

import cx_Oracle

第一步引入cx_Oracle

conn = cx_Oracle.connect('用戶名','密碼','ip:端口/服務名')

這裏很多網上說的可能沒寫端口是不對的,需要寫上端口已親測,

另外兩種連接方式

conn = cx_Oracle.connect('用戶名/密碼@ip:端口/服務名')
或
dsn = cx_Oracle.makedsn('ip','port','服務名')
conn = cx_Oracle.connect('用戶名','密碼',dsn)

不過這兩種方式未測。

上述連接完畢就可以進行查詢等操作,但是此時查詢的數據不能有中文,如果有中文會報錯,所以接下來設置編碼方式,首先

引入兩個py
import sys
import os

要記住一個都不能缺,之後

在代碼中加入如下
os.environ['NLS_LANG'] = 'SIMPLIFIED CHINESE_CHINA.UTF8' 
或os.environ['NLS_LANG'] = 'AMERICAN_AMERICA.AL32UTF8'
reload(sys)
sys.setdefaultencoding('UTF-8')

NLS_LANG兩種方式,我這裏測試使用的識第一種,上面的設置會讓oracle不亂碼,但是輸出部分想要不亂碼需要在py文件頭部加上# _*_ coding: utf-8 _*_使得輸出中文不亂碼。

如果上述都試過還是有問題請嘗試設置環境變量

NLS_LANG=SIMPLIFIED CHINESE_CHINA.UTF8

並且

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章