全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 python论坛
1104 4
2024-06-17
pyhton读取各种数据库数据的两种方式
1.通过pandas模块中的pd.read_sql() or pd.read_sql_query()读入到df中
2.通过database的指针

以oracle数据库为例:

example 1
conn = oracledb.connect("user/pwd@host:port/db_name")
if conn:
    print('success')
import pandas as pd
sql='SELECT * FROM  dbname.LMALL'

df=pd.read_sql(sql,conn)
conn.close()
把结果读入到df中,再进行下一步的分析
df
df.info()
df.describe().T

example 2
conn = oracledb.connect("user/pwd@host:port/db_name")
if conn:
    print('success')
cursor=conn.cursor()
sql='select sysdate from dual'
cursor.execute(sql)

rows = cursor.fetchall()
--通过指针逐行遍历数据记录,在循环体中可以通过append的方式建立数据集

for row in rows:
    print(row)
conn.close()

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2024-6-18 13:25:54
在Python中读取数据库数据的两种主要方式如下:

### 1. 使用Pandas模块

使用`pandas`库中的`read_sql()`或`read_sql_query()`函数可以直接将SQL查询结果转化为DataFrame,便于数据分析和处理。

#### 示例代码:

```python
import oracledb
import pandas as pd

# 建立数据库连接
conn = oracledb.connect("user/pwd@host:port/db_name")
if conn:
  print('成功建立连接')

# 定义SQL查询语句
sql='SELECT * FROM dbname.LMALL'

# 使用read_sql()函数执行SQL并读取结果到DataFrame中
df=pd.read_sql(sql,conn)

# 关闭数据库连接
conn.close()

# 打印DataFrame的信息和描述性统计信息
print(df)
print(df.info())
print(df.describe().T)
```

### 2. 使用原生的数据库指针(Cursor)

这种方式不通过`pandas`,而是直接使用数据库模块提供的游标对象执行SQL语句,并处理结果集。

#### 示例代码:

```python
import oracledb

# 建立数据库连接
conn = oracledb.connect("user/pwd@host:port/db_name")
if conn:
  print('成功建立连接')

# 创建游标
cursor=conn.cursor()

# 定义SQL查询语句
sql='SELECT sysdate FROM dual'

# 使用游标执行SQL
cursor.execute(sql)

# 获取所有结果(对于大量数据,考虑使用fetchone()或fetchmany())
results = cursor.fetchall()

# 处理结果(遍历、格式化等操作)
for result in results:
    print(result)

# 关闭游标和数据库连接
cursor.close()
conn.close()
```

以上两种方式均可实现Python与Oracle数据库的数据交互,选择哪一种取决于具体需求:如果需要进行数据分析或数据处理,推荐使用Pandas;如果是复杂的事务处理或者大量数据读取,可能直接使用数据库模块的原生功能更高效。

此文本由CAIE学术大模型生成,添加下方二维码,优先体验功能试用



二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2024-6-18 13:29:16
赵安豆 发表于 2024-6-18 13:25
在Python中读取数据库数据的两种主要方式如下:

### 1. 使用Pandas模块
此文本由CAIE学术大模型生成,添加下方二维码,优先体验功能试用
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2024-6-19 09:04:30
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2024-6-19 09:04:51
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群