{"text_format":"1","workbook":"xlsx","n_sheets":3,"sheets":["设置","索引","数据结构"],"not_rendered":{"charts":0,"images":0,"macros":1,"external_links":0,"defined_names":0,"comments":0,"pivot_tables":0},"unopened":[],"bounds":{"document_bytes":16777216,"sheet_cells":100000,"rows_first":2000,"rows_last":500,"rows_between":2000,"halvings":0,"cell_chars":16384,"cell_head_chars":4096},"cells_cut":0,"cells_raw":0,"read":"whole","date_system":"1900"}

{"sheet":"设置","index":0,"n_rows":57,"n_cols":8,"rows_kept":57,"cut":false,"hidden":false,"merged":[]}
["说明","基于Navicat for MySQL(11.0.9-企业版)抽出的数据库结构（mysqldump命令导出结构也支持），使用前需要导出结构文件。"]
[null,"增加对Navicat Premium 12.1.25的支持",null,null,null,null,null,"比如：mysqldump -uroot -p --no-data dbname > test.sql"]
[null,"表头使用的是【desc 表名】除去【Extra】列并追加【Comment】、【COLLATE】列。"]
[null,"关于【Key】的判断：只要是主键就表示PRI。只要是单列唯一索引就表示UNI。多列组合唯一索引第一列，非唯一索引第一列表示MUL。唯一索引的非第一行，不表示。"]
[null,"输出为两个Sheet页并另存为Excel文件，目录为当前工具目录，命名为 数据库名+数据结构yyyymmddhhmmss.xlsx"]
[null,"只针对表操作，其他数据库对象忽略。"]
[null,"测试数据有限，有问题希望反馈。代码部分未加密（加密也能破），不过未做优化，欢迎阅读。"]
[]
[]
["操作"]
[null,null,null,null,null,null,"反向输出"]
[null,null,null,null,null,null,"sql"]
[null,null,null,null,null,null,"点击 生成sql ，打开对话框，选择要生成的excel文件。在当前工具目录生成create.sql文件（勾选生成简单CRUD语句，会多生成增删改查sql文件CRUD.sql）"]
[null,null,null,null,null,null,"Excel的格式要固定，只能读取xls和xlsx文件，必须有【数据结构】Sheet页，格式参考生成的结构文档"]
[null,null,null,null,null,null,"默认不生成DROP TABLE IF EXISTS语句，如需要请勾选。"]
[]
[]
[]
[]
["更新履历"]
["2018-07-06","V1.0.0","发布"]
["2018-10-12","V1.1.0","读取优化：sql文件无需转码成ANSI"]
[null,null,"命名优化：文件命名更改：数据库名 + 数据结构yyyymmddhhmmss.xlsx"]
[null,null,"数据优化：【Default】，空白和NULL以空白表示。→空白和NULL分别表示。"]
["2019-03-19","V1.2.0","查找优化：添加索引页"]
[null,null,"保存优化：新建Excel多余sheet页删除优化（只删除sheet1→无用sheet页全部删除，10版本以前对应）"]
["2019-04-23","V1.2.1","换行：增加Unix系统(包括Linux, MacOS等）\\n换行的支持（\\r\\n无效时）"]
[null,null,"KEY读取：索引字段长度过长时，指定长度会出错的bug修改:KEY `ix_name` (`name`(255)),"]
[null,null,"数据库名读取：对表头不固定的文件支持（增加对Navicat Premium的Source Schema支持 TODO只有一个测试文件，导出版本未知，格式可能需要更改）"]
["2019-08-07","V1.3.0","数据优化：增加【COLLATE】列，用于大小写敏感判断。"]
[null,null,"边框设定范围bug修改"]
[null,"V1.3.1","显示表排序规则：表没有collate有字符集时设置为：[default:]+[CHARSET字符集]+[_general_ci]，即为默认字符类型的排序规则"]
[null,null,"               列没有collate有字符集时设置为：[default:]+[CHARACTER SET字符集]+[_general_ci]，即为默认字符类型的排序规则"]
["2019-08-26",null,"索引页面表头缺失的劣化bug修改"]
["2019-08-27","V1.4.0","当列为表最后一列时注释缺失bug修改，注释中包含[,]时导致注释错误bug修改"]
[null,null,"增加反向输出sql功能（受生成文档影响，只能还原部分sql），根据选中的Excel生成create table sql"]
[null,null,"无法生成一览"]
[null,null,"没有设置各种键值（主键，唯一，外键，索引等）"]
[null,null,"引擎默认InnoDB"]
[null,null,"DEFAULT CURRENT_TIMESTAMP时，不自动更新（ON UPDATE CURRENT_TIMESTAMP）"]
[null,null,"ROW_FORMAT未设定"]
[null,null,"unsigned zerofill未设定"]
[null,null,"AUTO_INCREMENT未设定"]
[null,null,"列有设定CHARACTER SET的，未设定"]
[null,null,"等等……（只设置了基础的一些属性）"]
["2019-10-15",null,"bug修改：当表只有一列并且无注释时，注释数组下标越界问题修改"]
["2019-10-16","V1.4.1","负优化，表结构文档生成增加进度条"]
[null,null,"反向输出sql增加是否生成DROP TABLE IF EXISTS语句的选项"]
["2019-10-17","V1.4.2","反向输出sql增加是否生成简单CRUD语句的选项"]
[null,null,"反向输出sql增加进度条"]
["2019-10-28","V1.4.3","数据库名读取：对mysqldump命令导出的文件支持（版本MySQL dump 10.13  Distrib 5.7.15, for Win64 (x86_64)）"]
[null,null,"生成表结构增加去除activiti和flowable流程自动生成表（以act_开头的表）选项"]
["2020-01-18","V1.4.4","增加对列键值（KEY，PRIMARY KEY）是MySql8.0的降序索引的支持"]
[null,null,"由读取excel单元格路径改为手动选择文件，修改设置页面样式"]
[null,null,"去除mysqldump(MySQL dump 10.13)导出CREATE TABLE包含的IF NOT EXISTS"]
[null,null,"表COLLATE读取优化"]
["2020-01-19","V1.5.0","增加对Navicat Premium 12.1.25的支持"]

{"sheet":"索引","index":1,"n_rows":0,"n_cols":0,"rows_kept":0,"cut":false,"hidden":false,"merged":[]}

{"sheet":"数据结构","index":2,"n_rows":0,"n_cols":0,"rows_kept":0,"cut":false,"hidden":false,"merged":[]}