Drizzle ORM ist ein einfaches, leichtes ORM für TypeScript. Es ist so konzipiert, dass es einfach zu bedienen und leicht zu verstehen ist. Es ist für die Verwendung mit MySQL-Datenbanken konzipiert, kann aber problemlos für die Arbeit mit anderen Datenbanken erweitert werden.
Drizzle ORM unterstützt PostgreSQL, MySQL und SQLite. Dieser Leitfaden konzentriert sich auf MySQL, die Konzepte sind jedoch für alle Datenbanken gleich.
Weitere Einzelheiten erfahren Sie auf Drizzle ORM
Um Drizzle ORM zu installieren, müssen Sie das Paket von npm installieren.
npm i drizzle-orm pg dotenv npm i -D drizzle-kit tsx @types/pg
npm i drizzle-orm pg dotenv – Dieser Befehl installiert das Drizzle ORM-Paket, das pg-Paket und das dotenv-Paket. Das pg-Paket ist für die PostgreSQL-Unterstützung erforderlich, für MySQL oder SQLite jedoch nicht.
npm i -D drizzle-kit tsx @types/pg – Dieser Befehl installiert das Drizzle Kit-Paket, das tsx-Paket und das @types/pg-Paket. Das Drizzle Kit-Paket ist erforderlich, damit Drizzle ORM mit TypeScript funktioniert.
Um Drizzle ORM zu konfigurieren, müssen Sie eine .env-Datei im Stammverzeichnis Ihres Projekts erstellen. Diese Datei sollte die folgenden Informationen enthalten:
DATABASE_URL=your-database-url
Ersetzen Sie Ihre-Datenbank-URL durch die URL Ihrer Datenbank. Wenn Sie beispielsweise MySQL verwenden, sollte die URL so aussehen:
DATABASE_URL=mysql://username:password@localhost:3306/database
Richten Sie die Drizzle-Konfiguration in Ihrer drizzle.config.ts-Datei ein.
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!, }, });
Um eine Tabelle in Ihrer Datenbank zu erstellen, müssen Sie ein Schema in einer Datei namens schema.ts definieren. Diese Datei sollte die folgenden Informationen enthalten:
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), }; } );
Wir definieren eine Tabelle namens „Benutzer“ mit vier Spalten: ID, Name, Alter und E-Mail. Die ID-Spalte ist ein automatisch inkrementierender Primärschlüssel und die Spalten „Name“, „Alter“ und „E-Mail“ sind erforderlich.
Erstellen Sie eine index.ts-Datei im Verzeichnis src/db und initialisieren Sie die Verbindung zur Datenbank.
import 'dotenv/config'; import { drizzle } from 'drizzle-orm/node-postgres'; const db = drizzle(process.env.DATABASE_URL!);
Wir haben die DATABASE_URL bereits in der .env-Datei definiert. Wir verwenden die Drizzle-Funktion, um eine Verbindung zur Datenbank herzustellen.
Um Daten in die Benutzertabelle einzufügen, können Sie die Einfügemethode für das Datenbankobjekt verwenden.
import { users } from './schema'; const user = await db.insert(users).values({ name: 'John Doe', age: 30, email: ' });
Wir verwenden die Einfügemethode für das Datenbankobjekt, um einen neuen Benutzer in die Benutzertabelle einzufügen. Wir übergeben ein Objekt mit den Eigenschaften „Name“, „Alter“ und „E-Mail“ an die Methode „values“.
Um Daten aus der Benutzertabelle abzufragen, können Sie die Select-Methode für das Datenbankobjekt verwenden.
npm i drizzle-orm pg dotenv npm i -D drizzle-kit tsx @types/pg
Wir verwenden die Select-Methode für das Datenbankobjekt, um einen Benutzer aus der Benutzertabelle abzufragen. Wir verwenden die Methode where, um die Ergebnisse basierend auf der ID-Spalte zu filtern.
Um Daten in der Benutzertabelle zu aktualisieren, können Sie die Aktualisierungsmethode für das Datenbankobjekt verwenden.
DATABASE_URL=your-database-url
Wir verwenden die Update-Methode für das Datenbankobjekt, um einen Benutzer in der Benutzertabelle zu aktualisieren. Wir verwenden die Set-Methode, um die Altersspalte auf 31 zu setzen, und die Where-Methode, um die Ergebnisse basierend auf der ID-Spalte zu filtern.
Um Daten aus der Benutzertabelle zu löschen, können Sie die Löschmethode für das Datenbankobjekt verwenden.
DATABASE_URL=mysql://username:password@localhost:3306/database
Wir verwenden die Löschmethode für das Datenbankobjekt, um einen Benutzer aus der Benutzertabelle zu löschen. Wir verwenden die Methode where, um die Ergebnisse basierend auf der ID-Spalte zu filtern.
Drizzle ORM ist ein einfaches, leichtes ORM für TypeScript. Es ist so konzipiert, dass es einfach zu bedienen und leicht zu verstehen ist. Es ist für die Verwendung mit MySQL-Datenbanken konzipiert, kann jedoch problemlos für die Verwendung mit anderen Datenbanken erweitert werden. Weitere Einzelheiten erfahren Sie auf Drizzle ORM
Vielen Dank, dass Sie diesen Leitfaden gelesen haben. Ich hoffe, Sie fanden es hilfreich. Wenn Sie Fragen oder Feedback haben, können Sie sich gerne an mich wenden. Ich würde gerne von Ihnen hören.
Das obige ist der detaillierte Inhalt vonDrizzle ORM-Crashkurs. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!