Logo Aurabase
aurabazadokumenty
dokumenty›JavaScript SDK reference›Database reference

JavaScript SDK: odniesienie do bazy danych

Każda metoda aura.db i narzędzia do tworzenia zapytań łańcuchowych wraz z jej podpisem.

6 min przeczytane·Poziom odniesienie·Zmieniono 12 paź 2026
Ten tekst w języku angielskim został wygenerowany automatycznie na podstawie francuskiego oryginału i nie był jeszcze recenzowany.
Ta strona została przetłumaczona automatycznie. Wersja angielska jest miarodajna.
#
Klasa

Usługa bazy danych

MetodaOpis
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>
Rozpocznij zapytanie w tabeli.
sql<T = unknown>(query: string, params?: unknown[], options?: RawSqlOptions): Promise<AuraResponse<T>>Wykonuje surowe zapytanie SQL (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>Wywołuje funkcję Postgres uwidocznioną przez PostgREST (POST|GET|HEAD /rpc/{fn}).
schema(): Promise<AuraResponse<{ tables: SchemaTable[]; functions: SchemaFunction[]; enums: SchemaEnum[]; views: SchemaTable[]; }>>Pobierz schemat (tabele i kolumny, funkcje Postgres dostępne za pośrednictwem PostgREST, typy wyliczeniowe i widoki) dla bieżącego projektu.
listFunctions(): Promise<AuraResponse<PgFunctionInfo[]>>Wyświetla listę funkcji schematu projektu (GET /v1/db/functions).
createFunction(definition: CreatePgFunctionRequest): Promise<AuraResponse<null>>Tworzy lub zastępuje funkcję Postgres (POST /v1/db/functions). Wymaga klucza service_role. PostgreSQL tylko projekty.
dropFunction(name: string): Promise<AuraResponse<null>>Usuwa funkcję ze schematu projektu (DELETE /v1/db/functions/{name}). Wymaga klucza service_role.
listTriggers(table: PgRelationName<Schema>): Promise<AuraResponse<PgTriggerInfo[]>>Wyświetla listę wyzwalaczy tabeli (GET /v1/db/{table}/triggers).
createTrigger(table: PgRelationName<Schema>, definition: CreatePgTriggerRequest): Promise<AuraResponse<null>>Tworzy wyzwalacz w tabeli (POST /v1/db/{table}/triggers). Wymaga klucza service_role. Tylko projekty PostgreSQL.
dropTrigger(table: PgRelationName<Schema>, name: string): Promise<AuraResponse<null>>Usuwa wyzwalacz z tabeli (DELETE /v1/db/{table}/triggers/{name}). Wymaga service_role.
#
Klasa

Kreator zapytań Aura

Konstruktor zapytań z możliwością tworzenia łańcucha, który kompiluje się do parametrów zapytań URL pasujących do formatu QueryOptions/FilterOp zaplecza.

MetodaOpis
insert(body: Relation extends { Insert: infer I; } ? I | I[] : never): thisWstawia wiersz lub tablicę wierszy.
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>
Aktualizuje wiersze: update(body) kierowany przez filtry lub update(id, body) dla jednego wiersza na identyfikator.
delete(id?: string): AuraFilterBuilder<Schema, Relation['Row'], RelationName, Relation['Relationships'], Relation['Row'][], ClientOptions, false>Usuwa wiersze: wybrane przez filtry lub jeden wiersz według identyfikatora z 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>Wstawia lub aktualizuje (wstawia) wiersz lub tablicę wierszy. options.onConflict nazywa kolumnę konfliktu (domyślnie id).
#
Klasa

Kreator filtrów Aura

Wszystkie filtry PostgREST (eq, neq, ... ilikeAnyOf).

MetodaOpis
eq<C extends keyof Row & string>(column: C, value: Row[C]): thisFiltruje wiersze, w których column równa się value.
neq<C extends keyof Row & string>(column: C, value: Row[C]): thisFiltruje wiersze, w których column różni się od value.
gt<C extends keyof Row & string>(column: C, value: Row[C]): thisFiltruje wiersze, w których column jest ściśle większe niż value.
gte<C extends keyof Row & string>(column: C, value: Row[C]): thisFiltruje wiersze, w których column jest większe lub równe value.
lt<C extends keyof Row & string>(column: C, value: Row[C]): thisFiltruje wiersze, w których column jest dokładnie mniejsze niż value.
lte<C extends keyof Row & string>(column: C, value: Row[C]): thisFiltruje wiersze, w których column jest mniejsze lub równe value.
like(column: keyof Row & string, pattern: string): thisFiltruj według wzorca LIKE, wielkość liter ma znaczenie (% zastępuje ciąg znaków).
ilike(column: keyof Row & string, pattern: string): thisFiltruj według wzorca ILIKE, wielkość liter nie jest uwzględniana.
is(column: keyof Row & string, value: 'null' | 'true' | 'false' | 'unknown' | 'not.null'): thisFiltr IS NULL lub NIE JEST NULL.
in<C extends keyof Row & string>(column: C, values: Row[C][]): thisFiltruje wiersze, których column jest jednym z values.
or(filters: Array<{ column: string; op: string; value: unknown; }>): thisDodaj grupę LUB: or=(col1.eq.val1,col2.gt.val2)
notIn<C extends keyof Row & string>(column: C, values: Row[C][]): thisFiltruje wiersze, w których column nie jest równe żadnemu z values.
contains(column: keyof Row & string, value: unknown): thisFiltruje wiersze, których kolumna (tabela, JSON lub zakres) zawiera value (operator @>).
containedBy(column: keyof Row & string, value: unknown): thisFiltruje wiersze, których kolumna (tablica, JSON lub zakres) jest zawarta w value (operator <@).
overlaps(column: keyof Row & string, value: unknown): thisFiltruje wiersze, których kolumna (tablica lub zakres) ma co najmniej jeden element wspólny z value (operator &&).
rangeGt(column: keyof Row & string, range: string): thisInterwał: filtruje zakresy znajdujące się dokładnie na prawo od range (operator >>).
rangeGte(column: keyof Row & string, range: string): thisZakres: filtruje zakresy, które nie rozciągają się na lewo od range (operator &>).
rangeLt(column: keyof Row & string, range: string): thisInterwał: filtruje zakresy znajdujące się dokładnie na lewo od range (operator <<).
rangeLte(column: keyof Row & string, range: string): thisZakres: filtruje zakresy, które nie rozciągają się na prawo od range (operator &<).
rangeAdjacent(column: keyof Row & string, range: string): thisZakres: filtruje zakresy sąsiadujące z range (operator -|-).
isDistinct(column: keyof Row & string, value: unknown): thisFiltruje wiersze, w których column różni się od value, traktując NULL jako wartość (IS DISTINCT FROM).
not(column: string, op: string, value: unknown): thisNeguje filtr: not('status', 'eq', 'done') jest odpowiednikiem status innego niż done.
filter(column: string, op: string, value: unknown): thisDodaje filtr z surowym operatorem PostgREST (eq, gt, cs…), dla przypadków nieobjętych dedykowaną metodą.
match(query: Record<string, unknown>): thisFiltruj według równości w kilku kolumnach jednocześnie: match({ a: 1, b: 2 }).
textSearch(column: keyof Row & string, query: string, options?: { type?: 'plain' | 'phrase' | 'websearch'; config?: string; }): thisWyszukiwanie pełnotekstowe. options.type wybiera zapytanie: 'plain', 'phrase' lub 'websearch' (w innym przypadku natywna składnia tsquery); options.config ustawia konfigurację języka.
likeAllOf(column: keyof Row & string, patterns: string[]): thisFiltr LIKE: kolumna musi pasować do WSZYSTKICH wzorców.
likeAnyOf(column: keyof Row & string, patterns: string[]): thisFiltr LIKE: kolumna musi pasować CO NAJMNIEJ JEDEN z wzorców.
ilikeAllOf(column: keyof Row & string, patterns: string[]): thisFiltr ILIKE (wielkość liter nie jest uwzględniana): kolumna musi pasować do WSZYSTKICH wzorców.
ilikeAnyOf(column: keyof Row & string, patterns: string[]): thisFiltr ILIKE (wielkość liter nie ma znaczenia): kolumna musi pasować DO CO NAJMNIEJ JEDNEGO wzorca.
#
Klasa

Kreator Transformacji Aury

Modyfikatory wyboru, sortowania, paginacji i liczności kolumn (single/maybeSingle/count).

MetodaOpis
select<Query extends string = '*', NewResultOne = GetResult<Schema, Row, RelationName, Relationships, Query, ClientOptions>>(columns?: Query, options?: SelectOptions): AuraFilterBuilder<Schema, Row, RelationName, Relationships, NewResultOne[], ClientOptions, ThrowOnError>Wybierz kolumny i opcjonalnie osadź powiązane zasoby (parzystość PostgREST).
order(column: string, directionOrOptions?: 'asc' | 'desc' | OrderOptions): thisSortuj według kolumny.
limit(n: number): thisOgranicza liczbę zwracanych wierszy.
offset(n: number): thisIgnoruje pierwsze wiersze n (stronicowanie z przesunięciem).
range(from: number, to: number): thisStrony według przedziału indeksu [od, do] (włącznie, podstawa 0).
cursor(cursor: string): thisPaginacja zestawu kluczy: przekaż nieprzezroczysty next_cursor z poprzedniej strony (lepiej offset na dużych tabelach: stabilny, bez duplikacji/pominięcia).
count(mode?: CountMode): thisŻąda całkowitej liczby pasujących wierszy (domyślnie 'exact' lub 'estimated'), zwracanych w count.
single<ResultOne = Result extends (infer U)[] ? U : Result>(): AuraPostgrestBuilder<ClientOptions, ResultOne, ThrowOnError>Czeka dokładnie na jeden wiersz i zwraca sam obiekt; 0 lub kilka wierszy daje błąd PGRST116.
maybeSingle<ResultOne = Result extends (infer U)[] ? U : Result>(): AuraPostgrestBuilder<ClientOptions, ResultOne | null, ThrowOnError>Podobnie jak single(), ale 0 wierszy nie jest błędem: data to null.
#
Klasa

Konstruktor AuraPostgres

Klasa bazowa: stan współdzielony, konstruktor, wykonanie HTTP (then/_execute), throwOnError i buildQueryString.

MetodaOpis
throwOnError(): thisZgłasza wyjątek (zamiast zwracać { error }), gdy żądanie nie powiedzie się.
buildQueryString(): stringKonstruuje ciąg zapytania PostgREST (wybór, filtry, sortowanie, paginacja) bez uruchamiania zapytania; przydatne do debugowania.
then<TResult1 = AuraResponse<Result>, TResult2 = never>(onfulfilled?: ((value: AuraResponse<Result>) => TResult1 | PromiseLike<TResult1>) | null, onrejected?: ((reason: unknown) => TResult2 | PromiseLike<TResult2>) | null): Promise<TResult1 | TResult2>Wykonuje zapytanie: konstruktor jest „wtedy możliwy”, wystarczy proste await.
Wygenerowana strona

Ta strona jest generowana na podstawie deklaracji typów i komentarzy pakietu SDK, więc nie może odbiegać od opublikowanego kodu. Aby poznać sprawdzone przykłady, przeczytaj przewodniki.

Ostatnia aktualizacja · 12 paź 2026