[转帖]Python连接Oracle数据库进行数据处理操作

python,连接,oracle,数据库,进行,数据处理,操作 · 浏览次数 : 0

小编点评

**Python连接Oracle数据库,并查询、提取Oracle数据库中数据** ```python import jaydebeapi import pandas as pd # 连接数据库 url = 'jdbc:oracle:thin:@ip:端口:实例名' user = 'username' password = 'password' driver_path = '/opt/ojdbc6.jar' conn = jaydebeapi.connect( driver_path=driver_path, url=url, user=user, password=password ) # 读取数据 sql_str = 'select * from tablename' df = pd.read_sql_query(sql_str, conn) # 关闭连接 conn.close() # 创建表 sql_str = 'create table table_name ( name VARCHAR(10) PRIMARY KEY, city VARCHAR(10) NOT NULL ) ' cur = conn.cursor() cur.execute(sql_str) conn.close() # 插入数据 data = { 'name': ['Lily', 'Jenny'], 'city': ['KunMing', 'ShangHai'] } df1 = pd.DataFrame(data) # 连接数据库并插入数据 conn = jaydebeapi.connect( driver_path=driver_path, url=url, user=user, password=password ) cur = conn.cursor() for i in range(len(df1)): sql_str = 'insert into table_name values (%s, %s)' % (df1.iloc[i][0], df1.iloc[i][1]) cur.execute(sql_str) conn.close() # 删除数据 sql_str = 'TRUNCATE TABLE table_name' cur = conn.cursor() cur.execute(sql_str) conn.close() ``` **其他操作** * 您可以使用 `conn.execute()` 方法执行其他 SQL 语句,例如更新、删除或查询。 * 您可以使用 `conn.commit()` 方法提交更改到数据库,并使用 `conn.rollback()` 方法回滚更改。 * 您可以使用 `conn.close()` 方法关闭连接。

正文

https://www.dgrt.cn/a/2259443.html?action=onClick

 

解决以下问题:

  1. Python连接Oracle数据库,并查询、提取Oracle数据库中数据?
  2. 通过Python在Oracle数据库中创建表
  3. Python数据插入到Oracle数据库中?
  4. Python删除Oracle数据库中数据?

一、 Python连接Oracle数据库,并查询、提取Oracle数据库中数据?

url='jdbc:oracle:thin:@ip:端口:实例名'
user='username'
password='password'
dirver='oracle.jdbc.driver.OracleDriver'
jarFile='/opt/ojdbc6.jar'
sqlstr = '''select * from tablename'''
conn=jaydebeapi.connect(dirver,url,[user,password],jarFile)
df = pd.read_sql_query(sqlstr,conn)
conn.close()

二、 通过Python在Oracle数据库中创建表

url='jdbc:oracle:thin:@ip:端口:实例名'
user='username'
password='password'
dirver='oracle.jdbc.driver.OracleDriver'
jarFile='/opt/ojdbc6.jar'
conn=jaydebeapi.connect(dirver,url,[user,password],jarFile)
curs1=conn.cursor()
sqlStr1 = '''create table table tablename(
name varchar(10) ,
city varchar(10)
)'''
curs1.execute(sqlStr1)
curs1.close()
conn.close()

tablename——表名
name,city——列名

三、 Python数据插入到Oracle数据库中

df1 = pd.DataFrame(data = {name:[Lily,Jenny],city:[KunMing,ShangHai])
#把df1中数据插入到表tablename中
url='jdbc:oracle:thin:@ip:端口:实例名'
user='username'
password='password'
dirver='oracle.jdbc.driver.OracleDriver'
jarFile='/opt/ojdbc6.jar'
conn=jaydebeapi.connect(dirver,url,[user,password],jarFile)
curs1 = conn.cursor()
for i in range(len(df1)):sqlStr1 = '''insert into tablename values ('%s','%s'')'''%(df1.iloc[i][0],df1.iloc[i][1])
curs1.execute(sqlStr1)
curs1.close()
conn.close()

四、 Python删除Oracle数据库中数据

url='jdbc:oracle:thin:@ip:端口:实例名'
user='username'
password='password'
dirver='oracle.jdbc.driver.OracleDriver'
jarFile='/opt/ojdbc6.jar'
conn=jaydebeapi.connect(dirver,url,[user,password],jarFile)
curs1 = conn.cursor()
sqlStr1 = '''TRUNCATE table tablename'''
curs1.execute(sqlStr1)
curs1.close()
conn.close()

与[转帖]Python连接Oracle数据库进行数据处理操作相似的内容:

[转帖]Python连接Oracle数据库进行数据处理操作

https://www.dgrt.cn/a/2259443.html?action=onClick 解决以下问题: Python连接Oracle数据库,并查询、提取Oracle数据库中数据? 通过Python在Oracle数据库中创建表 Python数据插入到Oracle数据库中? Python删除

[转帖]cx_Oracle.DatabaseError: ORA-28040

背景: python第三方库cx-Oracle连接Oracle数据库报错 ORA-28040 cx_Oracle.DatabaseError: ORA-28040: No matching authentication protocol 解决方法: 1- 安装驱动 【找不到上传附件的地方后补】 2-

【转帖】【笔记】python连接神通数据库

https://www.cnblogs.com/wyongbo/p/17054924.html python连接国产神州通用数据库。 一、准备 下载whl及dll: 链接: https://pan.baidu.com/s/1lwE-FwIsf-aYjoqCPij2hA 提取码: 49qp 二、安装

[转帖]如何用python连接Linux服务器

1.安装paramiko库 pip install paramiko 2.使用paramiko库连接linux #导入库 import paramiko #创建一个sshclient对象 ssh = paramiko.SSHClient() #允许连接不在know_host中的主机 ssh.set_

[转帖]Python模块winRM

https://www.jianshu.com/p/ac095497bad4 一、介绍 winRM服务是windows server下PowerShell的远程管理服务。Python脚本通过连接winRM模块操作windows命令行。 二、使用方法 被控制windows server上winRM服务

【转帖】基于paramiko的二次封装

https://www.jianshu.com/p/944674f44b24 paramiko 是 Python 中的一个用来连接远程主机的第三方工具,通过使用 paramiko 可以用来代替以 ssh 连接到远程主机执行命令。 paramiko 模块提供了两个核心组件,分别是 SSHClient 

[转帖]关于winrm远程ps登录执行出现中文乱码和?乱码问题及其解决办法

https://segmentfault.com/a/1190000040566946?utm_source=sf-similar-article python的winrm库提供了命令行远程连接的功能,可以实现远程登录并进行执行指令的功能:1.远端登录 import winrm auth = (us

[转帖]Python-Curses模块

Python-Curses 什么是Curses?Python Curses模块开始我们的编程吧(启动与结束)重要使用方法(包装用法)Windows and Pads显示文本属性和颜色用户输入 什么是Curses? curses库为基于文本的终端提供独立于终端的屏幕绘制和键盘处理设施;这些终端包括VT

[转帖]python 性能优化监控工具_Linux性能优化(四)——BCC性能监控工具

一、BCC简介 1、BCC简介 BCC是一个Python库,简化了eBPF应用的开发过程,并收集了大量性能分析相关的eBPF应用。BCC为BPF开发提供了不同的前端支持,包括Python和Lua,实现了map创建、代码编译、解析、注入等操作,使开发人员只需聚焦于用C语言开发要注入的内核代码。 BCC

[转帖]python读取配置文件获取所有键值对_python总结——处理配置文件(ConfigParser)

python处理ConfigParser 使用ConfigParser模块读写ini文件 (转载) ConfigParserPython 的ConfigParser Module中定义了3个类对INI文件进行操作。分别是RawConfigParser、ConfigParser、 SafeConfig