在EditPlus中使用正则表达式
工作中遇到这样的情景:将数据库中表的列名、字段类型、字段长度、字段注释整理到word的表格中,若使用的数据库不是常用的Mysql等数据库则不能直接通过工具导出成想要的格式,这时我选择使用这样的方式:
1、将数据库中表的DDL语句复制出来粘贴到EditPlus中,如下图:
2、Ctrl+H将双引号,逗号 都替换为空字符串---> 即将双引号、逗号都删掉,使用【"|,】匹配
3、将每行开头的空字符串删掉使用【^ +】匹配。
4、将字段类型和长度到COMMENT之间的部分删掉,使用【\).*COMMENT】匹配,替换为【) COMMENT】。
5、将其他特殊的几种单独删掉,类似于如下图中的时间类型的字段。
6、将【 COMMENT】删掉
7、将空格替换为制表符
8、将注释中个别的误将空格替换为制表符的手动改回空格
9、将处理完的文本全选然后粘贴到Excel中,Excel会自动根据制表符分列。
10、将excel中的选中部分复制到Word相应的表格中就行,然后再整理格式。
其实还有更简单的方法,就是查询数据库的元信息,直接将这些信息查询出来然后直接复制出来放到Excel中即可,如:
SELECT
COLUMN_NAME 列名,
COLUMN_TYPE 数据类型,
DATA_TYPE 字段类型,
CHARACTER_MAXIMUM_LENGTH 长度,
IS_NULLABLE 是否为空,
COLUMN_DEFAULT 默认值,
COLUMN_COMMENT 备注
FROM
INFORMATION_SCHEMA. COLUMNS
WHERE
table_schema = '数据库名'
AND
table_name = '表名';
这样关于表的列名、数据类型、注释信息就都查询出来了,不用麻烦地进行上面10步操作了。