JavaScript SDK: Datenbankreferenz
Jede Methode von aura.db und des verkettbaren Abfrage-Builders mit ihrer Signatur.
6 Min. gelesen·Ebene Referenz·Überarbeitet am 12.10.2026
Dieser englische Text wurde automatisch aus dem französischen Original generiert und wurde noch nicht überprüft.
Diese Seite wurde automatisch übersetzt. Maßgeblich ist die englische Version.
#
Klasse
Datenbankservice
| Methode | Beschreibung |
|---|---|
from<TableName extends string & keyof Schema['Tables'], Table extends Schema['Tables'][TableName]>(table: TableName): AuraQueryBuilder<Schema, Table, TableName, AuraClientOptionsT>from<ViewName extends string & keyof Schema['Views'], View extends Schema['Views'][ViewName]>(view: ViewName): AuraQueryBuilder<Schema, View, ViewName, AuraClientOptionsT>from(table: string): AuraQueryBuilder<any, any, any, AuraClientOptionsT> | Starten Sie eine Abfrage für eine Tabelle. |
sql<T = unknown>(query: string, params?: unknown[], options?: RawSqlOptions): Promise<AuraResponse<T>> | Führt eine unformatierte SQL-Abfrage aus (POST /v1/db/raw). |
rpc<FnName extends string, Args extends RpcArgsFor<Schema, FnName> = RpcArgsFor<Schema, FnName>, Fn extends { Row: Record<string, unknown>; Result: unknown; RelationName: unknown; Relationships: unknown; } = RpcResultFor<Schema, FnName, Args>>(fn: FnName, args?: Args, options?: RpcOptions): AuraFilterBuilder<Schema, Fn['Row'], Fn['RelationName'], Fn['Relationships'], Fn['Result'], AuraClientOptionsT> | Ruft eine Funktion Postgres auf, die von PostgREST (POST|GET|HEAD /rpc/{fn}) bereitgestellt wird. |
schema(): Promise<AuraResponse<{ tables: SchemaTable[]; functions: SchemaFunction[]; enums: SchemaEnum[]; views: SchemaTable[]; }>> | Rufen Sie das Schema (Tabellen und Spalten, über PostgREST verfügbar gemachte Postgres-Funktionen, Aufzählungstypen und Ansichten) für das aktuelle Projekt ab. |
listFunctions(): Promise<AuraResponse<PgFunctionInfo[]>> | Listet die Funktionen des Projektschemas (GET /v1/db/functions) auf. |
createFunction(definition: CreatePgFunctionRequest): Promise<AuraResponse<null>> | Erstellt oder ersetzt eine Postgres (POST /v1/db/functions)-Funktion. Erfordert einen service_role-Schlüssel. Nur PostgreSQL Projekte. |
dropFunction(name: string): Promise<AuraResponse<null>> | Entfernt eine Funktion aus dem Projektschema (DELETE /v1/db/functions/{name}). Erfordert einen service_role-Schlüssel. |
listTriggers(table: PgRelationName<Schema>): Promise<AuraResponse<PgTriggerInfo[]>> | Listet die Trigger einer Tabelle auf (GET /v1/db/{table}/triggers). |
createTrigger(table: PgRelationName<Schema>, definition: CreatePgTriggerRequest): Promise<AuraResponse<null>> | Erstellt einen Trigger für eine Tabelle (POST /v1/db/{table}/triggers). Erfordert einen service_role-Schlüssel. Nur PostgreSQL Projekte. |
dropTrigger(table: PgRelationName<Schema>, name: string): Promise<AuraResponse<null>> | Entfernt einen Trigger aus einer Tabelle (DELETE /v1/db/{table}/triggers/{name}). Erfordert service_role. |
#
Klasse
AuraQueryBuilder
Verkettbarer Abfrage-Generator, der URL-Abfrageparameter kompiliert, die dem QueryOptions/FilterOp-Format des Backends entsprechen.
| Methode | Beschreibung |
|---|---|
insert(body: Relation extends { Insert: infer I; } ? I | I[] : never): this | Fügt eine Zeile oder ein Array von Zeilen ein. |
update(id: string, body: Relation extends { Update: infer U; } ? U : never): AuraFilterBuilder<Schema, Relation['Row'], RelationName, Relation['Relationships'], Relation['Row'][], ClientOptions, false>update(body: Relation extends { Update: infer U; } ? U : never): AuraFilterBuilder<Schema, Relation['Row'], RelationName, Relation['Relationships'], Relation['Row'][], ClientOptions, false> | Aktualisiert Zeilen: update(body), auf die Filter abzielen, oder update(id, body) für eine Zeile pro Kennung. |
delete(id?: string): AuraFilterBuilder<Schema, Relation['Row'], RelationName, Relation['Relationships'], Relation['Row'][], ClientOptions, false> | Löscht Zeilen: gezielt durch Filter oder eine Zeile nach Kennung mit delete(id). |
upsert(body: Relation extends { Insert: infer I; } ? I | I[] : never, options?: { onConflict?: string; }): AuraFilterBuilder<Schema, Relation['Row'], RelationName, Relation['Relationships'], Relation['Row'][], ClientOptions, false> | Fügt eine Zeile oder ein Array von Zeilen ein oder aktualisiert (Upsert). options.onConflict benennt die Konfliktspalte (standardmäßig id). |
#
Klasse
AuraFilterBuilder
Alle PostgREST-Filter (eq, neq, ... ilikeAnyOf).
| Methode | Beschreibung |
|---|---|
eq<C extends keyof Row & string>(column: C, value: Row[C]): this | Filtert Zeilen, in denen column gleich value ist. |
neq<C extends keyof Row & string>(column: C, value: Row[C]): this | Filtert Zeilen, in denen column sich von value unterscheidet. |
gt<C extends keyof Row & string>(column: C, value: Row[C]): this | Filtert Zeilen, in denen column unbedingt größer als value ist. |
gte<C extends keyof Row & string>(column: C, value: Row[C]): this | Filtert Zeilen, in denen column größer oder gleich value ist. |
lt<C extends keyof Row & string>(column: C, value: Row[C]): this | Filtert Zeilen, in denen column strikt kleiner als value ist. |
lte<C extends keyof Row & string>(column: C, value: Row[C]): this | Filtert Zeilen, in denen column kleiner oder gleich value ist. |
like(column: keyof Row & string, pattern: string): this | Filtern Sie nach Muster LIKE, Groß- und Kleinschreibung beachten (% ersetzt eine Zeichenfolge). |
ilike(column: keyof Row & string, pattern: string): this | Filtern Sie nach Muster ILIKE, Groß- und Kleinschreibung wird nicht beachtet. |
is(column: keyof Row & string, value: 'null' | 'true' | 'false' | 'unknown' | 'not.null'): this | IS NULL- oder IS NOT NULL-Filter. |
in<C extends keyof Row & string>(column: C, values: Row[C][]): this | Filtert Zeilen, deren column einer von values ist. |
or(filters: Array<{ column: string; op: string; value: unknown; }>): this | Fügen Sie eine ODER-Gruppe hinzu: or=(col1.eq.val1,col2.gt.val2) |
notIn<C extends keyof Row & string>(column: C, values: Row[C][]): this | Filtert Zeilen, in denen column nicht gleich values ist. |
contains(column: keyof Row & string, value: unknown): this | Filtert Zeilen, deren Spalte (Tabelle, JSON oder Bereich) value (Operator @>) enthält. |
containedBy(column: keyof Row & string, value: unknown): this | Filtert Zeilen, deren Spalte (Array, JSON oder Bereich) in value (Operator <@) enthalten ist. |
overlaps(column: keyof Row & string, value: unknown): this | Filtert Zeilen, deren Spalte (Array oder Bereich) mindestens ein Element mit value (Operator &&) gemeinsam hat. |
rangeGt(column: keyof Row & string, range: string): this | Intervall: Filtert die Bereiche, die sich streng rechts von range (Operator >>) befinden. |
rangeGte(column: keyof Row & string, range: string): this | Bereich: Filtert Bereiche, die sich nicht über die linke Seite von range (Operator &>) erstrecken. |
rangeLt(column: keyof Row & string, range: string): this | Intervall: Filtert Bereiche, die sich streng links von range (Operator <<) befinden. |
rangeLte(column: keyof Row & string, range: string): this | Bereich: Filtert Bereiche, die nicht rechts von range (Operator &<) reichen. |
rangeAdjacent(column: keyof Row & string, range: string): this | Bereich: Filtert Bereiche neben range (Operator -|-). |
isDistinct(column: keyof Row & string, value: unknown): this | Filtert Zeilen, in denen sich column von value unterscheidet, und behandelt NULL als Wert (IS DISTINCT FROM). |
not(column: string, op: string, value: unknown): this | Negiert einen Filter: not('status', 'eq', 'done') entspricht status und unterscheidet sich von done. |
filter(column: string, op: string, value: unknown): this | Fügt einen Filter mit einem rohen PostgREST-Operator (eq, gt, cs…) für Fälle hinzu, die nicht durch eine dedizierte Methode abgedeckt werden. |
match(query: Record<string, unknown>): this | Nach Gleichheit in mehreren Spalten gleichzeitig filtern: match({ a: 1, b: 2 }). |
textSearch(column: keyof Row & string, query: string, options?: { type?: 'plain' | 'phrase' | 'websearch'; config?: string; }): this | Volltextsuche. options.type wählt die Abfrage: 'plain', 'phrase' oder 'websearch' (ansonsten native tsquery-Syntax); options.config legt die Sprachkonfiguration fest. |
likeAllOf(column: keyof Row & string, patterns: string[]): this | Filter LIKE: Die Spalte muss ALLEN Mustern entsprechen. |
likeAnyOf(column: keyof Row & string, patterns: string[]): this | Filter LIKE: Die Spalte muss MINDESTENS EINEM der Muster entsprechen. |
ilikeAllOf(column: keyof Row & string, patterns: string[]): this | Filter ILIKE (Groß- und Kleinschreibung wird nicht beachtet): Die Spalte muss ALLEN Mustern entsprechen. |
ilikeAnyOf(column: keyof Row & string, patterns: string[]): this | Filter ILIKE (Groß- und Kleinschreibung wird nicht beachtet): Die Spalte muss MINDESTENS EINEM der Muster entsprechen. |
#
Klasse
AuraTransformBuilder
Spaltenauswahl-, Sortier-, Paginierungs- und Kardinalitätsmodifikatoren (single/maybeSingle/count).
| Methode | Beschreibung |
|---|---|
select<Query extends string = '*', NewResultOne = GetResult<Schema, Row, RelationName, Relationships, Query, ClientOptions>>(columns?: Query, options?: SelectOptions): AuraFilterBuilder<Schema, Row, RelationName, Relationships, NewResultOne[], ClientOptions, ThrowOnError> | Wählen Sie Spalten aus und betten Sie optional zugehörige Ressourcen ein (PostgREST Parität). |
order(column: string, directionOrOptions?: 'asc' | 'desc' | OrderOptions): this | Sortieren Sie nach einer Spalte. |
limit(n: number): this | Begrenzt die Anzahl der zurückgegebenen Zeilen. |
offset(n: number): this | Ignoriert die ersten n-Zeilen (Shift-Paging). |
range(from: number, to: number): this | Seiten nach Indexintervall [von, bis] (einschließlich, Basis 0). |
cursor(cursor: string): this | Keyset-Paginierung: Übergeben Sie den undurchsichtigen next_cursor der vorherigen Seite (vorzugsweise offset bei großen Tabellen: stabil, ohne Dup/Skip). |
count(mode?: CountMode): this | Fordert die Gesamtzahl der übereinstimmenden Zeilen an (Standard 'exact' oder 'estimated'), zurückgegeben in count. |
single<ResultOne = Result extends (infer U)[] ? U : Result>(): AuraPostgrestBuilder<ClientOptions, ResultOne, ThrowOnError> | Wartet auf genau eine Zeile und gibt das Objekt selbst zurück; 0 oder mehrere Zeilen führen zum Fehler PGRST116. |
maybeSingle<ResultOne = Result extends (infer U)[] ? U : Result>(): AuraPostgrestBuilder<ClientOptions, ResultOne | null, ThrowOnError> | Wie single(), aber 0 Zeilen sind kein Fehler: data ist dann null. |
#
Klasse
AuraPostgrestBuilder
Basisklasse: gemeinsamer Zustand, Konstruktor, HTTP-Ausführung (then/_execute), throwOnError und buildQueryString.
| Methode | Beschreibung |
|---|---|
throwOnError(): this | Löst eine Ausnahme aus (anstatt { error } zurückzugeben), wenn die Anfrage fehlschlägt. |
buildQueryString(): string | Konstruiert die Abfragezeichenfolge PostgREST (Auswählen, Filtern, Sortieren, Paginierung), ohne die Abfrage auszuführen; nützlich zum Debuggen. |
then<TResult1 = AuraResponse<Result>, TResult2 = never>(onfulfilled?: ((value: AuraResponse<Result>) => TResult1 | PromiseLike<TResult1>) | null, onrejected?: ((reason: unknown) => TResult2 | PromiseLike<TResult2>) | null): Promise<TResult1 | TResult2> | Führt die Abfrage aus: Der Builder ist „thenable“, ein einfaches await reicht aus. |
Generierte Seite
Diese Seite wird aus den Typdeklarationen und Kommentaren des SDK generiert, sodass sie nicht vom veröffentlichten Code abweichen kann. Ausgearbeitete Beispiele finden Sie in den Leitfäden.
Zuletzt aktualisiert · 12.10.2026