1、pymssql安装(Linux)
下载pymsql:https://pypi.python.org/pypi/pymssql
注意:先切换root权限:
sudo su -
sudo apt-get install freetds-dev
cd /home/pi/pymssql
tar zxvf pymssql-2.1.3.tar.gz
cd /home/pi/pymssql/pymssql-2.1.3
python3 setup.py install
注意: 如果安装Python2.x环境下的pymssql 需要再前置安装
sudo apt-get install python-dev
然后运行 python setup.py install
2、pymssql安装(windows)
先下载pymssql模块:http://www.lfd.uci.edu/~gohlke/pythonlibs/#pymssql%20
打开cmd命令行运行
pip install C:\pymssql-2.1.3-cp35-cp35m-win_amd64.whl
3、pymssql调用方法类
1 #coding=utf-8 #!/usr/bin/env python 2 3 import pymssql 4 5 class MSSQL: 6 def __init__(self): 7 self.host = '' 8 self.user = '' 9 self.pwd = '' 10 self.db = '' 11 12 def __GetConnect(self): 13 """ 14 得到连接信息 15 返回: conn.cursor() 16 """ 17 if not self.db: 18 raise(NameError,"没有设置数据库信息") 19 self.conn = pymssql.connect(host=self.host,user=self.user,password=self.pwd,database=self.db,timeout=5,login_timeout=2,charset="utf8") 20 cur = self.conn.cursor() 21 if not cur: 22 raise(NameError,"连接数据库失败") 23 else: 24 return cur 25 26 ##验证数据库连接 27 def VerifyConnection(self): 28 try: 29 if self.host=='': 30 return False 31 conn = pymssql.connect(host=self.host,user=self.user,password=self.pwd,database=self.db,timeout=1,login_timeout=1,charset="utf8") 32 return True 33 except: 34 return False 35 36 def ExecQuery(self,sql): 37 """ 38 执行查询语句 39 返回的是一个包含tuple的list,list的元素是记录行,tuple的元素是每行记录的字段 40 41 调用示例: 42 ms = MSSQL(host="localhost",user="sa",pwd="123456",db="PythonWeiboStatistics") 43 resList = ms.ExecQuery("SELECT id,NickName FROM WeiBoUser") 44 for (id,NickName) in resList: 45 print str(id),NickName 46 """ 47 try: 48 cur = self.__GetConnect() 49 cur.execute(sql) 50 resList = cur.fetchall() 51 #查询完毕后必须关闭连接 52 self.conn.close() 53 return resList 54 except: 55 return 'error' 56 57 def ExecNonQuery(self,sql): 58 """ 59 执行非查询语句 60 调用示例: 61 cur = self.__GetConnect() 62 cur.execute(sql) 63 self.conn.commit() 64 self.conn.close() 65 """ 66 cur = self.__GetConnect() 67 cur.execute(sql) 68 self.conn.commit() 69 self.conn.close() 70 71 def ExecStoreProduce(self,sql): 72 """ 73 执行查询语句 74 返回的是一个包含tuple的list,list的元素是记录行,tuple的元素是每行记录的字段 75 76 调用示例: 77 ms = MSSQL(host="localhost",user="sa",pwd="123456",db="PythonWeiboStatistics") 78 resList = ms.ExecQuery("SELECT id,NickName FROM WeiBoUser") 79 for (id,NickName) in resList: 80 print str(id),NickName 81 """ 82 cur = self.__GetConnect() 83 cur.execute(sql) 84 resList = cur.fetchall() 85 self.conn.commit() 86 #查询完毕后必须关闭连接 87 self.conn.close() 88 return resList 89 90 def insert_Pic(self,sql,arg): 91 92 # 保存照片 93 cur = self.__GetConnect() 94 cur.execute(sql,arg) 95 self.conn.commit() 96 self.conn.close()