IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 【Oracle】2022年 python3连接oracle数据库(window环境) -> 正文阅读

[系统运维]【Oracle】2022年 python3连接oracle数据库(window环境)

1 Oracle数据库

1.1 Oracle环境配置&客户端连接

1.1.1 下载安装Oracle绿色版客户端instantclient:

到oracle官网下载instantclient basic包,解压缩到E:\ProgramFile\instantclient;

1.1.2 设置环境变量:

NLS_lANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK(注意中间有空格,这个如果不设,toad查询中文会是乱码)
TNS_ADMIN= E:\ProgramFile\instantclient
Path=…;E:\ProgramFile\instantclient

1.1.3 配置tnsnames.tns文件:

在E:\ProgramFile\instantclient下建立文件tnsnames.ora,将下面内容粘贴进该文件:

自定义名称 =
(DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST =  127.0.0.1)(PORT = 1111))
    )
    (CONNECT_DATA =
      (SERVER=DEDICATED)
      (SERVICE_NAME = database_name)
    )
  )

注:图中红色部分根据自己需要进行更改。

1.1.4 配置PL/SQL Developer进行连接:

在tools/preference里,oracle-connection选项配置oracle home和oci library:

oracle home:E:\ProgramFile\instantclient
oci library:E:\ProgramFile\instantclient\oci.dll

在这里插入图片描述
配置完成,可以重启 plsql developer,输入正确的用户名和密码就可以连接啦

1.2 python连接oracle数据库

1.2.1 安装cx_Oracle包:

http://cx-oracle.sourceforge.net/ 需要注意下版本,根据操作系统和已安装的python版本进行选择
在这里插入图片描述

由于我的python是3.8版本的,所以直接使用pip install cx_Oracle,安装的是cx_Oracle 8.3。

cx_Oracle 8.3 已经使用 Python 3.6 到 3.10 版本进行了测试。旧版本的 cx_Oracle 可以与以前的 Python 版本一起使用。您可以将 cx_Oracle 与 Oracle 11.2、12、18、19 和 21 客户端库一起使用。Oracle 的标准客户端-服务器版本互操作性允许连接到较旧和较新的数据库。例如,Oracle 19c 客户端库可以连接到 Oracle 数据库 11.2。——节选自Oracle官网,见下图,https://oracle.github.io/python-cx_Oracle/。
在这里插入图片描述

1.2.2 安装后的验证:

import cx_Oracle没有报错:
在这里插入图片描述
备注:如果import cx_Oracle 时报错提示找不到OCI.DLL,解决方法:到装了Oracle的机器上找一个,然后copy到Libsite-packages目录下即可。

1.2.3 用python测试连接

import cx_Oracle

conn = cx_Oracle.connect('name/password@127.0.0.1:1111/name')
cursor = conn.cursor()
sql = "select * from table"
try:
    cursor.execute(sql)
    rs = cursor.fetchall()
except:
    print("连接数据库失败")
    print(sql)

print("连接数据库成功")
cursor.close()
conn.close()

输出如下图,说明连接成功了。
在这里插入图片描述

参考博客:
本文主要介绍python对oracle数据库的操作学习
python3连接oracle数据库

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-03-08 22:59:52  更:2022-03-08 23:03:50 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 3:45:58-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码