自己封裝的乙個MySQL類

2021-08-20 12:20:34 字數 2298 閱讀 8974

import pymysql

import logging

# 獲取logger的例項

logger = logging.getlogger("lzjf")

# 指定logger的輸出格式

formatter = logging.formatter('%(asctime)s %(levelname)s %(message)s')

# 檔案日誌,終端日誌

file_handler = logging.filehandler("lzjf.log")

file_handler.setformatter(formatter)

# 設定預設的級別

logger.setlevel(logging.info)

# 把檔案日誌新增到日誌處理器中

logger.addhandler(file_handler)

class dbhelper:

def __init__(self,host="127.0.0.1",user="root",passwd='123456',db='testdb',port=3306,charset="utf8"):

self.host=host

self.user=user

self.port=port

self.passwd=passwd

self.db=db

self.charset=charset

self.conn=none

self.cur=none

def connectdatabase(self):

try:

self.conn=pymysql.connect(host="127.0.0.1",user="root",password="123456",db="testdb",charset=self.charset)

except:

logger.error("connect  error")

self.cur=self.conn.cursor()

return true

def createdate(self):

'''建立資料庫

'''self.connectdatabase()

sql="create database if not exists %s default character set = utf8;"%self.db

try:

self.cur.execute(sql)

except:

logger.error("create database error") 

return false

return true       

def execute(self,sql,params=none):

'''執行一般的語句

'''if self.connectdatabase() == false:

return false

try:

if self.conn and self.cur:

#self.cur.execute("use %s;"%self.db)

self.cur.execute(sql,params)

self.conn.commit()

except:

logger.error("execute"+sql)

logger.error("params",params)

return false

return true

def close(self):

if self.cur:

self.cur.close()

if self.conn:  

self.conn.close()

return true 

if __name__=="__main__":

dbhelper=dbhelper()

print(dbhelper.connectdatabase())

#dbhelper.createdate()

sql="create table maoyan(id varchar(11),title varchar(50),actor varchar(200),time varchar(100));"

result=dbhelper.execute(sql,none)

if result==true:

print("建立表成功")

else:

print("建立表失敗")    

dbhelper.close()

logger.removehandler(file_handler)

自己封裝的乙個 TCP 套接字基類

tcpsocket.h ifndef ctcpsocket h define ctcpsocket h include enum oper type enum send error type define buffer size 4096 class ctcpsocket oper type get...

自己封裝的乙個GridView控制項

效果如圖 使用方法 void viewdidload cgfloat gridview mygridview gridview heightofrow nsinteger row nsinteger numberofgridview mygridview gridview void gridview...

封裝乙個自己的通用Ajax

首先在封裝乙個自己的ajax函式之前,我們需要先知道怎麼實現乙個簡單的ajax請求。這裡我建了兩個檔案,ajax01.html和ajax01.php ajax01.html 點選上面的按鈕,我會變哦 可以看到使用ajax發請求並獲取響應資料只需要簡單的4步 引數說明 xhr.status statu...