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

2025-04-10 15:50

本文主要是介绍python连接本地SQL server详细图文教程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

《python连接本地SQLserver详细图文教程》在数据分析领域,经常需要从数据库中获取数据进行分析和处理,下面:本文主要介绍python连接本地SQLserver的相关资料,文中通过代码...

一.设置本地账号

1.新建用户

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

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

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

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

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

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

2.开启双重验证

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

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

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

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

3,开启TCP/IP本地服务

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

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

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

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

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

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

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

python连接本地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 = '给对应账户设置的密wUjmRioAK码'
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账户的话,这里应该要先给对应数据库开起用户权限

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

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

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

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

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

最后显示连接成功:

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

三.基本查询语法使用

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.exeChina编程cute(query)

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

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

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

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

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

总结

到此这篇关于python连接本地SQL ser编程China编程ver的文章就介绍到这了,更多相关python连接本地SQL server内容请搜索China编程(www.chinasem.cn)以前的文章或继续浏览下面的相关文章希望大家以后多多支持China编程(www.chinasem.cn)!

这篇关于python连接本地SQL server详细图文教程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1154165

相关文章

Python获取C++中返回的char*字段的两种思路

《Python获取C++中返回的char*字段的两种思路》有时候需要获取C++函数中返回来的不定长的char*字符串,本文小编为大家找到了两种解决问题的思路,感兴趣的小伙伴可以跟随小编一起学习一下... 有时候需要获取C++函数中返回来的不定长的char*字符串,目前我找到两种解决问题的思路,具体实现如下:

Spring Boot项目中结合MyBatis实现MySQL的自动主从切换功能

《SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能》:本文主要介绍SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能,本文分步骤给大家介绍的... 目录原理解析1. mysql主从复制(Master-Slave Replication)2. 读写分离3.

基于Python和MoviePy实现照片管理和视频合成工具

《基于Python和MoviePy实现照片管理和视频合成工具》在这篇博客中,我们将详细剖析一个基于Python的图形界面应用程序,该程序使用wxPython构建用户界面,并结合MoviePy、Pill... 目录引言项目概述代码结构分析1. 导入和依赖2. 主类:PhotoManager初始化方法:__in

Python从零打造高安全密码管理器

《Python从零打造高安全密码管理器》在数字化时代,每人平均需要管理近百个账号密码,本文将带大家深入剖析一个基于Python的高安全性密码管理器实现方案,感兴趣的小伙伴可以参考一下... 目录一、前言:为什么我们需要专属密码管理器二、系统架构设计2.1 安全加密体系2.2 密码强度策略三、核心功能实现详解

Python Faker库基本用法详解

《PythonFaker库基本用法详解》Faker是一个非常强大的库,适用于生成各种类型的伪随机数据,可以帮助开发者在测试、数据生成、或其他需要随机数据的场景中提高效率,本文给大家介绍PythonF... 目录安装基本用法主要功能示例代码语言和地区生成多条假数据自定义字段小结Faker 是一个 python

Python实现AVIF图片与其他图片格式间的批量转换

《Python实现AVIF图片与其他图片格式间的批量转换》这篇文章主要为大家详细介绍了如何使用Pillow库实现AVIF与其他格式的相互转换,即将AVIF转换为常见的格式,比如JPG或PNG,需要的小... 目录环境配置1.将单个 AVIF 图片转换为 JPG 和 PNG2.批量转换目录下所有 AVIF 图

Python通过模块化开发优化代码的技巧分享

《Python通过模块化开发优化代码的技巧分享》模块化开发就是把代码拆成一个个“零件”,该封装封装,该拆分拆分,下面小编就来和大家简单聊聊python如何用模块化开发进行代码优化吧... 目录什么是模块化开发如何拆分代码改进版:拆分成模块让模块更强大:使用 __init__.py你一定会遇到的问题模www.

Nginx中配置HTTP/2协议的详细指南

《Nginx中配置HTTP/2协议的详细指南》HTTP/2是HTTP协议的下一代版本,旨在提高性能、减少延迟并优化现代网络环境中的通信效率,本文将为大家介绍Nginx配置HTTP/2协议想详细步骤,需... 目录一、HTTP/2 协议概述1.HTTP/22. HTTP/2 的核心特性3. HTTP/2 的优

详解如何通过Python批量转换图片为PDF

《详解如何通过Python批量转换图片为PDF》:本文主要介绍如何基于Python+Tkinter开发的图片批量转PDF工具,可以支持批量添加图片,拖拽等操作,感兴趣的小伙伴可以参考一下... 目录1. 概述2. 功能亮点2.1 主要功能2.2 界面设计3. 使用指南3.1 运行环境3.2 使用步骤4. 核

Python 安装和配置flask, flask_cors的图文教程

《Python安装和配置flask,flask_cors的图文教程》:本文主要介绍Python安装和配置flask,flask_cors的图文教程,本文通过图文并茂的形式给大家介绍的非常详细,... 目录一.python安装:二,配置环境变量,三:检查Python安装和环境变量,四:安装flask和flas