python模块win32com 实现数据库表结构自动生成word表格

原创 2016年08月29日 13:56:46

下载win32模块

下载链接

连接mysql

import MySQLdb
db_host = ""
db_port = 3306
db_name = ""
db_user = ""
db_pwd = ""
db = MySQLdb.connect(host=db_host,port=db_port,user=db_user,passwd=db_pwd,db=db_name,charset="utf8")
cursor = db.cursor()

获取所有表结构

#获取表数据库中所有表和备注
def get_tables(cursor,db_name):
    sql = "select table_name,table_comment from information_schema.tables where table_schema = '" + db_name + "'"
    cursor.execute(sql)
    result = cursor.fetchall()
    tables = {}
    for r in result:
        tables[r[0]] = r[1]
    return tables
#获取表结构
def get_table_desc(cursor,db_name,table_name):
    sql = "select column_name,column_type,column_default,is_nullable,column_comment from information_schema.columns where table_schema = '" + db_name + "' and table_name = '" + table_name + "'" 
    cursor.execute(sql)
    result = cursor.fetchall()
    return result

win32com操作

from win32com.client import Dispatch,constants
word = Dispatch('Word.Application')
word.Visible = 1  #是否在后台运行word
word.DisplayAlerts = 0 #是否显示警告信息
doc = word.Documents.Add() #新增一个文档
r = doc.Range(0,0) #获取一个范围
r.Style.Font.Name = u"Verdana" #设置字体
r.Style.Font.Size = "9" #设置字体大小
r.InsertBefore("\n" + 表描述 + " " + 表名)  #在这个范围前插入文本
table = r.Tables.Add(doc.Range(r.End,r.End),字段数+1,5)  #建一张表格
table.Rows[0].Cells[0].Range.Text = u"列"
table.Rows[0].Cells[1].Range.Text = u"类型"
table.Rows[0].Cells[2].Range.Text = u"默认值"
table.Rows[0].Cells[3].Range.Text = u"是否为空"
table.Rows[0].Cells[4].Range.Text = u"列备注"

完整代码

github地址

版权声明:本文为博主原创文章,未经博主允许不得转载。

利用python-docx更新word中的表格内容

利用python-docx更新word中的表格内容 December 06, 2016 收到实验组小妹妹一个需求, 希望把一个巨大word文档中所有表格里的所有一位小数随机添加一位数变...
  • g0ose
  • g0ose
  • 2017年03月21日 22:03
  • 3561

用python处理MS Word

使用python工具读写MS Word文件(docx与doc文件),主要利用了python-docx包。本文给出一些常用的操作,并完成一个样例,帮助大家快速入手。...
  • qianchenglenger
  • qianchenglenger
  • 2016年06月03日 22:04
  • 20018

python---word表格样式设置

1、word表格样式的设置 from docx import * document = Document() table = document.add_table(3, 3, style="Medi...
  • ibiao
  • ibiao
  • 2017年11月21日 18:03
  • 487

Python3.4对Excel和Word的操作----win32com

在python的应用过程中,有时候需要有一些记录输出,表格和文档是比较实用、大众和清晰的工具 工具: Python3.4 win32com模块 以下贴代码#-*- encoding: ...
  • u011122229
  • u011122229
  • 2015年10月20日 18:51
  • 4453

Python通过win32实现office自动化 - Word

Python通过win32 com接口实现offic自动化小结 最近几天通过Python做一些自动生成office报表的东东,比如解析.xml文件,导出.html/WORD/PPT等格式,html不...
  • lzl001
  • lzl001
  • 2012年12月25日 20:38
  • 10536

python处理word文件:win32com用法详解

  • 2011年12月01日 20:53
  • 361KB
  • 下载

Python实现mysql数据输出到word表格中(源码)

# -*- coding: utf-8 -*-  import os,sys,win32com import MySQLdb,datetime import win32com.client ...
  • wander1006
  • wander1006
  • 2016年10月20日 15:04
  • 705

Python ORACLE查询内容输出到WORD表格

  • 2009年04月09日 14:48
  • 5KB
  • 下载

Python学习笔记(29)-Python创建并写入word文档

一,简介上一篇已经介绍了python-docx模块的安装和导入,本篇直接介绍如何创建并写入word文档,需要注意的是:创建word并写入之后,操作的都是内存中的对象,最后需要保存到文件,才能看到真实的...
  • woshisangsang
  • woshisangsang
  • 2017年07月18日 14:45
  • 1586

python解析html提取数据,并生成word文档

今天试着用ptyhon抓取一下网页上的
  • how8586
  • how8586
  • 2014年09月19日 17:20
  • 11675
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:python模块win32com 实现数据库表结构自动生成word表格
举报原因:
原因补充:

(最多只允许输入30个字)