
Z	F_                 @   s/   d  d l  Z  d  d l Z Gd d   d  Z d S)    Nc               @   sd   e  Z d  Z d d   Z d d   Z d d   Z d d   Z d	 d
   Z d d   Z d d   Z	 d S)TMySqlc             C   s:   | |  _  | |  _ | |  _ | |  _ | |  _ g  |  _ d  S)N)hostportuserpasswddbsqls)selfr   r   r   r   r    r
   /data/kkb/cgi-bin/py/hsql.py__init__   s    					zTMySql.__init__c             C   s   yb t  j d |  j d |  j d |  j d |  j d |  j  |  _ |  j j d  |  j j	   |  _	 WnW t
 k
 r } z7 t j d t |  j  t |  j  t |  f  WYd  d  } ~ Xn Xd  S)Nr   r   r   passwordr   Tz,connect to [%s:%d] failed. Information: [%s])pymysqlconnectr   r   r   r   r   connZ
autocommitcursor	Exceptionloggingerrorstrint)r	   exr
   r
   r   r      s    <zTMySql.connectc             C   sp   y! |  j  j |  |  j  j   SWnH t k
 rk } z( t j d t |  t |  f  WYd  d  } ~ Xn Xd  S)Nz)select sql [%s] failed. Information: [%s])r   executeZfetchallr   r   r   r   )r	   sqlr   r
   r
   r   select   s
    zTMySql.selectc             C   s   y! |  j  j |  |  j j   WnY t k
 r| } z9 t j d t |  t |  f  |  j j   d SWYd  d  } ~ Xn Xd S)Nz)execute sql[%s] failed. Information: [%s]FT)	r   r   r   commitr   r   r   r   rollback)r	   r   r   r
   r
   r   r      s    #zTMySql.executec             C   s   |  j  j |  d  S)N)r   append)r	   r   r
   r
   r   	multiexec)   s    zTMySql.multiexecc             C   s   y5 x! |  j  D] } |  j j |  q W|  j j   WnM t k
 r } z- |  j j   t j d t	 |   d SWYd  d  } ~ Xn Xg  |  _  d S)NzInformation[%s]FT)
r   r   r   r   r   r   r   r   r   r   )r	   ssr   r
   r
   r   multicommit,   s    	zTMySql.multicommitc             C   s   |  j  j   |  j j   d  S)N)r   closer   )r	   r
   r
   r   r!   :   s    zTMySql.closeN)
__name__
__module____qualname__r   r   r   r   r   r    r!   r
   r
   r
   r   r      s   	
r   )r   r   r   r
   r
   r
   r   <module>   s   