相关文章
Python数据库操作【三】—— SQLServer
2024-12-09 03:36
Python数据库操作【三】—— SQLServer 数据库

以下摘自

Python数据库操作【三】—— SQLServer

SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS,它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。Microsoft SQL Server近年来不断更新版本,1996年,Microsoft 推出了SQL Server 6.5版本;1998年,SQL Server 7.0版本和用户见面;SQL Server 2000是Microsoft公司于2000年推出,目前最新版本是2019年份推出的SQL SERVER 2019。

SQL Server是微软推出的重量级的数据库,目前有多个版本,如2000、2008、2012等,这些版本名字均为该版本推出的年份,每个版本的差异并不是特别大。本文使用SQL Server2016。

传送门

 

本文代码已上传至GitHub,项目地址如下

https://github.com/XMNHCAS/SQLServerPythonDemo


python内未集成SQLServer的操作库,需要安装pymssql库。

pip3 install pymssql

安装完成后使用import pymssql导入。

pymssql有官方文档,里面有更详细的使用示例,链接地址如下


数据库远程访问配置

使用pymssql访问SQLServer,需要启用SQLServer的TCP/IP协议。

如下图所示,打开SQLServer配置管理器,选择“SQL Server网络配置”中对应的需要使用的实例,在右侧窗口中启用TCP/IP协议。

接着重启SQL Server服务,就可以通过IP的形式访问数据库了。

 服务重启完成后,使用Navicat测试,可以看到连接成功。

新建数据库

新建CreateDatabase.py,使用pymssql创建TestDB数据库。

db.cursor()创建的游标对象,默认返回的是元组,通过设置as_dict=True可以将返回的数据改成字典类型。

如果最后再通过db.commit()来提交事务操作,可能会出现创建数据库失败的情况,故此处设置为autocommit,在游标执行sql的时候就提交操作。

 

运行结果如下

新建数据表 

新建CreateTable.py,使用pymssql在TestDB数据库中新建一个Persons表。

 

运行结果如下

新增记录(Create

使用游标执行插入语句,不同于pymysql,pymssql不会返回游标执行后影响的行数。

而且由于编码问题,pymssql查询出来的中文数据,如果不进行转码则会输出乱码,所以后面均采用循环输出数据,同时将中文数据改成gbk的编码。该乱码问题可以通过设置数据库字段的编码格式的方式来解决,但是会稍微影响数据库存储性能,故此处不进行演示。

此方式支持单条数据插入和批量插入。

 

运行结果如下

检索记录(Retrieve

执行查询语句后,可以使用游标的fetchone方法获取单条数据,也可以使用fetchmany获取指定数量的数据,还可以用fetchall直接获取全部数据。为了结果显示得更加清晰,此处全部使用循环进行数据输出。

 

运行结果如下

更新记录(Update

使用游标执行update语句。此方法支持单条数据修改及批量修改。

 

运行结果如下

删除数据(Delete

使用游标执行delete语句。此方法也支持单条数据删除以及批量删除。

 

运行结果如下

    以上就是本篇文章【Python数据库操作【三】—— SQLServer】的全部内容了,欢迎阅览 ! 文章地址:http://sjzytwl.xhstdz.com/news/10742.html 
     栏目首页      相关文章      动态      同类文章      热门文章      网站地图      返回首页 物流园资讯移动站 http://mip.xhstdz.com/ , 查看更多   
最新文章
Real Moto 2(真实摩托2游戏手机版)摩托手机「Real Moto 2(真实摩托2游戏手机版)」
《真实摩托2》是一款超级好玩的摩托车驾驶竞速类游戏,游戏采用了高清物理引擎打造,拥有逼真的画面和场景,真实的玩法内容,激
家居“新物种”:行业新革命!叶盛明珠发热岩板颠覆家居采暖逻辑
  展会盛况:科技与美学的完美结合  2025年3月27 - 30日,第14届广州定制家居展暨轻高定展在广州保利世贸博览馆盛大举行。展
如何连接usbusb怎么连接手机「如何连接usb」
在日常生活中,USB(Universal Serial Bus,通用串行总线)接口已成为我们连接各种设备与计算机的重要桥梁。无论是传输数据、充
售17.98万起! 北京BJ40增程版上市!双电机四驱+三把锁,硬派越野SUV的新扛把子?
4月7日,增程正式上市,新车共推出2款配置车型,售价区间为17.98-19.98万元。作为北京BJ40新增动力版本,该车搭载1.5T增程混动,
新增20+项新功能 提供高阶智驾选装 领克EM-P超电双子星OTA 1.8.0推送更新
近日, EM-P和08 EM-P正式迎来了OTA 1.8.0版本的升级。据悉,本次双车总计升级新增20+项功能,并优化了60+项体验,可实现“iOS+
vivo Y300 Pro+/Y300t发布,更实惠的千元手机
  vivo千元机又更新了,vivo Y300 Pro+与Y300t于3月31日正式亮相,为广大消费者带来实惠。  vivo Y300 Pro+是vivo Y系列首款
Canvalr手机版「Canva」
Canva是一款非常专业的图片制作app,能够给用户制作图片提供许多的帮助,让用户轻轻松松就能进行图片设计,非常的方便实用,可以
Nothing 2025 放大招:Phone(3)手机领衔,里程碑式新机登场phone手机「Nothing 2025 放大招:Phone(3)手机领衔,里程碑式新机登场」
IT之家 1 月 14 日消息,消息源 Evan Blass 昨日(1 月 13 日)在 X 平台发布推文,分享了裴宇发送给 Nothing 员工的内部电子邮
心有千千结 | 手机危害七宗罪&手机脸手机脸「心有千千结 | 手机危害七宗罪&手机脸」
手机无处不在方便生活的同时也给我们带来了极大的危害那么危害究竟有哪些我们又该怎样减少呢首先,带着大家看一下最爱手机的“民