-TypeORM入门指南
一.安装
使用官方提供的CLI命令搭建项目
首先全局安装 TypeORM:
npm install typeorm -g
创建项目
typeorm init --name [MyProject] --database [mysql]
其中[MyProject] 为项目的名字,[mysql]为你将使用的数据库,可自行根据选择修改
database可配置的选项有mysql, mariadb, postgres, sqlite, mssql, oracle, mongodb, cordova, react-native, expo, nativescript。执行下面指令创建项目
typeorm init --name ormStudy --database mysql
此时项目结构
1 | go复制代码ormStudy |
安装依赖项
cd ormStudy
npm i
使用MySQL创建orm_test的数据库
CREATE SCHEMA
orm_test;
编辑ormconfig.json为自己的数据库链接
1 | json复制代码{ |
二.创建一个实体
创建一个实体首先需要创建一个模型,也就是数据库中的表,这里使用官方文档的案例模型Photo
1 | javascript复制代码export class Photo { |
在数据库中,把每一类数据对象的个体称为实体。在typeorm中,实体是由@Entitiy装饰器装饰的模型
以Photo模型数据对象作为一个实体
简单介绍下下面使用到的装饰器
- @Entity 装饰为一个实体
- @Column 装饰为数据库列
- @PrimaryGeneratedColumn 可使id列自动生成
在src/entity下创建Photo.ts并写入
1 | ts复制代码import { Entity, Column, PrimaryGeneratedColumn } from "typeorm"; |
此时我们启动项目
npm start
打开MySQL查询此表
创建成功
三.创建数据库连接
1.增
创建实体后,将src/index.ts的内容更改为下面ts代码后,再次启动此项目
1 | ts复制代码import "reflect-metadata"; |
启动此项目
npm start
查看photo表,发现上面代码中photo对象的所有属性已经对应关系写入表中
2.查
将index.ts中被注释的部分更改为以下代码
1 | ts复制代码/* |
再次启动观察终端输出,可以得到刚刚输入至数据库的内容
3.改
现在我们尝试使用Repository而不是EntityManager,并将index.ts中这一部分更改为如下代码。注释中有重构EntityManager的方法
1 | ts复制代码//增 |
实现将id为1的photo的name更改为”Me, my friends and polar bears”
4.删
将index.ts中被注释的部分更改为以下代码
1 | ts复制代码/* |
启动后,这个id=1的photo在数据库中被移除了
至此,我们通过TypeORM操作MySQL完成了简单的增删改查
本文转载自: 掘金