Maison >interface Web >js tutoriel >Cours intensif ORM Bruine

Cours intensif ORM Bruine

Barbara Streisand
Barbara Streisandoriginal
2025-01-14 20:28:47677parcourir

Drizzle ORM Crash Course

Introduction

Drizzle ORM est un ORM simple et léger pour TypeScript. Il est conçu pour être simple à utiliser et facile à comprendre. Il est conçu pour être utilisé avec les bases de données MySQL, mais peut être facilement étendu pour fonctionner avec d'autres bases de données.

Commencer

Drizzle ORM prend en charge PostgreSQL, MySQL et SQLite. Ce guide se concentrera sur MySQL, mais les concepts sont les mêmes pour toutes les bases de données.
Vous pouvez obtenir plus de détails sur Drizzle ORM

Installation

Pour installer Drizzle ORM, vous devez installer le package depuis npm.

npm i drizzle-orm pg dotenv
npm i -D drizzle-kit tsx @types/pg

npm i drizzle-orm pg dotenv - Cette commande installe le package Drizzle ORM, le package pg et le package dotenv. Le package pg est requis pour la prise en charge de PostgreSQL, mais il n'est pas requis pour MySQL ou SQLite.

npm i -D drizzle-kit tsx @types/pg - Cette commande installe le package Drizzle Kit, le package tsx et le package @types/pg. Le package Drizzle Kit est requis pour que Drizzle ORM fonctionne avec TypeScript.

Configuration

Pour configurer Drizzle ORM, vous devez créer un fichier .env à la racine de votre projet. Ce fichier doit contenir les informations suivantes :

DATABASE_URL=your-database-url

Remplacez your-database-url par l'URL de votre base de données. Par exemple, si vous utilisez MySQL, l'URL devrait ressembler à ceci :

DATABASE_URL=mysql://username:password@localhost:3306/database

Configurez la configuration de bruine dans votre fichier drizzle.config.ts.

import 'dotenv/config';
import { defineConfig } from 'drizzle-kit';

export default defineConfig({
  out: './drizzle',
  schema: './src/db/schema.ts',
  dialect: 'postgresql',
  dbCredentials: {
    url: process.env.DATABASE_URL!,
  },
});

 Créer un tableau

Pour créer une table dans votre base de données, vous devez définir un schéma dans un fichier appelé schema.ts. Ce fichier doit contenir les informations suivantes :

import { pgTable, unique, integer, varchar } from 'drizzle-orm/pg-core';
import { sql } from 'drizzle-orm';

export const users = pgTable(
  'users',
  {
    id: integer().primaryKey().generatedAlwaysAsIdentity({
      name: 'users_id_seq',
      startWith: 1,
      increment: 1,
      minValue: 1,
      maxValue: 2147483647,
      cache: 1,
    }),
    name: varchar({ length: 255 }).notNull(),
    age: integer().notNull(),
    email: varchar({ length: 255 }).notNull(),
  },
  (table) => {
    return {
      usersEmailUnique: unique('users_email_unique').on(table.email),
    };
  }
);

Nous définissons un tableau appelé utilisateurs avec quatre colonnes : identifiant, nom, âge et email. La colonne id est une clé primaire à incrémentation automatique et les colonnes nom, âge et e-mail sont obligatoires.

 Connectez-vous à la base de données

Créez un fichier index.ts dans le répertoire src/db et initialisez la connexion à la base de données.

import 'dotenv/config';
import { drizzle } from 'drizzle-orm/node-postgres';

const db = drizzle(process.env.DATABASE_URL!);

Nous avons déjà défini la DATABASE_URL dans le fichier .env. Nous utilisons la fonction bruine pour nous connecter à la base de données.

 Insérer des données

Pour insérer des données dans la table des utilisateurs, vous pouvez utiliser la méthode d'insertion sur l'objet db.

import { users } from './schema';

const user = await db.insert(users).values({
  name: 'John Doe',
  age: 30,
  email: '
});

Nous utilisons la méthode insert sur l'objet db pour insérer un nouvel utilisateur dans la table des utilisateurs. Nous transmettons un objet avec les propriétés nom, âge et e-mail à la méthode des valeurs.

 Données de requête

Pour interroger les données de la table des utilisateurs, vous pouvez utiliser la méthode select sur l'objet db.

npm i drizzle-orm pg dotenv
npm i -D drizzle-kit tsx @types/pg

Nous utilisons la méthode select sur l'objet db pour interroger un utilisateur dans la table des utilisateurs. Nous utilisons la méthode Where pour filtrer les résultats en fonction de la colonne id.

 Mettre à jour les données

Pour mettre à jour les données dans la table des utilisateurs, vous pouvez utiliser la méthode de mise à jour sur l'objet db.

DATABASE_URL=your-database-url

Nous utilisons la méthode update sur l'objet db pour mettre à jour un utilisateur dans la table des utilisateurs. Nous utilisons la méthode set pour définir la colonne age sur 31 et la méthode Where pour filtrer les résultats en fonction de la colonne id.

 Supprimer les données

Pour supprimer des données de la table des utilisateurs, vous pouvez utiliser la méthode delete sur l'objet db.

DATABASE_URL=mysql://username:password@localhost:3306/database

Nous utilisons la méthode delete sur l'objet db pour supprimer un utilisateur de la table des utilisateurs. Nous utilisons la méthode Where pour filtrer les résultats en fonction de la colonne id.

Conclusion

Drizzle ORM est un ORM simple et léger pour TypeScript. Il est conçu pour être simple à utiliser et facile à comprendre. Il est conçu pour être utilisé avec les bases de données MySQL, mais peut être facilement étendu pour fonctionner avec d'autres bases de données. Vous pouvez obtenir plus de détails sur Drizzle ORM

Merci

Merci d'avoir lu ce guide. J'espère que vous l'avez trouvé utile. Si vous avez des questions ou des commentaires, n'hésitez pas à me contacter. J'aimerais avoir de vos nouvelles.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn