使用:
初始化
npm install excel2mysql
使用
只打印sql:
var excel2mysql = require('excel2mysql');
var excelPath = "./sample.xls";
var excelPath = "./sample.xls";
excel2mysql({
input: excelPath,
model: 'create'
}, function (err, sql, result) {
err && console.error(err);
sql && console.log(sql.sql);
});
链接mysql:
var excel2mysql = require('excel2mysql');
var excelPath = "./sample.xls";
excel2mysql({
input: excelPath,
model: 'create',
mysql: {
host: '127.0.0.1',
user: 'work',
password: 'work',
port: '3306',
database: 'test'
}
}, function (err, sql, result) {
err && console.error(err);
sql && console.log(sql.sql);
});
参数
- mysql: mysql的相关配置
- model: 模式
delete: 只是删除相关大表
update: 只会增加新的表,并将数据导入到新表中
create: 删除所有表,然后创建表再导入数据
- no_comment: true or false(默认), 如果为 ture, 生成的sql不出现注释
- ingnore_prefix:
-
(默认), 忽略带该前缀的字段
excel表格格式
配置要生成sql的表
1.png配置表和数据
2.png第3行的数据类型说明:
data type(row:3):[type],[pk,ai,nn,uq,(0)]...
(0) = default 0
ai = auto_increment
nn = not null
up = unique
pk = primary key
如果使用 ai
, 该列将不会导入数据
全局安装
npm install excel2mysql -g
作为命令行的使用方式
excel2mysql -o ./x.sql -i ./sample/sample.xls -S 100
命令行参数
$: excel2mysql --help
Options:
-i, --input=ARG excel文件的路径,必须
-o, --output=ARG sql导出路径或文件,非必须
--no-comment 生成的sql不出现注释
--show-sql 打印sql到控制台
-S =ARG 数字,打印sql到控制台,sql字符串长度小于这个数字
--ingnore-prefix=ARG 忽略带该前缀的字段
--help 显示帮助
-v, --version 显示版本
-m, --model=ARG 模式: create(默认), delete, update
-P, --port=ARG mysql:port 默认: 3306
-h, --host=ARG mysql:host 默认: 127.0.0.1
-p, --password=ARG mysql:password 默认: root
-u, --user=ARG mysql:username 默认: root
-d, --database=ARG mysql:database
网友评论