溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

python3怎么實(shí)現(xiàn)mysql導(dǎo)出excel

發(fā)布時(shí)間:2021-05-07 11:54:10 來源:億速云 閱讀:276 作者:小新 欄目:開發(fā)技術(shù)

這篇文章將為大家詳細(xì)講解有關(guān)python3怎么實(shí)現(xiàn)mysql導(dǎo)出excel,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

python的五大特點(diǎn)是什么

python的五大特點(diǎn):1.簡(jiǎn)單易學(xué),開發(fā)程序時(shí),專注的是解決問題,而不是搞明白語言本身。2.面向?qū)ο螅c其他主要的語言如C++和Java相比, Python以一種非常強(qiáng)大又簡(jiǎn)單的方式實(shí)現(xiàn)面向?qū)ο缶幊獭?.可移植性,Python程序無需修改就可以在各種平臺(tái)上運(yùn)行。4.解釋性,Python語言寫的程序不需要編譯成二進(jìn)制代碼,可以直接從源代碼運(yùn)行程序。5.開源,Python是 FLOSS(自由/開放源碼軟件)之一。

Mysql中'employee'表內(nèi)容如下:

python3怎么實(shí)現(xiàn)mysql導(dǎo)出excel

# __Desc__ = 從數(shù)據(jù)庫中導(dǎo)出數(shù)據(jù)到excel數(shù)據(jù)表中
import xlwt
import pymysql
class MYSQL:
  def __init__(self):
    pass
  def __del__(self):
    self._cursor.close()
    self._connect.close()
  def connectDB(self):
    """
    連接數(shù)據(jù)庫
    :return:
    """
    try:
      self._connect = pymysql.Connect(
        host='localhost',
        port=3306,
        user='root',
        passwd='123456',
        db='test',
        charset='utf8'
      )
      return 0
    except:
      return -1
  def export(self, table_name, output_path):
    self._cursor = self._connect.cursor()
    count = self._cursor.execute('select * from '+table_name)
    # print(self._cursor.lastrowid)
    print(count)
    # 重置游標(biāo)的位置
    self._cursor.scroll(0, mode='absolute')
    # 搜取所有結(jié)果
    results = self._cursor.fetchall()
    # 獲取MYSQL里面的數(shù)據(jù)字段名稱
    fields = self._cursor.description
    workbook = xlwt.Workbook()
    # 注意: 在add_sheet時(shí), 置參數(shù)cell_overwrite_ok=True, 可以覆蓋原單元格中數(shù)據(jù)。
    # cell_overwrite_ok默認(rèn)為False, 覆蓋的話, 會(huì)拋出異常.
    sheet = workbook.add_sheet('table_'+table_name, cell_overwrite_ok=True)
    # 寫上字段信息
    for field in range(0, len(fields)):
      sheet.write(0, field, fields[field][0])
    # 獲取并寫入數(shù)據(jù)段信息
    row = 1
    col = 0
    for row in range(1,len(results)+1):
      for col in range(0, len(fields)):
        sheet.write(row, col, u'%s' % results[row-1][col])
    workbook.save(output_path)
if __name__ == '__main__':
  mysql = MYSQL()
  flag = mysql.connectDB()
  if flag == -1:
    print('數(shù)據(jù)庫連接失敗')
  else:
    print('數(shù)據(jù)庫連接成功')
    mysql.export('employee', 'E:/test_input.xls')

執(zhí)行結(jié)果如下:

python3怎么實(shí)現(xiàn)mysql導(dǎo)出excel

關(guān)于“python3怎么實(shí)現(xiàn)mysql導(dǎo)出excel”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI