python连接本地SQL server详细图文教程

 更新时间:2025年04月10日 11:34:08   作者:@锦瑟五十弦  
在数据分析领域,经常需要从数据库中获取数据进行分析和处理,下面这篇文章主要介绍了python连接本地SQL server的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下

一.设置本地账号

1.新建用户

在对象资源管理其中,选中 安全性/登录名 右键新建登录名

在弹出的对话框中,设置登录名为“sa”(sa是最高权限用户名,也可以自定义,但不推荐),选择“SQL Server身份验证”,设置密码,在“默认数据库”中选择我们需要建立联系的目标数据库,“默认语言”为简体中文。

最后在“状态”选项卡下选择“启用”并确保“允许连接”复选框被选中。

2.开启双重验证

在资源对象管理器中,右键单击SQL Server实例名称并选择“属性”。

在弹出的对话框中,选择“安全性”选项卡,将“身份验证”设置为“SQL Server和Windows身份验证模式”,并选择“确定”以保存更改。

3,开启TCP/IP本地服务

在SQL Server Configuration Manager中,右键“SQL Server网络配置”,选择“TCP/IP”协议,点击“启用”。

选择TCP/IP属性,选择IP,将“TCP动态端口”设置为0

然后找到“IPALL”选项,将“TCP端口”设置为1433(或其他的端口号)。

保存更改并重启SQL Server服务。

完成以上步骤后,即可使用Python连接本地SQL Server数据库。

二.python连接实例

注意,下文是本地连接用法,也就是只能连接本机服务器的数据库,想要连接外地服务器请参考其它文章。

以 Pycharm为例

1.下载支持库

有用pymssql的方法,但是我没成功,于是换了另一个用pyodbc的方法

进入Anaconda Prompt,进入已有环境,输入一下命令下载支持库(这里命令末尾添加了阿里云镜像源,能下载的快一点)

pip install pyodbc -i https://mirrors.aliyun.com/pypi/simple/

2.验证连接

创建一个 .py文件,编辑以下代码验证能否建立连接:

import pyodbc

server = 'localhost'   # 这里就写localhost就可以了
user = '之前创建的用户名'  
password = '给对应账户设置的密码'
database = '想要建立连接的数据库名'

try:
    conn_str = f'DRIVER={{SQL Server}};SERVER={server};DATABASE={database};UID={user};PWD={password};TrustServerCertificate=yes'
    connect = pyodbc.connect(conn_str)
    print("连接成功")

except pyodbc.Error as e:
    print(f"连接失败: {e}")

3.可能失败原因

需要注意的是,如果没有创建sa账户的话,这里应该要先给对应数据库开起用户权限

在对象资源管理器中,右键对应数据库,点击属性,点击文件,点击如图红框

点击浏览,选中需要基于权限的用户,但是好像只能选择一个

如图,我选择了sd用户,点击确定,再点击确定就可以了。

最后显示连接成功:

三.基本查询语法使用

import pyodbc

server = 'localhost'   # 这里就写localhost就可以了
user = '之前创建的用户名'  
password = '给对应账户设置的密码'
database = '想要建立连接的数据库名'

conn_str = f'DRIVER={{SQL Server}};SERVER={server};DATABASE={database};UID={user};PWD={password};TrustServerCertificate=yes'
connect = pyodbc.connect(conn_str)
print("连接成功")

# 创建游标对象
cursor = connect.cursor()

# 执行查询语句,这里查询作者数据库里的图书表
query = "SELECT * FROM 图书"
cursor.execute(query)

# 获取查询结果
rows = cursor.fetchall()

# 打印查询结果
if rows:
    print("图书表的数据如下:")
    for row in rows:
        print(row)

# 关闭游标和连接
cursor.close()
connect.close()

结果如下,没有乱码问题,不知道是不是引用库不一样的原因,pymssql库看很多博主讲是有代码的,反正不管,能成功就行。

总结

到此这篇关于python连接本地SQL server的文章就介绍到这了,更多相关python连接本地SQL server内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python的lambda匿名函数的简单介绍

    Python的lambda匿名函数的简单介绍

    Python的lambda匿名函数的简单介绍,需要的朋友可以参考一下
    2013-04-04
  • Python中暂存上传图片的方法

    Python中暂存上传图片的方法

    这篇文章主要介绍了Python中暂存上传图片的方法,本文使用cStringIO模块实现暂存功能,本文给出简单使用示例,需要的朋友可以参考下
    2015-02-02
  • Python Django 简单分页的实现代码解析

    Python Django 简单分页的实现代码解析

    这篇文章主要介绍了Python Django 简单分页的实现代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • python写入文件如何取消自动换行

    python写入文件如何取消自动换行

    这篇文章主要介绍了python写入文件如何取消自动换行问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • PyQt5内嵌浏览器注入JavaScript脚本实现自动化操作的代码实例

    PyQt5内嵌浏览器注入JavaScript脚本实现自动化操作的代码实例

    今天小编就为大家分享一篇关于PyQt5内嵌浏览器注入JavaScript脚本实现自动化操作的代码实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • Pandas中MultiIndex选择并提取任何行和列

    Pandas中MultiIndex选择并提取任何行和列

    本文主要介绍了Pandas中MultiIndex选择并提取任何行和列,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • Python数据结构dict常用操作代码实例

    Python数据结构dict常用操作代码实例

    这篇文章主要介绍了Python数据结构dict常用操作代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • python cookie反爬处理的实现

    python cookie反爬处理的实现

    这篇文章主要介绍了python cookie反爬处理的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • 深入理解Django-Signals信号量

    深入理解Django-Signals信号量

    这篇文章主要介绍了深入理解Django-Signals信号量,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-02-02
  • python机器学习deepchecks库训练检查模型特点探索

    python机器学习deepchecks库训练检查模型特点探索

    这篇文章主要介绍了python机器学习deepchecks库的训练检查模型特点实例探索,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01

最新评论