TypeORM:如何连接多个数据库

在 TypeORM 中,您只需创建多个数据源即可简单地同时连接到多个数据库。

步骤

  1. 设置您的数据源:
xport const dataSourceOne = new DataSource({
  database: 'kindacode_example',
  entities: [User, Post, Comment],
  type: 'postgres',
  port: 5432,
  host: 'localhost',
  username: 'snowball',
  password: '123456',
  synchronize: true,
});

export const dataSourceTwo = new DataSource({
  database: 'other_db',
  entities: [Product, Order],
  type: 'postgres',
  port: 5432,
  host: 'localhost',
  username: 'badman',
  password: 'supersecret',
  synchronize: true,
});

2.下一步是初始化连接(通常放在你项目的入口文件,如app.js、index.js、server.js等):

import { dataSourceOne } from '...';
import { dataSourceTwo } from '...';

/* Put these lines in an async function */
await dataSourceOne.initialize();
await dataSourceTwo.initialize();

3.您可以通过以下方式与数据库进行通信:

import { dataSourceOne } from '...';
import { dataSourceTwo } from '...';

/* Place these code lines in an async function */
const userRepository = dataSourceOne.getRepository(User);
const users = await userRepository.find();
console.log(users);

const productRepsoitory = dataSourceTwo.getRepository(Product);
const products = await productRepsoitory.find();
console.log(products);

请注意,连接的数据库类型可以不同(PostgreSQL、MySQL、MongoDB 等)。如果遇到错误,请尝试将typeorm更新到最新版本。

免责声明:
1.本站所有内容由本站原创、网络转载、消息撰写、网友投稿等几部分组成。
2.本站原创文字内容若未经特别声明,则遵循协议CC3.0共享协议,转载请务必注明原文链接。
3.本站部分来源于网络转载的文章信息是出于传递更多信息之目的,不意味着赞同其观点。
4.本站所有源码与软件均为原作者提供,仅供学习和研究使用。
5.如您对本网站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。
火焰兔 » TypeORM:如何连接多个数据库