有没有库能定义个模型然后生成建表语句
有没有库能定义个模型然后生成建表语句? 不需要连接数据库, 我想做一个快速生成建表语句的工具。 有没有这方面的库推荐一下?
1 回复
去sequelizejs 的测试代码看到了隐藏功能。api文档里没写到的
var Sequelize = require('sequelize');
// 因为没有连接到数据库, 用户名什么的可以随意写
var sequelize = new Sequelize('test', 'root', 'root', {
dialect: "mysql"
});
var User = sequelize.define('User', {
username: Sequelize.STRING,
password: Sequelize.STRING
});
var sql = sequelize.dialect.QueryGenerator;
var ddlsql = sql.createTableQuery(User.getTableName(), sql.attributesToSQL(User.rawAttributes), { });
console.log(ddlsql);
$ node test.js
CREATE TABLE IF NOT EXISTS `Users` (`id` INTEGER NOT NULL auto_increment , `username` VARCHAR(255), `password` VARCHAR
(255), `createdAt` DATETIME NOT NULL, `updatedAt` DATETIME NOT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB;