python-连接sqlsever、mysql

1.准备工作

  下载pycharm(很简单,自己搜索即可下载)

  使用Sqlsever:

pip install pymssql 

  使用MySQL:

pip install pymysql

2.连接对应数据库

  获取需要连接数据库的地址(根据自己公司服务器数据库或者自己本地数据库)

  需要获取:服务器名,账户,密码,数据库名

3.pycharm中新建项目

  1.连接Sqlsever


import pymssql
from warnings import filterwarnings

# 忽略Mysql告警信息
# filterwarnings("ignore", category=pymssql.Warning)

class MssqlDb:
def __init__(self):
# 建立数据库连接 charset='cp936'防止连接乱码
self.conn = pymssql.connect("172.16.3.201", "sa", "Flame100", "AutomationTest",charset='cp936')
# 使用 cursor 方法获取操作游标,得到一个可以执行sql语句,并且操作结果作为字典返回的游标,
self.cur = self.conn.cursor(as_dict = True)

def __del__(self):
# 关闭游标
self.cur.close()
# 关闭连接
self.conn.close()

def query(self, sql, state="all"):
"""
查询
:param sql:
:param state: all是默认查询全部
:return:
"""
self.cur.execute(sql)

if state == "all":
# 查询全部
data = self.cur.fetchall()
else:
# 查询单条
data = self.cur.fetchone()
return data

def execute(self, sql):
"""
更新、删除、新增
:param sql:
:return:
"""
try:
# 使用execute操作sql
rows = self.cur.execute(sql)
# 提交事务
self.conn.commit()
return rows
except Exception as e:
print("数据库操作异常 {0}".format(e))
# 回滚修改
self.conn.rollback()


if __name__ == '__main__':
mydb = MssqlDb()
r = mydb.query("select * from cases ")
#r = mydb.execute("insert into `case` (`app`) values('xd')")
print(r)
 

  2.连接MySQL

 1  1 #coding:utf8
 2  2 import pymysql
 3  3 
 4  4 class mySqlDB():
 5  5 
 6  6     def __init__(self):
 7  7         self.connect = pymysql.connect('127.0.0.0', 'sa', '123456', 'AutomationTest')  # 服务器名,账户,密码,数据库名
 8  8         self.cursor = self.connect.cursor(cursor=pymysql.cursors.DictCursor)  #作为字典返回,正常为列表
 9  9     def __del__(self):
10 10         print("关闭游标")
11 11         self.connect.close()
12 12         self.cursor.close()
13 13    #
14 14     def query(self,sql,state='all'):
15 15         self.cursor.execute(sql)
16 16         if state=='all':
17 17             rows = self.cursor.fetchall()
18 18             return rows
19 19         else:
20 20             row = self.cursor.fetchone()
21 21             return row
22 22     #   增删改
23 23     def execute(self,sql):
24 24         try:
26 26 rows = self.cursor.execute(sql) 27 27 # 提交事务 28 28 self.connect.commit() 29 29 return rows 30 30 except Exception as e: 31 31 print("数据库操作异常 {0}".format(e)) 32 32 # 回滚修改 33 33 self.connect.rollback() 34 34 if __name__ == '__main__': 35 35 mydb = mySqlDB() 36 36 r=mydb.query('select * from `cases`') 37 38 print(r)

注:1.close()是必须的,否则python程序会持久占用这个数据库.

       2.当执行更改(增删改)数据库表的操作时,执行完sql后别忘记加一句commit() 

 

 

每篇一句:

在这车多人挤的世界,你依然在我心里住了好几年。

 

注:转载请注明出处,2021-08-13 16:28:38

 

posted on 2021-08-13 16:52  Titen  阅读(176)  评论(0编辑  收藏  举报

导航