📅  最后修改于: 2023-12-03 15:05:39.151000             🧑  作者: Mango
TypeORM 是一个用于 TypeScript 和 JavaScript (ES5, ES6, ES7) 的面向对象的关系型数据库框架。它使得编写复杂的数据库查询和数据操作变得简单和方便。TypeORM 支持许多流行的关系型数据库,如 MySQL、PostgreSQL、SQLite、Oracle 和 Microsoft SQL Server。它还提供了查询构建器、实体映射、事务管理等强大的特性。
本文将向您介绍如何安装和配置 TypeORM,以便您可以开始使用它来管理数据库。
以下是在项目中安装和配置 TypeORM 的步骤。
在开始之前,首先需要在您的项目中安装 TypeORM。您可以使用 npm 或 yarn 进行安装。
使用 npm:
npm install typeorm --save
使用 yarn:
yarn add typeorm
一旦安装了 TypeORM,您需要配置它以连接到您使用的数据库。TypeORM 的配置文件通常是一个 ormconfig.json
文件或一个 ormconfig.ts
文件。您可以根据需要选择使用 JSON 或 TypeScript 来编写配置文件。
以下是一个示例 ormconfig.json
配置文件的内容:
{
"type": "mysql",
"host": "localhost",
"port": 3306,
"username": "root",
"password": "password",
"database": "mydatabase",
"synchronize": true,
"logging": true,
"entities": [
"src/entities/*.ts"
],
"migrations": [
"src/migrations/*.ts"
],
"subscribers": [
"src/subscribers/*.ts"
],
"cli": {
"entitiesDir": "src/entities",
"migrationsDir": "src/migrations",
"subscribersDir": "src/subscribers"
}
}
您需要根据您的数据库配置将上述内容进行修改。确保指定了正确的数据库类型、主机、端口、用户名、密码和数据库名称。
在使用 TypeORM 之前,您需要定义实体来映射数据库表。实体通常是一个类,其中的属性对应于数据库表中的列。以下是一个示例实体的定义:
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
@Entity()
export class User {
@PrimaryGeneratedColumn()
id: number;
@Column()
name: string;
@Column()
age: number;
}
创建所需的实体类后,您可以开始使用 TypeORM 进行数据库操作,如查询、插入、更新和删除等。
在您的应用程序中,您可以通过导入 TypeORM 并创建一个数据库连接来使用它。以下是一个示例:
import { createConnection } from 'typeorm';
import { User } from './entities/User';
createConnection()
.then(async connection => {
const userRepository = connection.getRepository(User);
// 查询所有用户
const users = await userRepository.find();
console.log('All users:', users);
// 创建新用户
const newUser = new User();
newUser.name = 'John Doe';
newUser.age = 30;
await userRepository.save(newUser);
console.log('New user has been saved.');
// 更新用户
const userToUpdate = await userRepository.findOne(1);
if (userToUpdate) {
userToUpdate.name = 'Updated Name';
await userRepository.save(userToUpdate);
console.log('User has been updated.');
}
// 删除用户
const userToDelete = await userRepository.findOne(2);
if (userToDelete) {
await userRepository.remove(userToDelete);
console.log('User has been deleted.');
}
})
.catch(error => console.log('Error:', error));
以上示例演示了查询所有用户、创建新用户、更新用户和删除用户的基本操作。您可以根据自己的需求进行更复杂的数据库操作。
通过按照上述步骤,您已经成功地安装和配置了 TypeORM,并可以开始在您的项目中使用它进行数据库操作。TypeORM 提供了许多强大的特性和功能,使得处理关系型数据库变得更加简单和便捷。开始使用 TypeORM 来管理数据库,并提高应用程序的效率和可维护性吧!
参考链接:TypeORM 官方文档