本文实例讲述了Python基于Pymssql模块实现连接SQL Server数据库的方法。分享给大家供大家参考,具体如下:

数据库版本:SQL Server 2012。

按照Python版本来选择下载pymssql模块,这样才能连接上sql server。

我安装的python版本是3.5 ,64位的,所以下载的pymssql模块是:pymssql-2.1.3-cp35-cp35m-win_amd64.whl

我把文件下载后放到E盘,安装pymssql模块:

C:\Users\Administrator>pip install e:\pymssql-2.1.3-cp35-cp35m-win_amd64.whl
Processing e:\pymssql-2.1.3-cp35-cp35m-win_amd64.whl
Installing collected packages: pymssql
Successfully installed pymssql-2.1.3

学习python给大家推荐一个高质量的python学习裙:778口口747口口511

一、创建数据库Test、表tb、插入数据

特别需要注意的是:为了避免乱码问题,这里Name列是nvarchar类型的(适合中文),不会出现乱码现象,一开始用的varchar类型出现了乱码。

create database Test;
go
use test;
go
if object_id('tb') is not nulldrop table tb;
go
CREATE TABLE TB(ID INT,NAME NVARCHAR(20),SCORE NUMERIC(10,2));
INSERT INTO TB(ID,NAME,SCORE)
VALUES(1,'语文',100),(2,'数学',80),(3,'英语',900),(4,'政治',65),(5,'物理',65),(6,'化学',85),(7,'生物',55),(8,'地理',100)

二、连接数据库、查询、增加、更新数据
connect的参数:

user:用户名
password:密码
trusted:布尔值,指定是否使用windows身份认证登陆
host :主机名
database:数据库
timeout:查询超时
login_timeout:登陆超时
charset:数据库的字符集
as_dict:布尔值,指定返回值是字典还是元组
max_conn:最大连接数

# -*- coding:gbk -*-
import pymssql
#数据库连接
conn=pymssql.connect(host='wc-pc',user='sa',password='ggg',database='Test')
#打开游标
cur=conn.cursor();
if not cur:raise Exception('数据库连接失败!')
sSQL = 'SELECT * FROM TB'
#执行sql,获取所有数据
cur.execute(sSQL)
result=cur.fetchall()
#1.result是list,而其中的每个元素是 tuple
print(type(result),type(result[0]))
#2.
print('\n\n总行数:'+ str(cur.rowcount))
#3.通过enumerate返回行号
for i,(id,name,v) in enumerate(result):print('第 '+str(i+1)+' 行记录->>> '+ str(id) +':'+ name+ ':' + str(v) )
#4.修改数据
cur.execute("insert into tb(id,name,score) values(9,'历史',75)")
cur.execute("update tb set score=95 where id=7")
conn.commit() #修改数据后提交事务
#再查一次
cur.execute(sSQL)
#5.一次取一条数据,cur.rowcount为-1
r=cur.fetchone()
i=1
print('\n')
while r:id,name,v =r #r是一个元祖print('第 '+str(i)+' 行记录->>> '+ str(id) +':'+ name+ ':' + str(v) )r=cur.fetchone()i+= 1
conn.close()

基本的步骤就是:

(1)连接数据库,指定连接参数
(2)打开cursor,执行sql
(3)通过cursor获取数据,具体可以是一次获取所有数据,也可以是一次获取一行。
整个结果集是元组列表,就是list类型的,而每一条记录是一个tuple,也就是元祖。
(4)如果是增、改数据,必须就要调用commit()函数来提交事务,否则程序已退出,数据库里的数据不会有变化。
(5)最后要用close关闭连接。

运行效果:

python数据库编程:Python基于Pymssql模块实现连接SQL Server数据库的方法详解相关推荐

  1. python cv2模块安装_python 连接sql server数据库,pymssql模块安装。

    python 连接sql server数据库,pymssql模块安装. python版本:python3.7 数据库版本:sql server 2016 连接sql server数据库,本菜鸟用的是p ...

  2. python 使用pymssql连接sql server数据库

    Python连接SQL Server数据库 - pymssql使用基础 ----原文地址:http://www.cnblogs.com/baiyangcao/p/pymssql_basic.html ...

  3. python连接sql数据库_python连接sql server数据库实现增删改查

    简述 python连接微软的sql server数据库用的第三方模块叫做pymssql(document:http://www.pymssql.org/en/stable/index.html).在官 ...

  4. python连接sql server数据库(pyodbc)

    用python操作ms sql server,有好几种方法: (1)利用pymssql (2)利用pyodbc 这里讲import pyodbc来操作sql server database. pyod ...

  5. 站长在线Python精讲:Python中集合的交集、并集、差集和对称差集运算方法详解

    欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是<Python中集合的交集.并集.差集和对称差集运算方法详解>.主要讲的是集合运算的相关的概念,及运算方法,包括:集合的交集. ...

  6. python3连接sql server数据库_Python3操作SQL Server数据库(实例讲解)

    1.前言 前面学完了SQL Server的基本语法,接下来学习如何在程序中使用sql,毕竟不能在程序中使用的话,实用性就不那么大了. 2.最基本的SQL查询语句 python是使用pymssql这个模 ...

  7. java连接sql server数据库的代码如何改成连接mysql_连接sqlserver数据库代码

    Sql Server的JDBC测试程序与远程连接 参考文献: 1.MySql与oracle的JDBC测试程序 2.查看sqlserver的端口号 代码示例 在我的机器上安装了多个版本的sqlserve ...

  8. 数据库应用程序开发基础篇—— .NET中SQL Server数据库的操作C#篇之一

    数据库应用程序开发基础篇-- .NET中SQL Server数据库的操作C#篇之一 写在前面:前面介绍了数据库系统的基本概念,SQl语句基本使用方法,接下来通过学习具体语言和具体数据库结合的应用开发来 ...

  9. VB.NET连接SQL server数据库解决方案(转载+亲自实践)

    原文来自:http://hi.baidu.com/mwd_3330410/blog/item/ba0ccd240a0902184c088d83.html Microsoft Visual Basic. ...

最新文章

  1. 【刷算法】判断链表是否有环以及返回入环节点
  2. java 代码效率_Java效率
  3. github上星星1万多的python教程推荐收藏
  4. centos 查找nginx_centos7肿么查看已经安装nginx
  5. 修改打印机ip工具_使用富士施乐一体机因动态IP导致不能打印与扫描的解决方法...
  6. linux 批量替换文件内容及查找某目录下所有包含某字符串的文件(批量修改文件内容)
  7. Worktile 移动团队如何使用 C++ 完成 Worktile Pro 跨平台应用开发2
  8. JMeter使用命令行模式生成HTML测试报告
  9. 【信息系统项目管理师】2018年下半年信息系统项目管理师上午综合知识真题
  10. 1024:程序员,你的身体还好吗?
  11. 初见Laravel框架
  12. 启动服务器后台打印系统,服务器打印后台处理
  13. 隐藏应用图标的多种方式
  14. SpringBoot(二):详细讲解SpringBoot整合MyBatis
  15. 三菱转以太网模块连接 FX3U/3UC系列 PLC使用步骤
  16. 新建Flutter项目
  17. node如何使用mongoose?
  18. 合并单元格后怎么拆分单元格(拆分合并后的单元格方法)
  19. nch photopad mac支持哪些文件格式?
  20. CAD三维设计绘图软件AutoCAD 2017 for Mac破解教程

热门文章

  1. pads铺铜不能开启drp_PowerPCB(PADS)常见使用问题解决
  2. [Python]循环语句中的 else 子句
  3. BSP和B2B电子客票怎么区分
  4. TiDB基本原理学习
  5. 出現 MSVCR100.dll 無法繼續執行
  6. 考研数学视频资料高数篇
  7. importError: cannot import name ‘SGD‘ from ‘keras.optimizers‘
  8. 让书和背景分离/去除大区域中小的连通区域(python实现)
  9. android 抽屉菜单栏,android – 导航抽屉列表中的下划线菜单项
  10. 不同的网段添加打印机(共享 网络)思路