Database
 sql >> Baza danych >  >> RDS >> Database

Stosunki pryzmatyczne

Relacje Prisma rozwiązują ogromny problem z bazami danych i obsługą danych.

Załóżmy, że masz w swojej aplikacji listę użytkowników, którzy tworzą tweety (wyobraź sobie Twittera).

W swoim schemacie możesz zdefiniować relację między tymi 2 podmiotami w ten sposób:

model Tweet {
  id Int @id @default(autoincrement()) 
  text String
  author User @relation(fields: [authorId], references: [id])
  authorId Int
}

model User {
  id Int @default(autoincrement()) @id
  tweets Tweet[]
}

Kiedy tworzysz nowy tweet, kojarzysz go z użytkownikiem o identyfikatorze 1 w ten sposób:

await prisma.tweet.create({
  data: {
    text: req.body.content,
    author: {
      connect: { id: 1 }
    }
  }
})

Następnie możesz pobrać informacje o autorze, gdy otrzymasz jeden tweet, za pomocą:

await prisma.tweet.findMany({
  include: {
    author: true
  }
})

Możesz także utworzyć użytkownika i wypełnić bazę danych 2 powiązanymi z nim tweetami:

await prisma.user.create({
  data: {
    tweets: {
      create: [
        { text: 'test' },
        { text: 'test2' },
      ]
    }
  }
})

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Projekt bazy danych

  2. Koleś, kto jest właścicielem tego stołu #temp?

  3. Jak tworzyć tabele bazy danych za pomocą SQL

  4. Eliminowanie powielania wyrażeń Where w aplikacji

  5. ScaleGrid jest już dostępny w regionie Sydney AWS