Python数据库模块pymssql连接SQLServer数据库操作详解

发布时间:2018-08-23 19:32,

浏览次数:720

, 标签:

Python

pymssql

SQLServer

最近需要使用到SQLServer数据库,之前一直使用的是MySQL数据库,我比较喜欢使用Python,之前一直使用的是pymysql作为数据库的操作工具,现在需要换成pymssql了,使用方法大概相同,查资料的过程中发现网上很多资料讲的都是部分的,这里总结了一下最近的操作,详细地给出了操作代码,相信很好看明白,希望能帮到需要的人。

下面是具体的实现:

#!usr/bin/env python # encoding:utf-8 ''' __Author__:沂水寒城

功能:使用pymssql连接SQLServer测试使用 ''' import sys import logging import pymssql

reload(sys) sys.setdefaultencoding("utf-8") LOG_FORMAT="%(asctime)s -

%(levelname)s - %(message)s" DATE_FORMAT="%m-%d-%Y %H:%M:%S %p"

logging.basicConfig(filename='SQLServer.log',level=logging.DEBUG,format=LOG_FORMAT,

datefmt=DATE_FORMAT) #数据库的;连接配置信息 config_dict={ 'user':'你的用户名',

'password':'你的密码', 'host':'你要连接的host地址', 'database':'你要操作的数据库' }

tablename='你要操作的表名' def SQLServer_connect(config_dict): ''' SQLServer 数据库连接 '''

connect=pymssql.connect(**config_dict) print 'Connect Successful!!!' return

connect def select_k_records(config_dict,tablename,topk=100): '''

从SQLServer中选取前k条记录 ''' try: connect=SQLServer_connect(config_dict)

cursor=connect.cursor() #统计记录数量 result=[] cursor=connect.cursor()

select_sql='SELECT * FROM %s' %tablename print 'select_sql is: ',select_sql

cursor.execute(select_sql) row=cursor.fetchone() while row: if

len(result)

break print 'result: ' print result connect.close() cursor.close() except

Exception, e: print "elect_sql error: " + e finally: connect.close() return

result def create_new_table(config_dict,tablename): ''' 创建表 '''

connect=SQLServer_connect(config_dict) cursor=connect.cursor()

#cursor.execute('select * into WZ_cgb_test from WZ_OA_PUBLICOPINION where 1=2')

#省略号替换成自己的字段信息即可 cursor.execute(""" CREATE TABLE %s ( id VARCHAR(32) NOT NULL,

name VARCHAR(255) NULL, ...... PRIMARY KEY(id) )""" %tablename )

connect.commit() #记得提交数据库事物操作 connect.close() cursor.close() def

delete_record(config_dict,delete_sql): ''' 从 SQLServer 中删除数据记录 ''' try:

connect=SQLServer_connect(config_dict) cursor=connect.cursor()

cursor.execute(delete_sql) connect.commit() print 'DeleteOperation Finished!!!'

except Exception, e: print "delete_sql error: " + e finally: connect.close()

def count_records_num(config_dict,tablename): ''' 统计SQLServer中的数据记录数量 ''' try:

connect=SQLServer_connect(config_dict) cursor=connect.cursor()

totalNum=cursor.rowcount print 'Total Records Number is: ',str(totalNum)

connect.close() cursor.close() except Exception, e: print "count_sql error: " +

e finally: connect.close() return len(result) def

insert_record(config_dict,insert_sql): ''' 向SQLServer中插入数据 ''' try:

connect=SQLServer_connect(config_dict) cursor=connect.cursor()

cursor.execute(insert_sql) connect.commit() print 'InsertOperation Finished!!!'

except Exception, e: print "insert_sql error: " + e finally: connect.close() if

__name__ == "__main__": count_records_num(config_dict,tablename)

#select_k_records(config_dict,tablename,topk=10)

测试结果如下:

Connect Successful!!! select_sql is: SELECT * FROM ****** Total Records

Number is: 14750 [Finished in 3.3s]

其他的功能也都测试了,这里就不列举了,感兴趣的话可以试试。

数据库的连接配置换成自己的就行了。

欢迎交流。

pymssql mysql_Python数据库模块pymssql连接SQLServer数据库操作详解相关推荐

  1. php读取配置文件连接mysql数据库,MySQL教程--通过配置文件连接数据库操作详解

    这篇文章主要介绍了mysql 之通过配置文件链接数据库的相关资料,主要是一个单例饿汉式的获得数据库连接方法工具类的实现,需要的朋友可以参考下 mysql 之通过配置文件链接数据库 配置文件jdbc.p ...

  2. python 去掉tab_Python使用crontab模块设置和清除定时任务操作详解

    本文实例讲述了Python使用crontab模块设置和清除定时任务操作.分享给大家供大家参考,具体如下: centos7下安装Python的pip root用户使用yum install -y pyt ...

  3. SSH远程连接原理及操作详解

    参考资料SSH登录原理_藏红的博客-CSDN博客 SSH全称是Secure Shell,SSH协议是基于应用层的协议,为远程登录会话和其他网络服务提供安全性的协议.SSH使用最多的是远程登录和传输文件 ...

  4. mongodb添加创建修改时间_MongoDB数据库插入、更新和删除操作详解

    一.Insert操作 Insert操作是MongoDB插入数据的基本方法,对目标集合使用Insert操作,会将该文档添加到MongoDB并自动生成相应的ID键.文档结构采用类似JSON的BSON格式. ...

  5. 【MySQL】数据库中表的增删查改操作详解

    文章目录 前言 SQL的通用语法 一.表的创建与表的新增 语法 数据类型的介绍 演示 二.表的删除 语法 删整张表的语法 删记录的语法 演示 三.表的查询 查询整张表 (一)全列查询 (二)指定列查询 ...

  6. python diango 增删改查_python中关于django对数据库Mysql的增删改查操作详解

    下面小编就为大家带来一篇python django 增删改查操作 数据库Mysql.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧 下面介绍一下django增删改查操作: ...

  7. Python标准库:datetime 时间和日期模块 —— 时间的获取和操作详解

    datetime 时间和日期模块 datetime 模块提供了以简单和复杂的方式操作日期和时间的类.虽然支持日期和时间算法,但实现的重点是有效的成员提取以进行输出格式化和操作.该模块还支持可感知时区的 ...

  8. java 连接sqlserver_java如何连接sqlserver数据库

    原标题:java如何连接sqlserver数据库 java如何连接sqlserver数据库 首先下载JDBC: 下载 完成后,是个exe文件,点击运行,会提示你选择解压目录. 解压完成后,进入 \sq ...

  9. nodejs操作sqlserver数据_nodejs基于mssql模块连接sqlserver数据库的简单封装操作示例...

    本文实例讲述了nodejs基于mssql模块连接sqlserver数据库的简单封装操作.分享给大家供大家参考,具体如下: 注意:开启sqlserver服务器允许远程连接的步骤,自行百度,很多经验,no ...

最新文章

  1. Caffe 编译安装
  2. mybatis添加记录时返回主键id
  3. 在java中将数据信息写入文本中(2)
  4. wxWidgets:将 PNG 图像文件包含到可执行文件中
  5. linux磁盘 分区 物理卷 卷组 逻辑卷 文件系统加载点操作案例
  6. ssh,scp带密码操作
  7. 【转载】此时此刻的飞秋爱好者
  8. 编程语言中,差、交、并、自然连接、选择、投影、笛卡尔积分别都是什么运算...
  9. 忘记commit也会造成select查询的性能问题
  10. MySQL二进制部署
  11. codeblock的多个文件编译怎么_给一个iOS app配置多个环境变量
  12. vmd与ovito的对比
  13. SecureCRT的安装与破解(过程很详细!!!)
  14. 利用Python3将EXCEL中某列特殊字符之前的汉字取首字母,特殊字符之后的汉字取全拼,然后用下划线“_”相连,写入下一列...
  15. Web 3.0 有哪些值得关注的项目
  16. 2020年最好用的手机是哪一款_2020年公认最值得入手的3款手机,颜值性能兼具,用三年不亏!...
  17. 计算机图形剪裁程序说明,计算机图形学实验报告实验2裁剪算法实验
  18. 开源进企业8月27日活动
  19. SQL千万级大数据量查询优化
  20. 逐梦....圈圈圈圈圈

热门文章

  1. 宁要捧杀,不许真言?
  2. 短字符域名火爆至此,.tw域名逃得了吗?
  3. 乐华阅卷系统打不开服务器,乐华网上阅卷系统1.0操作手册.doc
  4. go结构体初始化_go嵌套匿名结构体的初始化详解
  5. http://chdbits.org/signup.php 邀请码,hdchina论坛_chdbits 新地址_hdchina.club邀请码
  6. 淘宝活动代码查询帐号情况
  7. vue 导入图片方法(简单易用)
  8. qt5 textedit怎么改变鼠标响应_聊聊鼠标的前世今生
  9. 微型计算机关闭电源时,当计算机关闭电源时,哪种存储方式中的信息通常更易丢失?()...
  10. PSD:由物理先验指导的有原则的合成到真实的去雾(Principled Synthetic-to-Real Dehazing Guided by Physical Priors_CVPR_2021)