以下为代码。测试通过。有没有更优的方法呢,欢迎评论区留言!
import pyodbc
# SQL Server连接参数
server = '10.**.2**.**,1458'
database = 'dbname'
username = 'username'
password = 'password'
#将连接参数修改在上面的代码中。
driver = '{ODBC Driver 17 for SQL Server}' # 根据你的环境选择合适的ODBC驱动
# 创建连接字符串
conn_str = (
r'DRIVER={};'
r'SERVER={};'
r'DATABASE={};'
r'UID={};'
r'PWD={};'
).format(driver, server, database, username, password)
# 连接到SQL Server
cnxn = pyodbc.connect(conn_str)
cursor = cnxn.cursor()
# 执行SQL查询
query = "SELECT * FROM YourTableName" # 替换为你的查询语句
cursor.execute(query)
# 获取查询结果
columns = [column[0] for column in cursor.description]
results = cursor.fetchall()
# 将结果写入本地文件,这里以CSV格式为例
with open('output.csv', 'w', newline='', encoding='utf-8') as file:
# 写入列名
file.write(','.join(columns) + '\n')
# 写入数据行
for row in results:
file.write(','.join(str(value) for value in row) + '\n')
# 关闭连接
cursor.close()
cnxn.close()
print("数据已成功提取并保存到本地文件。")
12-21
3万+
05-04