TypeORM - API połączenia

Do interakcji z bazą danych potrzebujemy obiektu połączenia z bazą danych. Musimy utworzyć obiekt połączenia przed wykonaniem operacji na bazie danych i zakończyć go po wykonaniu operacji na bazie danych. W tej sekcji poznajmy interfejs API połączenia udostępniany przez TypeORM.

Tworzenie nowego połączenia

Przed utworzeniem nowego połączenia musimy skonfigurować szczegóły połączenia z bazą danych w pliku ormconfig.jsonplik konfiguracyjny. Przykładowe szczegóły połączenia pokazano poniżej -

ormconfig.json

{ 
   name: "firstconnection", 
   type: "mysql", 
   host: "localhost", 
   port: 3306, 
   username: "root", 
   password: "root", 
   database: "firstDB" 
}

Tutaj,

  • name - nazwa połączenia z bazą danych.
  • type - Typ bazy danych.
  • host - nazwa hosta serwera bazy danych.
  • port - Port serwera bazy danych.
  • username - Nazwa konta mającego dostęp do bazy danych.
  • password - Hasło do wyżej wymienionego konta.
  • database - nazwa bazy danych do połączenia.

createConnection

CreateConnectionMetoda jest udostępniana przez TypeORM w celu utworzenia nowego połączenia. Jest zdefiniowany jak poniżej,

import { createConnection, Connection } from "typeorm"; 

const connection = await createConnection({ 

});

Tutaj, createConnection użyje szczegółów konfiguracji określonych w pliku ormconfig.json.

Alternatywnie możesz zdefiniować adres URL połączenia jako argumenty metody createConnection w następujący sposób -

const connection = createConnection({ type: 'mysql', 
     url: 'localhost:8888/firstDB' 
})

Tutaj,

createConnection zwraca obiekt, którego można użyć do otwarcia / zamknięcia połączenia z bazą danych.

Wiele połączeń

TypeORM zapewnia również opcję tworzenia wielu połączeń z bazą danych. Po pierwsze, plik konfiguracyjny ormconfig.json może służyć do określenia szczegółów połączenia z wieloma bazami danych. Skonfigurujmy wiele baz danych w ormconfig.json w następujący sposób,

ormconfig.json

{  name: "firstconnection", 
   type: "mysql", 
   host: "localhost", 
   port: 3306, 
   username: "root", 
   password: "root", 
   database: "firstDB" 
}, 
{  name: "secondconnection", 
   type: "mysql", 
   host: "localhost", 
   port: 3306, 
   username: "root", 
   password: "root", 
   database: "secondDB" 
}, 
{  name: "thirdconnection", 
   type: "mysql", 
   host: "localhost", 
   port: 3306, 
   username: "root", 
   password: "root", 
   database: "thirdDB" 
}

Teraz możemy użyć argumentu dostarczonego przez metodę createConnection, aby określić nazwę połączenia w celu utworzenia obiektu połączenia, jak wspomniano poniżej -

const firstconnection: Connection = await createConnection("firstconnection");

Tutaj,

createConnection użyje szczegółów konfiguracji pliku firstconnection określone w ormconfig.json plik, aby utworzyć obiekt połączenia.

TypeORM zapewnia również kolejny interfejs API, createConnections, aby utworzyć wiele połączeń jako jeden raz, a następnie używać go w razie potrzeby, jak określono poniżej -

import { createConnections, Connection } from "typeorm"; 

const connections: Connection[] = await createConnections([ 

]);

Tutaj,

connections przechowuj wszystkie obiekty połączeń jako tablicę.

ConnectionManager

TypeORM zapewnia również inny interfejs API, connectionManager do tworzenia połączenia. Jest zdefiniowany poniżej -

import {getConnectionManager, ConnectionManager, Connection} from "typeorm"; 

const connectionManager = getConnectionManager(); 

const connection = connectionManager.create({ 

}); 
await connection.connect();

TypeORM preferuje użycie createConnection nad ConnectionManager do tworzenia obiektów połączeń.