Windows下载安装配置SQL Server、SSMS,使用Python连接读写数据

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
简介: Windows下载安装配置SQL Server、SSMS,使用Python连接读写数据

简说Python,号主老表,Python终身学习者,数据分析爱好者,从18年开始分享Python知识,原创文章227篇,写过Python、SQL、Excel入门文章,也写过Web开发、数据分析文章,老表还总结整理了一份2022Python学习资料和电子书资源,关注后私信回复:2022 即可领取。

1、下载安装包

我们直接访问官网下载即可,自己本地测试使用可以选择开发者版本,功能更全。

https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads

image.png

2、安装sqlserver

这里建议大家自定义,可以配套安装一些其他工具,也可以和我一样直接选择基本,相当于只安装了数据库,配置环境后可以在cmd里链接操作,但是很麻烦!!!

image.png

选择自己的安装位置,我这里服务器只有一个盘符,就没改,大家可以随便安装到自己想安装的盘符。

image.png

到这里,数据库基本服务我们就安装好了(默认会自动配置环境变量、启动服务),你可以直接点击立即连接按钮测试链接,还可以点击自定义安装其他相关工具,或者点击安装SSMS(sqlserver数据库管理工具,推荐安装)。

image.png

Server=localhost;Database=master;Trusted_Connection=True;

3、安装使用数据库管理工具

前面说了,我们目前只安装了基本的sqlserver服务,现在我们可以在windwos cmd中使用osql指令连接数据库进行操作,但是很麻烦,所以我推荐还是安装下SSMS,选择好安装目录后,直接点击安装即可。

image.png

需要重启下电脑,重启前请先按确保自己没有正在编辑且没保存的文件,避免数据丢失。

image.png

重启后,打开电脑,我们在电脑开始里,可以找到我们新安装的数据库管理工具,直接双击即可打开。

image.png

点击连接->数据库引擎,即可选择要连接的数据库。

image.png

这里我们连接本地的数据库,第一次直接使用Windows身份验证登录,无需输入用户名密码。

image.png

连接成功后,然后我们右键,选择新建数据库,可以新建一个study数据库,用于存放我们测试使用的数据表。

image.png

然后我们需要新建一个登录名,方便远程或者代码使用,选择安全性->登录名->新建登录名即可。

image.png

输入登录名,并选择SQL Server身份验证(S),然后输入密码,选择默认数据库为study。

image.png

新建用户后,我们还需修改下数据库连接属性,选中数据库右键,选中属性。

image.png

选中安全性,服务器身份验证需要选择SQL Server 和 Windows身份验证模式(S)。

image.png

点击确认后,会提示需要重启SQL Server服务。

image.png

我们可以到系统服务中,找到SQL Server,然后右键选择重启服务即可。

image.png

然后我们再新建一个数据库连接,输入用户明和密码即可成功登录啦。

image.png

如果大家远程登录遇到下面问题20009,b'DB-Lib error message 20009...

image.png

找了很久,才找到问题解决方法,感谢stackoverflow中@Hainan Zhao 提供的解决方法。

https://stackoverflow.com/questions/19348255/pymssql-operationalerror-db-lib-error-message-20009-severity-9

这是因为我们没有开启sqlserver的TCP/IP本地连接,

因此,只需在 SQL Server 配置管理器中打开对 127.0.0.1:1433 的访问即可。

1)开始 -> 所有程序 -> Microsoft SQL Server 2019 -> 配置工具 -> SQL Server 配置管理器

image.png

2)SQL Server 网络配置 -> MSSQLSERVER 的协议

TCP/IP -> 属性 -> IP 地址。找到 127.0.0.1 并将“已启用”更改为“是”。如果需要通过ip远程连接,还可以添加上服务器的ip地址。

image.png

4、Python连接sqlserver数据库

这里我使用的是:pymssql+sqlalchemy+pandas 来读写sqlserver数据。

  • 安装相关第三方包
pip3 install pymssql sqlalchemy pandas
  • 连接数据库,并读取表内容
from sqlalchemy import create_engine
import pandas as pd
# 初始化数据库连接引擎
# create_engine("数据库类型+数据库驱动://数据库用户名:数据库密码@IP地址:端口/数据库",其他参数)
engine = create_engine("mssql+pymssql://sa:123456@localhost/study?charset=GBK")
# 读取的sql语句 testc表中的前3条数据
sql = f'select top 3 * from testc'
# 第一个参数:查询sql语句
# 第二个参数:engine,数据库连接引擎
pd_read_sql = pd.read_sql(sql, engine)
print(pd_read_sql)

这里有个坑,sqlserver创建数据库默认是gbk编码,如果在上面连接时不指定charset=GBK,那么运行sql读写时,就会报下面错误20002。

image.png

添加上数据库字符编码后,就可以正常读写数据库啦,比如上面代码,我在数据库study中新建了一个testc表,里面随便插入了数据,上面代码就是读取testc表中的前3条数据,运行结果如下:

image.png

到这里,我们就完成了Windows下SQL Server服务和数据库管理工具安装和简单配置工作,以及如何使用python连接读写SQL Server中的数据表,后面我们将详细分析读者需求,批量写入Excel数据进入SQL Server。

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
相关文章
|
1天前
|
IDE 开发工具 开发者
2024年最新5个提升生产效率的Python开发和配置的小技巧_python高级开发技巧,字节跳动面试必问
2024年最新5个提升生产效率的Python开发和配置的小技巧_python高级开发技巧,字节跳动面试必问
2024年最新5个提升生产效率的Python开发和配置的小技巧_python高级开发技巧,字节跳动面试必问
|
2天前
|
网络安全 流计算 Python
实时计算 Flink版操作报错合集之Flink sql-client 针对kafka的protobuf格式数据建表,报错:java.lang.ClassNotFoundException 如何解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
16 1
|
3天前
|
SQL Java 关系型数据库
实时计算 Flink版操作报错合集之通过flink sql形式同步数据到hudi中,本地启动mian方法报错如何解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
22 8
|
3天前
|
C++ Python
vs配置python环境 - 蓝易云
以上就是在Visual Studio中配置Python环境的步骤,希望对你有所帮助。
11 1
|
4天前
|
SQL 流计算 API
实时计算 Flink版产品使用合集之ClickHouse-JDBC 写入数据时,发现写入的目标表名称与 PreparedStatement 中 SQL 的表名不一致如何解决
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
9 0
|
4天前
|
机器学习/深度学习 Java 数据挖掘
selenium的配置与基本使用(1),2024年最新网易Python面试必问
selenium的配置与基本使用(1),2024年最新网易Python面试必问
|
4天前
|
Python
【Python3 查询手册学习】,完整版PDF开放下载_python速查手册·模块卷(全彩版) pdf(1)
【Python3 查询手册学习】,完整版PDF开放下载_python速查手册·模块卷(全彩版) pdf(1)
|
4天前
|
消息中间件 关系型数据库 网络安全
实时计算 Flink版操作报错合集之Flink sql-client 针对kafka的protobuf格式数据建表,报错:java.lang.ClassNotFoundException 如何解决
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
14 1
|
4天前
|
SQL 关系型数据库 MySQL
实时计算 Flink版产品使用合集之在使用Flink SQL向ClickHouse写入数据的过程中出现丢数据或重复数据的情况如何解决
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
19 1
|
SQL Linux Go
从Windows迁移SQL Server到Linux
原文:从Windows迁移SQL Server到Linux 前一篇博客关于SQL Server on Linux的安装,地址:http://www.cnblogs.com/fishparadise/p/8057650.html,现在测试把Windows平台下的一个数据库迁移到Linux平台下。
1341 0

热门文章

最新文章