The directory organization is as follows:
The Dbutil code is as follows:
#!/usr/bin/python#-*-coding:utf-8-*-ImportConfigparserImportPymysqlclassDbutil:#dbsection as a section in a configuration file def __init__(self,dbsection): Self._conn=self.dbconn (dbsection)if(self._conn): Self._cursor=self._conn.cursor ()defdbconn (self,dbsection):#Read Db.ini fileCF =Configparser. Configparser () Cf.read (".. /config/db.ini") Dbhost= Cf.get (Dbsection,"Host") Dbport= Cf.getint (Dbsection,"Port") Dbuser= Cf.get (Dbsection,"User") Dbpassword= Cf.get (Dbsection,"Password") dbname= Cf.get (Dbsection,"dbname") Dbcharset= Cf.get (Dbsection,"CharSet") #Start Database Connection Try: Conn= Pymysql. Connect (host=dbhost,port=dbport,user=dbuser,passwd=dbpassword,db=dbname,charset=dbcharset)except: Print("Connection Failed host=%s,port=%d,user=%s,dbpassword=%s,db=%s"%(dbhost,dbport,dbuser,dbpassword,dbname)) Conn=FalsereturnConn#get query result set deffetch_all (Self, SQL): Res="' if(self._conn):Try: Self._cursor.execute (SQL) Res=Self._cursor.fetchall ()exceptException as Data:res=FalsePrint("Query database exception,%s"%data)returnRes#Execute UPDATE statement defupdate (self, SQL): Flag=Falseif(self._conn):Try: Self._cursor.execute (SQL) Self._conn.commit () flag=TrueexceptException as Data:flag=FalsePrint("Update database exception,%s"%data)returnFlag#To close a database connection defClose (self):if(self._conn):#print (type (self._conn) = = ' object ') Try: #if (type (self._cursor) = = ' object '):self._cursor.close ()#if (type (self._conn) = = ' object '):self._conn.close ()exceptException as data:Print("Close Database exception,%s,%s,%s"%(data, type (self._cursor), type (self._conn) ))if __name__=="__main__": Dbutil=dbutil ("Biz_mysql") Res=dbutil.fetch_all ("select * from Wm_people limit%d"% (2) ) Dbutil.close ()Print(Len (res)) forDdinchRes:Print(Dd[0])
The corresponding Db.ini are as follows
= 10.15.17= 3306== 123456= = = 10.15.17= 3306 == 123456== UTF8
Python's Dbutil