01-python操作Mysql資料庫
python運算元據庫流程:
--建立資料庫連線 Conn=pymysql.connect()
--建立遊標cur=Conn.cursor()
--遊標下執行sql cur.execute(sql)
--提交遊標資料到資料庫conn.commit()
--關閉遊標cur.close()
--關閉資料庫conn.close()
例項
例項1:建立資料庫連線
import pymysql,re,logging,os
class OperationDb_interface(object):
def __init__(self):
self.conn=pymysql.connect(host='localhost', user='root',passwd='*****',db='my_test',port=3306,charset='utf8')#建立資料庫連結
self.cur=self.conn.cursor()#建立遊標
例項2:查詢單條語句
def selectOne(self,condition):
try:
self.cur.execute(condition)#遊標下執行sql
results=self.cur.fetchone()#獲取一條結果
except pymysql.Error,e:
results="sql0001"#資料庫執行錯誤
print"Mysql Error %d:%s"% (e.args[0],e.args[1])
logging.basicConfig(filename=os.path.join(os.getcwd(),'./log.txt'),
level=logging.DEBUG,format='%(asctime)s %(filename)s[line:%(lineno)d] % (levelname)s %(message)s')
logger =logging.getLogger(__name__)
logger.exception(e)
finally:
return results
例項3:查詢多條語句
def selectAll(self,condition):
try:
self.cur.execute(condition)
self.cur.scroll(0,mode='absolute')#游標回到初始位置
result=self.cur.fetchall()#返回遊標中所有結果
except pymysql.Error,e:
result='sql0001'#資料庫執行錯誤
print "Mysql Error %d:%s" % (e.args[0],e.args[1])
logging.basicConfig(filename=os.path.join(os.getcwd(),'./log.txt'),
level=logging.DEBUG,format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s % (message)s')
logger=logging.getLogger(__name__)
logger.exception(e)
finally:
return result
例項4:定義插入多條語句資料庫操作
def insertMore(self,condition,params):#對應的params是個tuple或list
try:
self.cur.executemany(condition,params)
self.conn.commit()#提交遊標資料到資料庫
return True
except pymysql.Error,e:
results='sql001'#資料庫執行錯誤
print "Mysql Error %d:%s"%(e.args[0],e.args[1])
logging.basicConfig(filename=os.path.join(os.getcwd(),'/log.txt'),
level=logging.DEBUG,format='%(asctime)s%(filename)s %(filename)s[line:%(lineno)d]% (levelname)s%(message)s' )
logger=logging.getLogger(__name__)
logger.exception(e)
return False
關閉資料庫
def __del__(self):
if self.cur !=None:
self.cur.close()#關閉遊標
if self.conn !=None:
self.conn.close()#關閉資料庫連結
if __name__=="__main__":
test=OperationDb_interface()#例項化類
result=test.selectAll("select * from student")
#result=test.insertMore("insert into student VALUES (%s,%s);",(('003','zhaogang'),('004','Angelia'))) #對應的params是個tuple或list
print (result)
相關文章
- MySQL 資料庫操作MySql資料庫
- Mysql資料庫操作命令MySql資料庫
- PHP操作MySQL資料庫PHPMySql資料庫
- MySQL資料庫常用操作MySql資料庫
- 【Java】操作mysql資料庫JavaMySql資料庫
- MySQL資料庫基本操作MySql資料庫
- shell 操作mysql資料庫MySql資料庫
- 【Mysql】改資料庫庫名操作MySql資料庫
- mysql資料庫基本操作(六)MySql資料庫
- mysql資料庫基本操作(三)MySql資料庫
- mysql資料庫基本操作(四)MySql資料庫
- mysql資料庫基本操作(五)MySql資料庫
- 02、MySQL—資料庫基本操作MySql資料庫
- python資料庫(mysql)操作Python資料庫MySql
- python 操作mysql資料庫PythonMySql資料庫
- Python Mysql 資料庫操作PythonMySql資料庫
- python操作mysql資料庫PythonMySql資料庫
- 使用OTL操作MySQL資料庫MySql資料庫
- Mysql資料庫基礎操作命令MySql資料庫
- Python之 操作 MySQL 資料庫PythonMySql資料庫
- MySQL資料庫操作、儲存引擎MySql資料庫儲存引擎
- MySQL系列:資料庫基本操作(1)MySql資料庫
- MySQL資料庫常用操作和技巧MySql資料庫
- MySQL(一) 資料表資料庫的基本操作MySql資料庫
- SQLALchemy操作MySQL關係型資料庫MySql資料庫
- mysqlclient操作MySQL關係型資料庫MySqlclient資料庫
- Go語言中mysql資料庫操作(一)GoMySql資料庫
- 2.資料庫Mysql--------基本操作資料庫MySql
- Python3 MySQL 資料庫操作PythonMySql資料庫
- win7 cmd 操作mysql資料庫Win7MySql資料庫
- MYSQL資料庫常用操作命令節選MySql資料庫
- MySQL終端管理資料庫操作指南MySql資料庫
- python資料庫-MySQL資料庫高階查詢操作(51)Python資料庫MySql
- MySQL—-MySQL資料庫入門—-第二章 資料庫和表的基本操作MySql資料庫
- MySQL學習筆記-使用Navicat操作MySQL資料庫MySql筆記資料庫
- 使用mysql-connector-python操作MYSQL資料庫MySqlPython資料庫
- MySQL 資料庫的對庫的操作及其資料型別悔鋒MySql資料庫資料型別
- jmeter學習指南之操作 mysql 資料庫JMeterMySql資料庫