Pymssql使用
麻煩的是,經(jīng)常安裝失敗。需要先下載包,再在本地進(jìn)行安裝。
pip install pymssql
傳送門:https://www.lfd./~gohlke/pythonlibs/#pymssql
可根據(jù)自己Python的版本來下載,之前安裝Python3.7使用有些問題
安裝pymssql:
pymssql對(duì)數(shù)據(jù)庫(kù)的一些操作:
# server 數(shù)據(jù)庫(kù)服務(wù)器名稱或IP # database 數(shù)據(jù)庫(kù)名稱 conn = pymssql.connect(server, user, password, database) IF OBJECT_ID('persons', 'U') IS NOT NULL DROP TABLE persons CREATE TABLE persons (id INT NOT NULL identity(1,1),name VARCHAR(100),age int,PRIMARY KEY(id)) sql = "INSERT INTO persons(name,age) VALUES (%s, %d)" cursor.executemany(sql, data) # 如果沒有指定autocommit屬性為True的話就需要調(diào)用commit()方法 sql = "delete persons where id=5" sql = "SELECT * FROM persons" print("ID=%d, Name=%s" % (row[0], row[1])) # 也可以使用for循環(huán)來迭代查詢結(jié)果 # print("ID=%d, Name=%s" % (row[0], row[1])) sql = "update [persons] set name ='Python1' where id<3" if __name__ == '__main__':
mssql_helper:
def __init__(self,host,user,pwd,db): #類的構(gòu)造函數(shù),初始化數(shù)據(jù)庫(kù)連接ip或者域名,以及用戶名,密碼,要連接的數(shù)據(jù)庫(kù)名稱 def __GetConnect(self): #得到數(shù)據(jù)庫(kù)連接信息函數(shù), 返回: conn.cursor() self.conn=pymssql.connect(host=self.host,user=self.user,password=self.pwd,database=self.db,charset='utf8') cur=self.conn.cursor() #將數(shù)據(jù)庫(kù)連接信息,賦值給cur。 return(NameError,"連接數(shù)據(jù)庫(kù)失敗") #執(zhí)行查詢語(yǔ)句,返回的是一個(gè)包含tuple的list,list的元素是記錄行,tuple的元素是每行記錄的字段 def ExecQuery(self,sql): #執(zhí)行Sql語(yǔ)句函數(shù),返回結(jié)果 cur = self.__GetConnect() #獲得數(shù)據(jù)庫(kù)連接信息 cur.execute(sql) #執(zhí)行Sql語(yǔ)句 resList = cur.fetchall() #獲得所有的查詢結(jié)果 self.conn.close() #返回查詢結(jié)果 def ExecNonQuery(self,sql): cur = self.__GetConnect()
使用:
mssql = mssql_helper.MSSQL(server,user,password,database) rows = mssql.ExecQuery("SELECT * FROM persons") if __name__ == '__main__':
|