mysql_markdown
mysql_markdown 基于 go 语言编写的一个命令行工具,适用于 Linux、Mac、Windows 等平台,根据数据库表快速生成 markdown 说明文档
最终导出效果:
转换 markdown 文档
markdown 转 docs 文档
mysql_markdown 可执行文件已上传到 CDN,直接下载即可:
也可以直接 clone 项目下来,执行 build 生成可执行文件,不过需要 go 环境
git clone https://github.com/alicfeng/mysql_markdown.git
cd mysql_markdown
go get "github.com/go-sql-driver/mysql"
go build
github 地址: mysql_markdown
生成 markdown 文档
- 切换到 mysql_markdown.exe 所在目录
cd mysql-markdown
- 执行导出
- -h: host
- -P: 端口
- -u: 用户名
- -p: 密码
- -d: 数据库名
- -t: 数据表名
导出整个 ry 数据库
./mysql_markdown -h localhost -P 3306 -u root -p root -d ry
导出 ry 数据库 的 sys_user
./mysql_markdown -h localhost -P 3306 -u root -p root -d ry -t sys_user
生成 docs 文档
- 新建
template.html模板并设置样式
<!-- template.html -->
<style>
*,
body {
margin: 0;
}
table {
border-collapse: collapse;
}
th,
td {
border: 1px solid #000000;
padding: 5px;
}
</style>
<body>
replace_area
</body>
- 新建
app.js
// app.js
const fs = require("fs");
const { marked } = require("marked");
const templateFile = fs.readFileSync("template.html"); // html模板,定义表格样式扥
const mdFile = fs.readFileSync("ry_20221218_015837.md"); // 读取 md 文件
console.log("----正在转换...");
const mdStr = mdFile.toString();
const mdToHtmlStr = marked(mdStr);
const content = templateFile.toString().replace("replace_area", mdToHtmlStr);
console.log("准备写入文件");
fs.writeFile("output.doc", content, (err) => {
if (err) {
console.error(err);
}
console.log("数据写入成功!");
});
- 安装依赖
新建 package.json 文件
{
"name": "mysql_markdown",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"fs": "0.0.1-security",
"marked": "^4.2.4"
}
}
安装依赖
npm i
- 执行
app.js
node app.js