在使用节点开发项目的过程中,不可避免地使用模型来映射数据库中的表面结构和字段。
这意味着什么?
我们知道数据库中的表只能通过SQL语句访问,例如在用户表中查找命名用户名的用户:
在节点项目中,当我们需要在数据库中执行附加的删除和修改操作时,无非就是SQL语句通过网络发送附加和删除的修改检查。
这样做会带来一些问题
此外,以这种方式编写的代码也相对较低,这可能与程序员的思考不符。
因此社区有ORM。
有些人可能会认为数据表和我们页面中常用的表表有什么区别?
以下是网站的数据表
如果表上的数据放在前端页面上,则可能是这样:
如果数据库,删除,删除和操作的操作可能与操作普通JavaScript数组相同,那么它的效果如何?
因此,生成了ORM(对象相关映射)技术,并将数据库中的表结构映射为对象。如果要操作数据库,则只需要直接操作映射对象。
那么,如何将数据库中的表作为代码中的对象映射?
这将使用ORM框架。
有时,我们的数据库已建立,并且尚未建立代码中的相应模型(以下称为模型)。有什么方法可以通过建立优质的桌子来生成模型?
我们在此处选择ORM Framework。它是一个基于承诺的节点ORM框架,该框架支持各种数据库,例如Postgres,MySQL,Mariadb,Sqlite。
我们必须执行的步骤如下,
-h,-HOST数据库的IP地址[必需]
-d, - 数据库数据库名称[必需]
-u, - 用户用户名
-X, - 通密码
-P, - 端口端口
-c, - config配置文件[需要JSON文件]
-o, - eTput目标文件夹
-t,-tables数据表名称
-e,-dialect您正在使用的方言/引擎:Postgres,mysql,sqlite
假设我有以下开发环境
例如UserLogs模型
执行上述语句,您可以看到模型文件夹中生成的文件。
如果数据库有很多表,则有UserLogs以及用户,白名单,黑名单
我想一次生成所有表模型
您可以在模型文件夹中看到许多文件
例如:查询用户表中的所有用户
请查看其他情况
示例:https://www.npmjs.com/package/egg- sequelize-自动
代码yun:https://gitee.com/eosgravity/egg- sequelize-自动