TypeORM是一个开源的对象关系映射(ORM)框架,用于在Node.js和浏览器中与数据库进行交互。它支持多种数据库,包括MySQL、PostgreSQL、SQLite、Microsoft SQL Server等。
在TypeORM中,可以使用实体(Entity)来定义数据库中的表结构和模型。实体是一个普通的JavaScript/TypeScript类,使用装饰器来标记其属性和关系。以下是在列类型中使用实体的示例:
npm install typeorm
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
@Entity()
export class User {
@PrimaryGeneratedColumn()
id: number;
@Column()
name: string;
@Column()
age: number;
}
在上面的示例中,我们定义了一个名为User的实体类,它具有id、name和age三个属性。@Entity装饰器用于将该类标记为一个实体,@Column装饰器用于定义属性对应的数据库列。
import { createConnection, getRepository } from 'typeorm';
// 创建数据库连接
createConnection()
.then(async (connection) => {
// 获取User实体的存储库
const userRepository = getRepository(User);
// 创建一个新的用户
const user = new User();
user.name = 'John Doe';
user.age = 25;
// 将用户保存到数据库
await userRepository.save(user);
// 查询所有用户
const users = await userRepository.find();
console.log(users);
})
.catch((error) => console.log(error));
在上面的示例中,我们首先创建了一个数据库连接,然后通过getRepository方法获取User实体的存储库。接下来,我们创建了一个新的用户对象,并将其保存到数据库中。最后,我们使用存储库的find方法查询所有用户,并将结果打印到控制台。
这只是TypeORM的基本用法示例,TypeORM还提供了许多其他功能,如关系映射、查询构建器、事务管理等。您可以参考TypeORM的官方文档(https://typeorm.io/)了解更多详细信息。
腾讯云相关产品:腾讯云数据库(https://cloud.tencent.com/product/cdb)、腾讯云云服务器(https://cloud.tencent.com/product/cvm)、腾讯云云原生应用引擎(https://cloud.tencent.com/product/tke)。
领取专属 10元无门槛券
手把手带您无忧上云