博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用shell脚本生成数据库markdown文档
阅读量:5699 次
发布时间:2019-06-17

本文共 1903 字,大约阅读时间需要 6 分钟。

学习shell脚本编程的一次实践,通过shell脚本生成数据库的markdown文档,代码如下:

HOST=xxxxxx PORT=xxxx USER="xxxxx" PASSWORD="xxxxxx" DATABASE_PREFIX="xxxxxx"   QUERY_DATABASE="select distinct TABLE_SCHEMA from information_schema.TABLES where TABLE_TYPE='BASE TABLE'" databaseList=$(mysql -h ${HOST} -u ${USER} -p${PASSWORD} -e "${QUERY_DATABASE}") for database in ${databaseList} do     if [[ ${database} == *${DATABASE_PREFIX}* ]]     then         echo "Start ${database}"         echo "### ${database}" >> test.md         queryTable="select  distinct TABLE_NAME from information_schema.COLUMNS where TABLE_SCHEMA='${database}'"         tableList=$(mysql -h ${HOST} -u ${USER} -p${PASSWORD} -N -e "${queryTable}")         for table in ${tableList}         do                             if [ $(grep -c "#### ${table%_*}_0" test.md) -ne '0' ]              then                 continue             fi                          echo "Start print table:${table}"             echo "#### ${table}" >> test.md             echo "名称 | 类型 | 是否可为空 | Key | 说明" >> test.md             echo "--|--|--|--|--" >> test.md             queryCloumns="select COLUMN_NAME, replace(COLUMN_TYPE,' ',''),IS_NULLABLE,CONCAT(COLUMN_KEY,'+++++++++'),CONCAT(replace(COLUMN_COMMENT,' ',''),'+++++++++') from information_schema.COLUMNS where TABLE_NAME='${table}' and TABLE_SCHEMA='${database}' order by ORDINAL_POSITION"             columnList=$(mysql -h ${HOST} -u ${USER} -p${PASSWORD} -N -e "${queryCloumns}")             count=0             row=""              for column in ${columnList}              do                  row="${row} ${column} | "                  let count++                  if [[ ${count} == 5 ]]                  then                      echo ${row} >> test.md                      count=0                      row=""                  fi              done          done       fi  done

转载于:https://www.cnblogs.com/vitasyuan/p/9650643.html

你可能感兴趣的文章
Feature List
查看>>
设计模式总结
查看>>
py 5.31
查看>>
MATLAB机器人系统工具箱入门-小车
查看>>
Day 4 变量常量
查看>>
PHP模拟POST请求,获取response内容
查看>>
-----npm与yarn------
查看>>
木其工作室代写程序 [原]Oracle常用sql语法
查看>>
NYOJ-102 次方求模 AC 分类: NYOJ ...
查看>>
Unity连Photon服务器入门详解
查看>>
去除手机拨号
查看>>
《构建之法》1、2、3章思考与感想
查看>>
golang:模拟http post请求
查看>>
JS Math()函数
查看>>
js中var、let、const区别
查看>>
如何通过新浪微博和QQ空间获取精准客户
查看>>
将博客搬至CSDN
查看>>
POJ 2965, The Pilots Brothers' refrigerator
查看>>
IOS内存管理
查看>>
团队第二次作业
查看>>