欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

第二章 如何利用Python读取Oracle表数据和表头转化为字典类型

程序员文章站 2022-12-02 16:29:30
第一章跟大家说了如何链接Oracle,这边就不多说了,那就开始接下来的操作目的: 把表头与字段值转化为字典的形式操作步骤:一、导入cx_Oracleimport cx_Oracle二、链接数据库conn = cx_Oracle.connect(“用户名/密码@host:port/service_name”)三、创建一个游标对象cur = conn.cursor()四、执行sql语句1、准备sql语句sql = “SELECT * FROM dual where ID = 69”2、执...

第一章跟大家说了如何链接Oracle,这边就不多说了,那就开始接下来的操作

目的: 把表头与字段值转化为字典的形式

操作步骤:
一、导入cx_Oracle

import cx_Oracle

二、链接数据库

conn = cx_Oracle.connect(“用户名/密码@host:port/service_name”)

三、创建一个游标对象

cur = conn.cursor()

四、执行sql语句

1、准备sql语句

sql = “SELECT * FROM dual where ID = 69”

2、执行sql语句

res = cur.execute(sql)

五、提取sql语句查找的全部内容

data = cur.fetchall()

六、获取表字段与值的键值对

1、for循环遍历data(数据结果为列表里的元素是元祖,每个元祖是一条记录),将遍历出来的元祖转化为列表

for i in data:

  list1 = list(i)

2、获取表字段

des = cur.description

print("表的描述:", des)

3、通过for循环遍历des(数据结果为列表里的元素是元祖,每个元祖包含类型、取值范围等等),将遍历出来的元祖的第一个字段读取出来,以逗号隔开

t = “,”.join([item[0] for item in des])

4、利用字符串split方法通过逗号分离,保存到列表里

watch_head = t.split(’,’)

5、通过zip打包的方式,把表字段与值变成字典类型

dict1 = dict(zip(watch_head, list1))

print(type(dict1))

第二章 如何利用Python读取Oracle表数据和表头转化为字典类型
下面是具体的代码:

import cx_Oracle


# 第一步:链接数据库
conn = cx_Oracle.connect(conn = cx_Oracle.connect("用户名/密码@host:port/service_name"))
# 第二步:创建一个游标对象
cur = conn.cursor()

# "user/password@host:port/service_name"
# 第三步:执行sql语句
# 1、准备sql语句
# sql = conf.get_str("SQL", "sql1")
sql = "SELECT * FROM dual where ID = 69"
# 2、执行sql语句
res = cur.execute(sql)
# print(res)
# 第四步:提取sql语句查找的内容
data = cur.fetchall()
# print(data)
for i in data:
    list1 = list(i)
    # print(list1)
    des = cur.description
    # print("表的描述:", des)
    t = ",".join([item[0] for item in des])
    print(type(t))
    watch_head = t.split(',')
    print(watch_head)
    dict1 = dict(zip(watch_head, list1))

    print(dict1)
    # print(dict1['ID'])

本文地址:https://blog.csdn.net/weixin_45282113/article/details/107532792