Kiedy chcemy stworzyć system oparty na podejściu baz danych o relacyjnym charakterze to skorzystamy z mapowania ORM (ang. Object-Relational Mapping). W tym artykule przedstawię bibliotekę, która pomaga w budowaniu ORM.

Prisma

Czym jest Prisma?

Prisma to ORM typu open source, które pomaga szybciej budować aplikacje i popełniać mniej błędów. Prisma stosuje inne podejście do ORM w porównaniu do tradycyjnych ORM. Używa standardowego języka definicji schematu (SDL), który automatycznie zapisuje migracje i generuje kod bezpieczny dla typów. Prisma składa się z następujących części:

  • Prisma Client - Jest to automatyczny generowany i bezpieczny dla typów konstruktor zapytać dla Node.js i TypeScriptu
  • Prisma Migrate - System migracji.
  • Prisma Studio - GUI do przeglądania i edycji danych w bazie danych.

 

Prisma Client - może być używany w dowolnej aplikacji Node.js lub TypeScript. Może to być interfejs API REST, interfejs API GraphQL, interfejs API gRPC lub cokolwiek innego, co wymaga bazy danych.

 

Czy szukasz wykonawcy Prisma ?
logo

Jak działa Prisma?

Każdy projekt korzystający z Prismy zaczyna się od pliku schematu Prisma. Schemat Prisma umożliwia programistom definiowanie modeli aplikacji w intuicyjnym języku modelowania danych. W takim schemacie konfigurujemy najczęściej trzy rzeczy:

  • Źródło danych - Określa połączenie z bazą danych (poprzez zmienną środowiskową).
  • Generator - wskazuje na to co chcesz wygenerować.
  • Model danych -  definiuje modele aplikacji.

 

Modele danych jest to zbiór modeli. Model ma dwie główne funkcje: Reprezentuje tabelę w relacyjnych bazach danych lub kolekcję w MongoDB i zapewnia podstawę dla zapytań w Prisma Client API.

 

Instalacja Prisma

Aby zainstalować Prisme należy pobrać pakiet @prisma/client:

npm install @prisma/client

 

Jakie zalety ma Prisma?

  1. Szybkość - działa bardzo szybko dzięki temu, że korzysta z systemu cache, który zapobiega częstemu odpytywaniu bazy danych.
  2. Łatwość konfiguracji -  jest łatwe w konfiguracji i można go zainstalować z pomocą narzędzia CLI.
  3. Bezpieczeństwo - pozwala na bezpieczne odwoływanie się do bazy danych, dzięki czemu unikamy SQL Injection.
  4. Język TypeScript - oferuje wsparcie dla TypeScript, co pozwala na pisanie bezpieczniejszego kodu i uniknięcie wielu błędów w trakcie programowania.
  5. Automatyczna generacja kodu - automatycznie generuje kod dostępu do bazy danych na podstawie modeli, dzięki czemu można zaoszczędzić dużo czasu przy tworzeniu aplikacji.
  6. Migracje schematu - oferuje funkcjonalność migracji schematu, co pozwala na łatwe zarządzanie zmianami w bazie danych.
  7. Łatwość w testowaniu - pozwala na łatwe testowanie kodu, dzięki czemu można uniknąć wielu błędów i problemów w trakcie tworzenia aplikacji.
  8. Skalowalność - jest łatwy do skalowania i obsługuje różne typy baz danych, dzięki czemu można korzystać z niego przy tworzeniu aplikacji o różnej skali.

Nasza oferta

Powiązane artykuły

Zobacz wszystkie artykuły