本文实例讲述了Python连接SQLServer2000的方法。分享给大家供大家参考,具体如下:

http://pymssql.sourceforge.net/ 介绍PYTHON 连接MSSQL的好地址的哦!
Python好的一个方法就是能够在网上找到很多现成的模块然后直接下载拿过来用就可以了。具体快速开发的一个原因也就是这个了。现在就是主要来研究一个pymssql这个模块的操作功能了!
可以安装之后直接查询帮助文档进行查看到这个模块的一些功能帮助文档。
1.一个解决乱码问题的方法:
s.decode('gbk', 'ignore')
比如,若要将某个String对象s从gbk内码转换为UTF-8,可以如下操作
s.decode('gbk').encode('utf-8')
可是,在实际开发中,我发现,这种办法经常会出现异常:
UnicodeDecodeError: 'gbk' codec can't decode bytes in position 30664-30665: illegal multibyte sequence
这是因为遇到了非法字符——尤其是在某些用C/C++编写的程序中,全角空格往往有多种不同的实现方式,比如/xa3/xa0,或者/xa4/x57,这 些字符,看起来都是全角空格,但它们并不是“合法”的全角空格(真正的全角空格是/xa1/xa1),因此在转码的过程中出现了异常。
幸运的是,tiny找到了完美的解决办法(我因此被批评看文档不仔细,汗啊……)
s.decode('gbk', 'ignore').encode('utf-8')
因为decode的函数原型是decode([encoding], [errors='strict']),可以用第二个参数控制错误处理的策略,默认的参数就是strict,代表遇到非法字符时抛出异常;
如果设置为ignore,则会忽略非法字符;
如果设置为replace,则会用?取代非法字符;
如果设置为xmlcharrefreplace,则使用XML的字符引用。
这个方法帮助确实 是相当大的哦。对于那种在数据库中存储了全角与半角的非法字符的问题可以这样来进行解决处理的哦!
字符编码问题永远是一个让人头疼的问题哈哈!
2.http://www.python.org/dev/peps/pep-0249/
上面提供了Python-DBAPI的常用操作功能。
总结出来相关的API操作方法:
3.总结出来Python连接数据库的一般程序过程是这样来写的:
第一步:导入相关的模块
其中MYSQL:
import MySQLdb
其中MSSQL:
import pymssql
第二步:打开连接
其中MYSQL:
conn = MySQLdb.connect(self.dbhost,self.dbuser,self.dbpasswd,self.database)
其中MSSQL:
conn = pymssql.connect(host=self.dbhost,user=self.dbuser,password=self.dbpasswd,database=self.database)
[通过本身的函数原型来定义出来这个方法的]
第三步:连接完了之后就要开始创建一个cursor了。通过这个对象来对数据库发送一个请求操作。
代码:
curs = conn.cursor()
相当于JAVA中的Statement对象一样的。通过语句来进行提交SQL命令的
第四步:开始发送SQL命令到数据库服务器了,可以这样来做
curs.execute(SQL)
例如:
curs.execute("select * from test")
其中的SQL命令可以是任意的SQL语句 可以是执行INSERT 操作或DELETE操作也可以是SELECT操作的
要注意到 执行完了之后要进行commit()提交一次的。
例如:
cursor.execute("insert into test(id) values(1)")
如果是执行了SELECT操作的话就要进行第五步操作了:
第五步:
curs.execute("select * from test")
rows = curs.fetchall()
其中的fetchall()只是我们的cursor对象的一个方法而已的。
现在就可以提取出来相关信息了
for i in range(len(rows)): print "Row",i,"name",rows[i][0],"value",rows[i][1]
看我写的代码:
def test(self):
conn = self.connect()
sql="select * from bbs where id<20"
curs = conn.cursor() #得到一个游标对象
curs.execute(sql) #执行一个SQL语句
rows=curs.fetchall() #得到全部的查询结果集
for i in range(len(rows)): #
print "Row",i,"name",rows[i][3],"value",rows[i][4]
conn.close()
我明白了:通过这样的方法的话 得到的一行记录其实是一个元组的数据结构的。
要取其中的一个可以用一个类似两维数组的方法进行查询出来的。
rows[1][0]:表示第一条记录中的第一个位置的值的。
然后再来看看 将其从数据库中提取出来之后进行编码处理与解码处理
for i in range(len(rows)):
print rows[i][4].decode('gb2312', 'ignore').encode('gb2312')
以后操作数据库的话就可以直接这样来写代码的了!
http://pymssql.sourceforge.net/userguide.html 有详细的帮助说明文档的
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python常见数据库操作技巧汇总》、《Python编码操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。
# Python
# 连接
# SQLServer2000
# 一文教会你用python连接并简单操作SQLserver数据库
# Python3连接SQLServer、Oracle、MySql的方法
# python使用pyodbc连接sqlserver
# python连接并简单操作SQL server数据库详细步骤
# 全角
# 操作技巧
# 是一个
# 设置为
# 就可以
# 可以用
# 数据结构
# 则会
# 数据库中
# 来写
# 的是
# 都是
# 进阶
# 第五步
# 帮助文档
# 文档
# 让人
# 半角
# 相关内容
# 尤其是
相关文章:
零基础网站服务器架设实战:轻量应用与域名解析配置指南
IOS倒计时设置UIButton标题title的抖动问题
在线制作视频的网站有哪些,电脑如何制作视频短片?
建站主机无法访问?如何排查域名与服务器问题
阿里云高弹*务器配置方案|支持分布式架构与多节点部署
最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?
平台云上自助建站如何快速打造专业网站?
宁波自助建站系统如何快速打造专业企业网站?
制作公司内部网站有哪些,内网如何建网站?
制作充值网站的软件,做人力招聘为什么要自己交端口钱?
韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南
黑客如何利用漏洞与弱口令入侵网站服务器?
如何快速搭建高效可靠的建站解决方案?
C++时间戳转换成日期时间的步骤和示例代码
ppt制作免费网站有哪些,ppt模板免费下载网站?
网站制作大概要多少钱一个,做一个平台网站大概多少钱?
企业网站制作公司网页,推荐几家专业的天津网站制作公司?
如何通过IIS搭建网站并配置访问权限?
c++23 std::expected怎么用 c++优雅处理函数错误返回【详解】
如何在阿里云高效完成企业建站全流程?
湖南网站制作公司,湖南上善若水科技有限公司做什么的?
香港服务器网站推广:SEO优化与外贸独立站搭建策略
家庭服务器如何搭建个人网站?
宝华建站服务条款解析:五站合一功能与SEO优化设置指南
,购物网站怎么盈利呢?
如何用景安虚拟主机手机版绑定域名建站?
网站建设制作、微信公众号,公明人民医院怎么在网上预约?
建站主机如何安装配置?新手必看操作指南
广州网站建站公司选择指南:建站流程与SEO优化关键词解析
GML (Geography Markup Language)是什么,它如何用XML来表示地理空间信息?
如何在阿里云虚拟主机上快速搭建个人网站?
在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?
外汇网站制作流程,如何在工商银行网站上做外汇买卖?
建站一年半SEO优化实战指南:核心词挖掘与长尾流量提升策略
c# 在高并发下使用反射发射(Reflection.Emit)的性能
建站之星后台管理系统如何操作?
建站之家VIP精选网站模板与SEO优化教程整合指南
小说建站VPS选用指南:性能对比、配置优化与建站方案解析
如何快速搭建高效WAP手机网站?
建站主机选购指南与交易推荐:核心配置解析
建站之星导航如何优化提升用户体验?
合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?
较简单的网站制作软件有哪些,手机版网页制作用什么软件?
如何快速生成可下载的建站源码工具?
如何通过商城自助建站源码实现零基础高效建站?
建站之星×万网:智能建站系统+自助建站平台一键生成
如何基于PHP生成高效IDC网络公司建站源码?
Android使用GridView实现日历的简单功能
微信网站制作公司有哪些,民生银行办理公司开户怎么在微信网页上查询进度?
实例解析Array和String方法
*请认真填写需求信息,我们会在24小时内与您取得联系。