sql-create-table-statement-analyzer
v1.0.1
Published
extract column detail from sql create table statements
Maintainers
Readme
SQL Create Table Statement Analyzer
extract column detail from SQL create table statements
从SQL建表语句中提取出字段信息
Getting Started
npm
npm install sql-create-table-statement-analyzer --saveimport
import { getTables } from 'sql-create-table-statement-analyzer'Basic Usage
import { getTables } from 'sql-create-table-statement-analyzer'
const sql = "\
CREATE TABLE `article` (\
`id` int NOT NULL AUTO_INCREMENT,\
`space_id` int NOT NULL,\
`node_id` int NOT NULL COMMENT '节点id',\
`type` int NOT NULL COMMENT '文章类型: 1.富文本 2.markdown 3.附件',\
`title` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '标题',\
`body` mediumtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '内容',\
`search` mediumtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '搜索',\
`level` int unsigned NOT NULL DEFAULT '0' COMMENT '级别',\
`ext` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '扩展字段',\
`author` int NOT NULL COMMENT '作者uid',\
`version` varchar(20) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL COMMENT '版本号',\
`pos` int NOT NULL COMMENT '排序',\
`ctime` timestamp NOT NULL DEFAULT '1970-01-01 00:00:01' COMMENT '创建时间',\
`stime` timestamp NOT NULL COMMENT '保存时间',\
`mtime` timestamp NOT NULL DEFAULT '1970-01-01 00:00:01' COMMENT '最后写入时间',\
`deleted` tinyint(1) NOT NULL DEFAULT '0' COMMENT '删除状态: 0未删除 1已删除',\
PRIMARY KEY (`id`),\
KEY `space_id_tree_id_node_id` (`space_id`,`node_id`)\
) ENGINE=InnoDB AUTO_INCREMENT=230 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;\
"
tables = getTables(sql)
console.log(tables)Dependencies
开始使用
npm
npm install sql-create-table-statement-analyzer --save引入
import { getTables } from 'sql-create-table-statement-analyzer'基本用法
import { getTables } from 'sql-create-table-statement-analyzer'
const sql = "\
CREATE TABLE `article` (\
`id` int NOT NULL AUTO_INCREMENT,\
`space_id` int NOT NULL,\
`node_id` int NOT NULL COMMENT '节点id',\
`type` int NOT NULL COMMENT '文章类型: 1.富文本 2.markdown 3.附件',\
`title` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '标题',\
`body` mediumtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '内容',\
`search` mediumtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '搜索',\
`level` int unsigned NOT NULL DEFAULT '0' COMMENT '级别',\
`ext` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '扩展字段',\
`author` int NOT NULL COMMENT '作者uid',\
`version` varchar(20) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL COMMENT '版本号',\
`pos` int NOT NULL COMMENT '排序',\
`ctime` timestamp NOT NULL DEFAULT '1970-01-01 00:00:01' COMMENT '创建时间',\
`stime` timestamp NOT NULL COMMENT '保存时间',\
`mtime` timestamp NOT NULL DEFAULT '1970-01-01 00:00:01' COMMENT '最后写入时间',\
`deleted` tinyint(1) NOT NULL DEFAULT '0' COMMENT '删除状态: 0未删除 1已删除',\
PRIMARY KEY (`id`),\
KEY `space_id_tree_id_node_id` (`space_id`,`node_id`)\
) ENGINE=InnoDB AUTO_INCREMENT=230 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;\
"
tables = getTables(sql)
console.log(tables)