python连接Microsfot Sqlserver数据库查询结果保存为excel并自适应列宽加边框居中

首要具备条件:pycharm、python 3以上版本,便于引用该代码依自身实际情况调试;运行python主机安装有office 2007以上版本软件;安装python odbc for sql server,附odbc支持对应sql server版本信息如下:

{SQL Server} - released with SQL Server 2000

{SQL Native Client} - released with SQL Server 2005 (also known as version 9.0)

{SQL Server Native Client 10.0} - released with SQL Server 2008

{SQL Server Native Client 11.0} - released with SQL Server 2012

{ODBC Driver 11 for SQL Server} - supports SQL Server 2005 through 2014

{ODBC Driver 13 for SQL Server} - supports SQL Server 2005 through 2016

{ODBC Driver 13.1 for SQL Server} - supports SQL Server 2008 through 2016

{ODBC Driver 17 for SQL Server} - supports SQL Server 2008 through 2019 (depending on minor version)

{ODBC Driver 18 for SQL Server} - supports SQL Server 2012 through 2019

备注:df = pd.read_sql("select * from EXTENSION", conn)依实际情况修改为自身需要的查询语句;同时查询结果excel保存路径和名称依自身情况而进行修改。

实现代码如下(应用成功实例windows sql server 2012):

import pandas as pd

import xlsxwriter

import pyodbc

import time

server = 'MS数据库IP地址'

database = '数据库库名'

username = '用户名'

password = '密码'

driver= '{ODBC Driver 17 for SQL Server}'

with pyodbc.connect('DRIVER='+driver+';SERVER=tcp:'+server+';PORT=1433;DATABASE='+database+';UID='+username+';PWD='+ password) as conn:

with pd.ExcelWriter(r"C:\Users\public.DESKTOP-0HSVIBN\Documents\output.xlsx", engine="xlsxwriter",engine_kwargs={"options": {"strings_to_numbers": True,"strings_to_formulas": False}}) as writer:

try:

df = pd.read_sql("select * from EXTENSION", conn)

df.to_excel(writer, sheet_name = "Sheet1", header = True, index = False)

print("File saved successfully!")

except:

print("There is an error")

conn.close()

time.sleep(10)

import xlwings as xw

app=xw.App(visible=True,add_book=False)

app.display_alerts=False

app.screen_updating=False

wb=app.books.open(r'C:\Users\public.DESKTOP-0HSVIBN\Documents\output.xlsx')

sht = wb.sheets.active

value = sht.range('A1').expand('table')

wb.sheets['Sheet1'].autofit(axis='c')

wb.sheets['Sheet1'].autofit(axis='r')

value.api.HorizontalAlignment = xw.constants.HAlign.xlHAlignCenter

value.api.VerticalAlignment = xw.constants.VAlign.xlVAlignCenter

ws = wb.sheets['Sheet1']

last_column = ws.range(1, 1).end('right').get_address(0, 0)[0]

last_row = ws.range(1, 1).end('down').row

a_range = f'A1:{last_column}{last_row}'

ws.range(a_range).api.Borders.LineStyle = 1

wb.save(r'C:\Users\public.DESKTOP-0HSVIBN\Documents\output_fit.xlsx')

wb.close()

app.quit()

您的支持与鼓励,是我前行的动力;希望可以解决您的问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 安装Visual Studio 2019的步骤如下: 1. 首先,从官方网站下载Visual Studio 2019安装程序。 2. 运行安装程序,选择需要安装的组件。可以根据自己的需要选择不同的组件,例如.NET桌面开发、ASP.NET和Web开发、Python开发等。 3. 在安装过程中,可以选择安装位置和其他选项。 4. 安装完成后,打开Visual Studio 2019,开始使用。 ### 回答2: 安装Visual Studio 2019非常简单,只需按照以下步骤进行操作: 1. 首先,打开一个Web浏览器,然后在搜索引擎中输入“Visual Studio 2019下载”并按下回车键。 2. 选择官方Microsoft下载页面中的Visual Studio 2019版本链接,并单击它。 3. 在下载页面上,您将看到一个可用的下载选项列。您可以选择与您的操作系统兼容的版本,例如Windows或macOS。 4.单击所选版本的下载按钮后,页面将开始下载Visual Studio 2019安装程序。这可能需要一段时间,具体取决于您的互联网连接速度。 5. 下载完成后,您需要运行下载的安装程序。在文件资源管理器或浏览器的下载列中找到安装程序,并双击打开它。 6. 根据安装程序的指导进行操作。您可能需要选择一些安装选项,如安装位置、语言和组件。确保选择您需要的选项,并继续下一步。 7. 最后,等待安装程序完成安装。这可能需要一段时间,并且您的计算机需要有足够的空闲磁盘空间来安装Visual Studio 2019。 8. 当安装完成时,您将获得一条消息提示安装成功。现在,您可以关闭安装程序,并通过开始菜单或桌面快捷方式打开Visual Studio 2019。 完成这些步骤后,您就可以开始使用Visual Studio 2019进行软件开发了。确保在安装过程中选择需要的组件,以便于您的开发需求。如果在安装过程中遇到任何问题,建议参阅Microsfot官方网站上的帮助文档或社区论坛,那里有更多关于安装和使用Visual Studio 2019的指导。 ### 回答3: 要安装Visual Studio 2019,可以按照以下步骤进行操作: 1. 首先,访问Microsoft官方网站或者其他可靠的软件下载网站,下载Visual Studio 2019的安装包。确保选择适用于你的操作系统的版本。 2. 当下载完成后,打开安装包文件。一般情况下,它将被保存为.exe文件。 3. 双击安装包文件,运行安装程序。在弹出的窗口中,你可以选择安装所需组件。你可以根据你的需求选择各种工作负载、单个的组件或者自定义安装。 4. 在安装程序的界面上,你可以选择安装目录以及其它一些定制化选项。这些选项对于你的开发环境设置和个人偏好非常重要。确保你仔细阅读并了解所选择的选项。 5. 点击"安装"按钮,开始安装过程。这可能需要一些时间,取决于你的计算机性能和选择的组件的数量和大小。 6. 当安装完成后,你将看到一个安装成功的提示。现在,你可以关闭安装程序。 7. 打开Visual Studio 2019,你可以根据你的需要进行一些初始配置和设置,例如选择首选编程语言、界面主题和配色方案。 8. 现在,你已经成功安装了Visual Studio 2019,可以开始使用它来开发各种应用程序。 请注意,上述步骤可能会因为操作系统和安装程序版本的不同而有所变化。确保在安装过程中遵循官方文档和指南,并且备份你的数据以防万一。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值