TypeORM - API kết nối

Để tương tác với cơ sở dữ liệu, chúng ta cần một đối tượng kết nối với cơ sở dữ liệu. Chúng ta cần tạo một đối tượng kết nối trước khi thực hiện hoạt động cơ sở dữ liệu và phải kết thúc nó khi các hoạt động cơ sở dữ liệu của bạn được thực hiện. Hãy để chúng tôi tìm hiểu về API kết nối do TypeORM cung cấp trong phần này.

Tạo kết nối mới

Trước khi tạo kết nối mới, chúng ta cần định cấu hình chi tiết kết nối cơ sở dữ liệu trong ormconfig.jsontập tin cấu hình. Chi tiết kết nối mẫu được hiển thị bên dưới -

ormconfig.json

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

Đây,

  • name - Tên của kết nối cơ sở dữ liệu.
  • type - Loại cơ sở dữ liệu.
  • host - Tên máy chủ của máy chủ cơ sở dữ liệu.
  • port - Cổng máy chủ cơ sở dữ liệu.
  • username - Tên tài khoản có quyền truy cập vào cơ sở dữ liệu.
  • password - Mật khẩu của tài khoản nêu trên.
  • database - Tên cơ sở dữ liệu cần kết nối.

createConnection

CreateConnectionđược cung cấp bởi TypeORM để tạo một kết nối mới. Nó được định nghĩa như dưới đây,

import { createConnection, Connection } from "typeorm"; 

const connection = await createConnection({ 

});

Đây, createConnection sẽ sử dụng chi tiết cấu hình được chỉ định trong tệp ormconfig.json.

Ngoài ra, bạn có thể xác định URL kết nối làm đối số cho phương thức createConnection như được chỉ định sau:

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

Đây,

createConnection trả về một đối tượng, có thể được sử dụng để mở / đóng kết nối với cơ sở dữ liệu.

Nhiều kết nối

TypeORM cung cấp một tùy chọn để tạo nhiều kết nối cơ sở dữ liệu. Đầu tiên, tệp cấu hình ormconfig.json có thể được sử dụng để chỉ định các chi tiết của kết nối nhiều cơ sở dữ liệu. Hãy để chúng tôi định cấu hình nhiều cơ sở dữ liệu trong ormconfig.json như được chỉ định sau,

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" 
}

Bây giờ, chúng ta có thể sử dụng đối số được cung cấp bởi phương thức createConnection để chỉ định tên của kết nối để tạo đối tượng kết nối như được đề cập bên dưới:

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

Đây,

createConnection sẽ sử dụng chi tiết cấu hình của firstconnection được chỉ định trong ormconfig.json để tạo đối tượng kết nối.

TypeORM cũng cung cấp một API khác, createConnections để tạo nhiều kết nối cùng một lúc và sau đó, sử dụng nó bất cứ khi nào cần thiết như được chỉ định bên dưới -

import { createConnections, Connection } from "typeorm"; 

const connections: Connection[] = await createConnections([ 

]);

Đây,

connections giữ tất cả các đối tượng kết nối dưới dạng một mảng.

Quản lý kết nối

TypeORM cũng cung cấp một API khác, connectionManager để tạo kết nối. Nó được định nghĩa dưới đây -

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

const connectionManager = getConnectionManager(); 

const connection = connectionManager.create({ 

}); 
await connection.connect();

TypeORM thích sử dụng createConnection kết thúc ConnectionManager để tạo các đối tượng kết nối.