ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、视频、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 安装、配置 [MySQL数据库安装配置](https://www.cnblogs.com/SamWeb/p/7922490.html) ## 可视化工具 [Navicat for MySQL](https://download.csdn.net/download/num8ber/9722576) ## Sequelize ## 自动生成Sequelize模型 ### sequelize-auto安装及依赖模块 sequelize-auto会以命令行的形式自动生成SequelizeJS的模型Model。 要以命令行的形式使用需要全局安装模块: ~~~ npm install -g sequelize-auto ~~~ 依赖模块 使用sequelize-auto前,还需要全局安装一个你所使用的数据库驱动。 如果使用MySQL/MariaDB,需要安装mysql: ~~~ npm install -g mysql ~~~ ### 使用命令 全局安装sequelize-auto安装及依赖模块后,就可使用该模块生成模型了。语法结构如下: ~~~ sequelize-auto -h -d -u -x [password] -p [port] --dialect [dialect] -c [/path/to/config] -o [/path/to/models] -t [tableName] ~~~ 在以上参数中,除-h、-d参数外,其它参数都是可选的。各参数选项说明如下: * -h, --host - 数据库的IP/主机名 [必选] * -d, --database - 数据库名 [必选] * -u, --user - 数据库的用户名。默认将根据数据库类型的默认用户生成数据库名 * -x, --pass - 数据库的密码。默认为空 * -p, --port - 数据库连接端口。默认为所使用数据库类型的默认端口号 * -c, --config - JSON文件,用于Sequelize构造函数的'options'选项对象。参见:http://itbilu.com/nodejs/npm/VkYIaRPz-.html#api-init * -o, --output - 模型输出目录。默认会在当前目录下生成'./models'目录 * -e, --dialect - 所使用的数据库类型(驱动类型)。默认为mysql * -a, --additional - 一个包含模型定义参数的JSON文件。参见:http://itbilu.com/nodejs/npm/VkYIaRPz-.html#api-instance-define * -t, --tables - 指定所要导出的表,逗号分隔。默认为全部 ### 使用示例 ~~~ sequelize-auto -o "./models" -d todolist -h localhost -u root -p 3306 -x xxxxxxx ~~~ 在这个示例中,通过-o参数提定了输出目录,-d参数指定了数据库名,-h参数指定了数据库主机,-u参数指定了数据库用户名,-p参数指定了数据库访问端口,-x参数指定了数据库密码。其生成的模型文件会保存在./models目录下,在这个示例中会存在一个users.js模型,结构如下: 模型导出后,可以很简单通过sequelize.import方法将其导入。但在使用时也应该注意,导出时模型名与表名是一致的(如:上例中的User),而Model在Sequelize中是以类的方式提供的(“类”通常使用首字母大写的命名方式),而在数据库中表命名往往不一致。这样我们还需要对导出的模型做一定处理,但这已经节约了我们很大一部分工作量,我们已经不需要手工指定字段类型及处理表间关系等。