Логотип Аурабаза
аурабазадокументы
документы›JavaScript SDK reference›Database reference

JavaScript SDK: справочник по базе данных

Каждый метод aura.db и построителя цепных запросов со своей сигнатурой.

6 мин читать·Уровень ссылка·Пересмотрено 12 окт. 2026 г.
Этот текст на английском языке был создан автоматически на основе французского оригинала и еще не проверялся.
Эта страница была переведена автоматически. Английская версия является авторитетной.
#
Сорт

Служба базы данных

МетодОписание
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>
Запустите запрос к таблице.
sql<T = unknown>(query: string, params?: unknown[], options?: RawSqlOptions): Promise<AuraResponse<T>>Выполняет необработанный 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>Вызывает функцию Postgres, предоставляемую PostgREST (POST|GET|HEAD /rpc/{fn}).
schema(): Promise<AuraResponse<{ tables: SchemaTable[]; functions: SchemaFunction[]; enums: SchemaEnum[]; views: SchemaTable[]; }>>Получите схему (таблицы и столбцы, функции Postgres, предоставляемые через PostgREST, типы перечислений и представления) для текущего проекта.
listFunctions(): Promise<AuraResponse<PgFunctionInfo[]>>Перечисляет функции схемы проекта (GET /v1/db/functions).
createFunction(definition: CreatePgFunctionRequest): Promise<AuraResponse<null>>Создает или заменяет функцию Postgres (POST /v1/db/functions). Требуется ключ service_role. Только проекты PostgreSQL.
dropFunction(name: string): Promise<AuraResponse<null>>Удаляет функцию из схемы проекта (DELETE /v1/db/functions/{name}). Требуется ключ service_role.
listTriggers(table: PgRelationName<Schema>): Promise<AuraResponse<PgTriggerInfo[]>>Перечисляет триггеры таблицы (GET /v1/db/{table}/triggers).
createTrigger(table: PgRelationName<Schema>, definition: CreatePgTriggerRequest): Promise<AuraResponse<null>>Создает триггер для таблицы (POST /v1/db/{table}/triggers). Требуется ключ service_role. Только проекты PostgreSQL.
dropTrigger(table: PgRelationName<Schema>, name: string): Promise<AuraResponse<null>>Удаляет триггер из таблицы (DELETE /v1/db/{table}/triggers/{name}). Требуется service_role.
#
Сорт

АураQueryBuilder

Построитель цепных запросов, который компилируется в параметры URL-запроса, соответствующие формату QueryOptions/FilterOp серверной части.

МетодОписание
insert(body: Relation extends { Insert: infer I; } ? I | I[] : never): thisВставляет строку или массив строк.
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>
Обновляет строки: update(body), предназначенные для фильтров, или update(id, body) для одной строки на идентификатор.
delete(id?: string): AuraFilterBuilder<Schema, Relation['Row'], RelationName, Relation['Relationships'], Relation['Row'][], ClientOptions, false>Удаляет строки: целевые по фильтрам или одну строку по идентификатору с 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>Вставляет или обновляет (upsert) строку или массив строк. options.onConflict называет столбец конфликта (по умолчанию id).
#
Сорт

АураФильтрСтроитель

Все фильтры PostgREST (eq, neq, ... ilikeAnyOf).

МетодОписание
eq<C extends keyof Row & string>(column: C, value: Row[C]): thisФильтрует строки, в которых column равно value.
neq<C extends keyof Row & string>(column: C, value: Row[C]): thisФильтрует строки, в которых column отличается от value.
gt<C extends keyof Row & string>(column: C, value: Row[C]): thisФильтрует строки, в которых column строго больше value.
gte<C extends keyof Row & string>(column: C, value: Row[C]): thisФильтрует строки, в которых column больше или равно value.
lt<C extends keyof Row & string>(column: C, value: Row[C]): thisФильтрует строки, в которых column строго меньше value.
lte<C extends keyof Row & string>(column: C, value: Row[C]): thisФильтрует строки, в которых column меньше или равно value.
like(column: keyof Row & string, pattern: string): thisФильтрация по шаблону LIKE с учетом регистра (% заменяет последовательность символов).
ilike(column: keyof Row & string, pattern: string): thisФильтровать по шаблону ILIKE без учета регистра.
is(column: keyof Row & string, value: 'null' | 'true' | 'false' | 'unknown' | 'not.null'): thisФильтр IS NULL или IS NOT NULL.
in<C extends keyof Row & string>(column: C, values: Row[C][]): thisФильтрует строки, column которых является одним из values.
or(filters: Array<{ column: string; op: string; value: unknown; }>): thisДобавьте группу ИЛИ: or=(col1.eq.val1,col2.gt.val2)
notIn<C extends keyof Row & string>(column: C, values: Row[C][]): thisФильтрует строки, в которых column не равен ни одному из values.
contains(column: keyof Row & string, value: unknown): thisФильтрует строки, столбец (таблица, JSON или диапазон) которых содержит value (оператор @>).
containedBy(column: keyof Row & string, value: unknown): thisФильтрует строки, столбец которых (массив, JSON или диапазон) содержится в value (оператор <@).
overlaps(column: keyof Row & string, value: unknown): thisФильтрует строки, столбец (массив или диапазон) которых имеет хотя бы один общий элемент с value (оператор &&).
rangeGt(column: keyof Row & string, range: string): thisИнтервал: фильтрует диапазоны, расположенные строго справа от range (оператор >>).
rangeGte(column: keyof Row & string, range: string): thisДиапазон: фильтрует диапазоны, которые не простираются слева от range (оператор &>).
rangeLt(column: keyof Row & string, range: string): thisИнтервал: фильтрует диапазоны, расположенные строго слева от range (оператор <<).
rangeLte(column: keyof Row & string, range: string): thisДиапазон: фильтрует диапазоны, которые не простираются справа от range (оператор &<).
rangeAdjacent(column: keyof Row & string, range: string): thisДиапазон: фильтрует диапазоны, соседние с range (оператор -|-).
isDistinct(column: keyof Row & string, value: unknown): thisФильтрует строки, в которых column отличается от value, рассматривая NULL как значение (IS DISTINCT FROM).
not(column: string, op: string, value: unknown): thisОтменяет фильтр: not('status', 'eq', 'done') эквивалентен status, отличному от done.
filter(column: string, op: string, value: unknown): thisДобавляет фильтр с необработанным оператором PostgREST (eq, gt, cs…) для случаев, не охваченных специальным методом.
match(query: Record<string, unknown>): thisФильтрация по равенству одновременно по нескольким столбцам: match({ a: 1, b: 2 }).
textSearch(column: keyof Row & string, query: string, options?: { type?: 'plain' | 'phrase' | 'websearch'; config?: string; }): thisПолнотекстовый поиск. options.type выбирает запрос: 'plain', 'phrase' или 'websearch' (в противном случае собственный синтаксис tsquery); options.config устанавливает языковую конфигурацию.
likeAllOf(column: keyof Row & string, patterns: string[]): thisФильтр LIKE: столбец должен соответствовать ВСЕМ шаблонам.
likeAnyOf(column: keyof Row & string, patterns: string[]): thisФильтр LIKE: столбец должен соответствовать хотя бы одному шаблону.
ilikeAllOf(column: keyof Row & string, patterns: string[]): thisФильтр ILIKE (без учета регистра): столбец должен соответствовать ВСЕМ шаблонам.
ilikeAnyOf(column: keyof Row & string, patterns: string[]): thisФильтр ILIKE (без учета регистра): столбец должен соответствовать ПО МИНИМУМ ОДНОМУ из шаблонов.
#
Сорт

АураТрансформБилдер

Выбор столбца, сортировка, нумерация страниц и модификаторы кратности (single/maybeSingle/count).

МетодОписание
select<Query extends string = '*', NewResultOne = GetResult<Schema, Row, RelationName, Relationships, Query, ClientOptions>>(columns?: Query, options?: SelectOptions): AuraFilterBuilder<Schema, Row, RelationName, Relationships, NewResultOne[], ClientOptions, ThrowOnError>Выберите столбцы и при необходимости вставьте связанные ресурсы (четность PostgREST).
order(column: string, directionOrOptions?: 'asc' | 'desc' | OrderOptions): thisСортировка по столбцу.
limit(n: number): thisОграничивает количество возвращаемых строк.
offset(n: number): thisИгнорирует первые строки n (перелистывание страниц).
range(from: number, to: number): thisСтраницы по интервалу индекса [от, до] (включительно, основание 0).
cursor(cursor: string): thisПагинация набора ключей: передать непрозрачный next_cursor предыдущей страницы (предпочтительно offset в больших таблицах: стабильно, без дублирования/пропуска).
count(mode?: CountMode): thisЗапрашивает общее количество совпадающих строк (по умолчанию 'exact' или 'estimated'), возвращаемое в count.
single<ResultOne = Result extends (infer U)[] ? U : Result>(): AuraPostgrestBuilder<ClientOptions, ResultOne, ThrowOnError>Ожидает ровно одну строку и возвращает сам объект; 0 или несколько строк выдают ошибку PGRST116.
maybeSingle<ResultOne = Result extends (infer U)[] ? U : Result>(): AuraPostgrestBuilder<ClientOptions, ResultOne | null, ThrowOnError>Аналогично single(), но 0 строк не являются ошибкой: data тогда null.
#
Сорт

АураПостгрестБилдер

Базовый класс: общее состояние, конструктор, выполнение HTTP (then/_execute), throwOnError и buildQueryString.

МетодОписание
throwOnError(): thisВыдает исключение (вместо возврата { error }) при сбое запроса.
buildQueryString(): stringСоздает строку запроса PostgREST (выбор, фильтры, сортировка, разбиение на страницы) без выполнения запроса; полезно для отладки.
then<TResult1 = AuraResponse<Result>, TResult2 = never>(onfulfilled?: ((value: AuraResponse<Result>) => TResult1 | PromiseLike<TResult1>) | null, onrejected?: ((reason: unknown) => TResult2 | PromiseLike<TResult2>) | null): Promise<TResult1 | TResult2>Выполняет запрос: сборщик «тогда доступен», достаточно простого await.
Сгенерированная страница

Эта страница создается на основе объявлений типов и комментариев SDK, поэтому она не может отличаться от опубликованного кода. Рабочие примеры можно найти в руководствах.

Последнее обновление · 12 окт. 2026 г.