重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
這期內容當中小編將會給大家帶來有關python中怎么利用 MySQLdb類庫操作數據庫,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
公司主營業務:成都做網站、網站建設、移動網站開發等業務。幫助企業客戶真正實現互聯網宣傳,提高企業的競爭能力。成都創新互聯公司是一支青春激揚、勤奮敬業、活力青春激揚、勤奮敬業、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰,讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。成都創新互聯公司推出大東免費做網站回饋大家。
1.安裝MySQLdb
pip install MySQLdb
2.代碼
import MySQLdb
class MysqlSearch(object):
def __init__(self):
self.get_conn()
def get_conn(self):
try:
self.conn = MySQLdb.connect(
host='127.0.0.1',
user='root',
passwd='root',
db='test',
port=3308,
charset='utf8'
)
except MySQLdb.Error as e:
print('Error: %s' % e)
def close_conn(self):
try:
if self.conn:
# 關閉鏈接
self.conn.close()
except MySQLdb.Error as e:
print('Error: %s' % e)
def get_one(self):
# 準備SQL
sql = 'SELECT * FROM `news` WHERE `types` = %s ORDER BY `created_at` DESC;'
# 找到cursor
cursor = self.conn.cursor()
# 執行SQL
cursor.execute(sql, ('百家', ))
# print(dir(cursor))
# 拿到結果
rest = dict(zip([k[0] for k in cursor.description], cursor.fetchone()))
# 處理數據
# 關閉cursor/鏈接
cursor.close()
self.close_conn()
return rest
def get_more(self):
# 準備SQL
sql = 'SELECT * FROM `news` WHERE `types` = %s ORDER BY `created_at` DESC;'
# 找到cursor
cursor = self.conn.cursor()
# 執行SQL
cursor.execute(sql, ('百家', ))
# print(dir(cursor))
# 拿到結果
rest = [dict(zip([k[0] for k in cursor.description], row))
for row in cursor.fetchall()]
# 處理數據
# 關閉cursor/鏈接
cursor.close()
self.close_conn()
return rest
def get_more_by_page(self, page, page_size):
''' 分頁查詢數據 '''
offset = (page - 1) * page_size
# 準備SQL
sql = 'SELECT * FROM `news` WHERE `types` = %s ORDER BY `created_at` DESC LIMIT %s, %s;'
# 找到cursor
cursor = self.conn.cursor()
# 執行SQL
cursor.execute(sql, ('百家', offset, page_size))
# print(dir(cursor))
# 拿到結果
rest = [dict(zip([k[0] for k in cursor.description], row))
for row in cursor.fetchall()]
# 處理數據
# 關閉cursor/鏈接
cursor.close()
self.close_conn()
return rest
def add_one(self):
''' 插入數據 '''
# 受影響的行數
row_count = 0
try:
# 準備SQL
sql = (
"INSERT INTO `news`(`title`,`image`, `content`, `types`, `is_valid`) VALUE"
"(%s, %s, %s, %s, %s);"
)
# 獲取鏈接和cursor
cursor = self.conn.cursor()
# 執行sql
# 提交數據到數據庫
cursor.execute(sql, ('標題11', '/static/img/news/01.png', '新聞內容5', '推薦', 1))
# cursor.execute(sql, ('標題12', '/static/img/news/01.png', '新聞內容6', '推薦', 1))
# 提交事務
self.conn.commit()
except :
print('error')
# 回滾事務
self.conn.rollback()
# 執行最后一條SQL影響的行數
row_count = cursor.rowcount
# 關閉cursor和鏈接
cursor.close()
self.close_conn()
# row_count > 0 表示成功
return row_count > 0
def main():
obj = MysqlSearch()
# rest = obj.get_one()
# print(rest['title'])
# rest = obj.get_more()
# for item in rest:
# print(item)
# print('------')
# rest = obj.get_more_by_page(2, 3)
# for item in rest:
# print(item)
# print('------')
rest = obj.add_one()
print(rest)
if __name__ == '__main__':
main()
上述就是小編為大家分享的python中怎么利用 mysqldb類庫操作數據庫了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注創新互聯行業資訊頻道。