mysql_db.py 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  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='101.132.238.123', 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 Exception as e:
  42. print(str(e))
  43. self.con.rollback()
  44. def add_some(self, sql, data):
  45. try:
  46. self.cursor.executemany(sql, data)
  47. self.con.commit()
  48. except Exception as e:
  49. print('数据插入异常...{}'.format(e))
  50. self.con.rollback()
  51. def add_one(self, sql, data):
  52. try:
  53. self.cursor.execute(sql, data)
  54. self.con.commit()
  55. except Exception as e:
  56. print(str(e))
  57. self.con.rollback()
  58. def truncate(self, table_name):
  59. sql = 'truncate table {}'.format(table_name)
  60. self.cursor.execute(sql)
  61. self.con.commit()
  62. def close(self):
  63. self.cursor.close()
  64. self.con.close()
  65. if __name__ == '__main__':
  66. sql = 'select *from bq_testcase limit 10'
  67. si = {
  68. 1: 1
  69. }
  70. print(si.get('1'))