mysql_db.py 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. import pymysql as ps
  2. class MysqlDB:
  3. """
  4. mysql操作
  5. """
  6. con = None
  7. cursor = None
  8. def __init__(self, db_name, db_type=None):
  9. self.db_name = db_name
  10. if db_type is None:
  11. self.con = ps.connect(host='172.19.189.136', port=3306, user='bi_etl', password='XPtpswuU5lwGo4kx',
  12. db=self.db_name, charset='utf8')
  13. else:
  14. self.con = ps.connect(host='43.254.221.77', port=3306, user='root', password='elab@123'
  15. , db=self.db_name, charset='utf8')
  16. self.cursor = self.con.cursor()
  17. def show_tables(self):
  18. self.cursor.execute('show tables')
  19. for talbe in self.cursor.fetchall():
  20. print(talbe)
  21. def select(self, sql, params=None):
  22. if params:
  23. self.cursor.execute(sql, params)
  24. else:
  25. self.cursor.execute(sql)
  26. return self.cursor.fetchall()
  27. def update(self, sql, params=None):
  28. try:
  29. if params:
  30. self.cursor.execute(sql, params)
  31. else:
  32. self.cursor.execute(sql)
  33. self.con.commit()
  34. except Exception as e:
  35. print(e)
  36. self.con.rollback()
  37. def delete(self, sql):
  38. try:
  39. self.cursor.execute(sql)
  40. self.con.commit()
  41. except:
  42. self.con.rollback()
  43. def add_some(self, sql, data):
  44. try:
  45. self.cursor.executemany(sql, data)
  46. self.con.commit()
  47. except Exception as e:
  48. print('数据插入异常...{}'.format(e))
  49. self.con.rollback()
  50. def add_one(self, sql, data):
  51. try:
  52. self.cursor.execute(sql, data)
  53. self.con.commit()
  54. except:
  55. self.con.rollback()
  56. def truncate(self, table_name):
  57. sql = 'truncate table {}'.format(table_name)
  58. self.cursor.execute(sql)
  59. self.con.commit()
  60. def close(self):
  61. self.cursor.close()
  62. self.con.close()
  63. if __name__ == '__main__':
  64. sql = 'select *from bq_testcase limit 10'
  65. si = {
  66. 1: 1
  67. }
  68. print(si.get('1'))