使用 Python 连接 SQL Server 数据库并实时读取数据?

实时读取SQL Server数据库表并进行处理是一个常见的需求 。
在Python/ target=_blank class=infotextkey>Python中,可以使用pyodbc库来连接SQL Server数据库,并使用pandas库来进行数据处理 。
下面是一个实战示例,演示如何实时读取SQL Server数据库表,并将数据写入Excel文件 。

使用 Python 连接 SQL Server 数据库并实时读取数据?

文章插图
步骤1:安装所需的库首先,确保已经安装了pyodbc和pandas库 。
可以使用以下命令来安装这些库:
pip install pyodbcpip install pandas步骤2:连接到SQL Server数据库使用pyodbc库连接到SQL Server数据库 。
首先,需要导入pyodbc库,并使用pyodbc.connect()函数创建一个数据库连接对象 。
在连接对象中,需要指定数据库的连接信息,如服务器名称、数据库名称、用户名和密码等 。
import pyodbc# 连接到SQL Server数据库conn = pyodbc.connect('DRIVER={SQL Server};SERVER=服务器名称;DATABASE=数据库名称;UID=用户名;PWD=密码')步骤3:读取数据库表数据使用pandas库的read_sql()函数可以方便地从数据库中读取数据 。
【使用 Python 连接 SQL Server 数据库并实时读取数据?】该函数接受一个SQL查询语句作为参数,并返回一个包含查询结果的DataFrame对象 。
import pandas as pd# 读取数据库表数据df = pd.read_sql('SELECT * FROM 表名', conn)步骤4:处理数据在DataFrame对象中,可以使用pandas库提供的各种函数和方法对数据进行处理 。
例如,可以对数据进行筛选、排序、聚合等操作 。
# 对数据进行处理df_filtered = df[df['列名'] > 100]# 筛选出列名大于100的数据df_sorted = df.sort_values('列名')# 按列名排序数据df_grouped = df.groupby('列名').sum()# 按列名分组并求和步骤5:将数据写入Excel文件使用pandas库的to_excel()函数可以将DataFrame对象中的数据写入Excel文件 。
该函数接受一个文件路径作为参数,并将数据写入指定的Excel文件 。
# 将数据写入Excel文件df.to_excel('文件路径.xlsx', index=False)步骤6:实现实时读取和写入要实现每秒钟读取数据库表并写入Excel文件的功能,可以使用Python的time模块来控制读取和写入的时间间隔 。
可以使用time.sleep()函数来暂停程序的执行,以实现每秒钟读取一次数据的效果 。
import timewhile True:# 读取数据库表数据df = pd.read_sql('SELECT * FROM 表名', conn)# 处理数据# 将数据写入Excel文件df.to_excel('文件路径.xlsx', index=False)# 暂停1秒钟time.sleep(1)以上就是使用Python实现实时读取SQL Server数据库表并写入Excel文件的基本步骤 。
根据实际需求 , 可以对代码进行适当的修改和扩展 。




    推荐阅读