Ce qui s’exécute plus vite, et ce qui reste dans Prisma
Chaque fonctionnalité de Prisma Client que nous avons vérifiée, sur PostgreSQL et SQLite. Les écritures restent dans Prisma ; les lectures sont compilées en SQL lorsque la forme est prise en charge.
Méthodes de modèleOptions de requêteFiltresTriAgrégatsAPI clientTypes de résultat
25 des 73 fonctionnalités vérifiées sont entièrement accélérées sur PostgreSQL. 19 peuvent renvoyer un résultat différent de Prisma ; la carte complète les liste une par une avec la raison.
Nombre de fonctionnalités par statut| Statut | PostgreSQL | SQLite |
|---|
| Accéléré | 25 | 21 |
|---|
| Partiel | 6 | 6 |
|---|
| Repli sur Prisma | 9 | 7 |
|---|
| Exécuté par Prisma | 7 | 7 |
|---|
| Peut différer | 19 | 17 |
|---|
| Non disponible | 2 | 4 |
|---|
| prisma-sql uniquement | 5 | 2 |
|---|
| Absent de Prisma | 0 | 6 |
|---|
| Non vérifié | 0 | 3 |
|---|
Méthodes de modèle
findMany
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Méthodes de modèle
findFirst
- PostgreSQL
- Peut différer
- SQLite
- Peut différer
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Compilé avec LIMIT 1. cursor et un take négatif sont ignorés. distinct se replie sur Prisma.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Méthodes de modèle
findUnique
- PostgreSQL
- Partiel
- SQLite
- Partiel
Compilé en SQL ; certaines formes d’arguments se replient sur Prisma.
Compilé en SQL ; certaines formes d’arguments se replient sur Prisma.
Les clés uniques composées comme a_b: { a, b } se replient sur Prisma.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Méthodes de modèle
findUniqueOrThrow, findFirstOrThrow
- PostgreSQL
- Exécuté par Prisma
- SQLite
- Exécuté par Prisma
Non intercepté. Prisma Client l’exécute comme avant.
Non intercepté. Prisma Client l’exécute comme avant.
Non intercepté.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Méthodes de modèle
count
- PostgreSQL
- Peut différer
- SQLite
- Peut différer
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
select: { _all, field } est ignoré et un nombre est renvoyé au lieu d’un objet. Un take négatif se replie sur Prisma.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Méthodes de modèle
aggregate
- PostgreSQL
- Peut différer
- SQLite
- Peut différer
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
take, skip, cursor et orderBy sont ignorés, les totaux peuvent donc différer.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Méthodes de modèle
groupBy
- PostgreSQL
- Partiel
- SQLite
- Partiel
Compilé en SQL ; certaines formes d’arguments se replient sur Prisma.
Compilé en SQL ; certaines formes d’arguments se replient sur Prisma.
by sous forme de chaîne unique se replie sur Prisma. Le tri par agrégat devrait se replier sur Prisma (non vérifié).
Pris en charge par Prisma sur : PostgreSQL, SQLite
Méthodes de modèle
create, createMany, createManyAndReturn
- PostgreSQL
- Exécuté par Prisma
- SQLite
- Exécuté par Prisma
Non intercepté. Prisma Client l’exécute comme avant.
Non intercepté. Prisma Client l’exécute comme avant.
Les écritures ne sont pas interceptées.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Méthodes de modèle
update, updateMany, updateManyAndReturn
- PostgreSQL
- Exécuté par Prisma
- SQLite
- Exécuté par Prisma
Non intercepté. Prisma Client l’exécute comme avant.
Non intercepté. Prisma Client l’exécute comme avant.
Les écritures ne sont pas interceptées.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Méthodes de modèle
upsert, delete, deleteMany
- PostgreSQL
- Exécuté par Prisma
- SQLite
- Exécuté par Prisma
Non intercepté. Prisma Client l’exécute comme avant.
Non intercepté. Prisma Client l’exécute comme avant.
Les écritures ne sont pas interceptées.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Méthodes de modèle
findManyStream, findManyReduceStream
- PostgreSQL
- prisma-sql uniquement
- SQLite
- Non disponible
Ajouté par prisma-sql. Ne fait pas partie de l’API Prisma Client.
Prisma le prend en charge ; prisma-sql n’a pas d’équivalent.
Streaming de lignes. PostgreSQL uniquement ; SQLite lève une erreur.
Pris en charge par Prisma sur : Non
Options de requête
select
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Scalaires, relations et _count. Les champs inconnus se replient sur Prisma.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Options de requête
include
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Les requêtes qui dépassent les limites de profondeur, de fan-out ou d’include circulaire se replient sur Prisma.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Options de requête
omit (per query)
- PostgreSQL
- Peut différer
- SQLite
- Peut différer
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Ignoré. Les champs omis sont renvoyés.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Options de requête
omit (client option)
- PostgreSQL
- Peut différer
- SQLite
- Peut différer
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Non lu. Les champs omis dans new PrismaClient({ omit }) sont renvoyés.
Pris en charge par Prisma sur : PostgreSQL, SQLiteDéduit du code source ; non confirmé par une exécution de test.
Options de requête
distinct
- PostgreSQL
- Peut différer
- SQLite
- Partiel
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Compilé en SQL ; certaines formes d’arguments se replient sur Prisma.
PostgreSQL utilise DISTINCT ON ; lorsque orderBy ne commence pas par les champs distinct, l’ordre et take peuvent différer (non vérifié). SQLite avec cursor se replie sur Prisma.
Pris en charge par Prisma sur : PostgreSQL, SQLiteDéduit du code source ; non confirmé par une exécution de test.
Options de requête
take, skip
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Options de requête
Negative take
- PostgreSQL
- Partiel
- SQLite
- Partiel
Compilé en SQL ; certaines formes d’arguments se replient sur Prisma.
Compilé en SQL ; certaines formes d’arguments se replient sur Prisma.
Nécessite un orderBy sur des champs scalaires sélectionnés ; sinon, repli sur Prisma.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Options de requête
cursor
- PostgreSQL
- Peut différer
- SQLite
- Peut différer
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Lorsque la ligne du curseur n’existe pas, des lignes sont renvoyées ; Prisma renvoie une liste vide. Sans orderBy, l’ordre des lignes n’est pas déterminé.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Options de requête
relationLoadStrategy
- PostgreSQL
- Accéléré
- SQLite
- Absent de Prisma
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Prisma ne le prend pas en charge sur cette base de données.
Ignoré. Le planificateur de prisma-sql choisit comment les relations sont chargées.
Pris en charge par Prisma sur : PostgreSQL (preview)
Options de requête
_count in select / include
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Comptages filtrés pris en charge. _count: true à la racine peut aussi compter les relations to-one (non vérifié).
Pris en charge par Prisma sur : PostgreSQL, SQLite
Options de requête
Nested where, take, skip
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Options de requête
Nested orderBy
- PostgreSQL
- Partiel
- SQLite
- Partiel
Compilé en SQL ; certaines formes d’arguments se replient sur Prisma.
Compilé en SQL ; certaines formes d’arguments se replient sur Prisma.
Champs scalaires uniquement. Les champs de relation se replient sur Prisma.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Options de requête
Nested cursor, distinct
- PostgreSQL
- Peut différer
- SQLite
- Peut différer
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Appliqués à une seule requête enfant groupée pour tous les parents, et non par parent.
Pris en charge par Prisma sur : PostgreSQL, SQLiteDéduit du code source ; non confirmé par une exécution de test.
Filtres
equals, shorthand equality
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Filtres
not
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Les lignes NULL sont exclues, comme dans Prisma.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Filtres
in, notIn
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Les listes vides se comportent comme dans Prisma.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Filtres
lt, lte, gt, gte
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Une valeur null entraîne un repli sur Prisma.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Filtres
contains, startsWith, endsWith
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
% et _ ne sont pas échappés, comme dans Prisma.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Filtres
mode: 'insensitive'
- PostgreSQL
- Accéléré
- SQLite
- Absent de Prisma
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Prisma ne le prend pas en charge sur cette base de données.
PostgreSQL utilise ILIKE. Sur SQLite, où Prisma rejette mode, prisma-sql l’accepte et utilise LOWER().
Pris en charge par Prisma sur : PostgreSQL
Filtres
search (full-text)
- PostgreSQL
- Repli sur Prisma
- SQLite
- Absent de Prisma
Le générateur SQL le rejette et Prisma exécute la requête. Même résultat, sans accélération.
Prisma ne le prend pas en charge sur cette base de données.
Pris en charge par Prisma sur : PostgreSQL (preview)
Filtres
AND, OR, NOT
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Un OR vide ne correspond à rien, comme dans Prisma.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Filtres
some, every, none
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Filtres
is, isNot
- PostgreSQL
- Peut différer
- SQLite
- Peut différer
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Quand les deux sont fournis, isNot est ignoré.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Filtres
Scalar lists: has, hasSome, hasEvery, isEmpty, equals
- PostgreSQL
- Partiel
- SQLite
- Absent de Prisma
Compilé en SQL ; certaines formes d’arguments se replient sur Prisma.
Prisma ne le prend pas en charge sur cette base de données.
not n’accepte que { equals }. isEmpty traite les listes NULL comme vides.
Pris en charge par Prisma sur : PostgreSQL
Filtres
Json path filter { path, equals }
- PostgreSQL
- Repli sur Prisma
- SQLite
- Repli sur Prisma
Le générateur SQL le rejette et Prisma exécute la requête. Même résultat, sans accélération.
Le générateur SQL le rejette et Prisma exécute la requête. Même résultat, sans accélération.
Pris en charge par Prisma sur : PostgreSQL
Filtres
Json string_contains, string_starts_with, string_ends_with
- PostgreSQL
- Peut différer
- SQLite
- Peut différer
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Toujours insensible à la casse et comparé à l’ensemble du texte JSON.
Pris en charge par Prisma sur : PostgreSQL
Filtres
Json array_contains, array_starts_with, array_ends_with
- PostgreSQL
- Repli sur Prisma
- SQLite
- Repli sur Prisma
Le générateur SQL le rejette et Prisma exécute la requête. Même résultat, sans accélération.
Le générateur SQL le rejette et Prisma exécute la requête. Même résultat, sans accélération.
Pris en charge par Prisma sur : PostgreSQL
Filtres
DbNull, JsonNull, AnyNull
- PostgreSQL
- Peut différer
- SQLite
- Peut différer
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Le filtre peut être ignoré.
Pris en charge par Prisma sur : PostgreSQL, SQLiteDéduit du code source ; non confirmé par une exécution de test.
Filtres
Field references (model.fields.x)
- PostgreSQL
- Repli sur Prisma
- SQLite
- Repli sur Prisma
Le générateur SQL le rejette et Prisma exécute la requête. Même résultat, sans accélération.
Le générateur SQL le rejette et Prisma exécute la requête. Même résultat, sans accélération.
Pris en charge par Prisma sur : PostgreSQL, SQLiteDéduit du code source ; non confirmé par une exécution de test.
Filtres
Compound unique where
- PostgreSQL
- Repli sur Prisma
- SQLite
- Repli sur Prisma
Le générateur SQL le rejette et Prisma exécute la requête. Même résultat, sans accélération.
Le générateur SQL le rejette et Prisma exécute la requête. Même résultat, sans accélération.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Filtres
null, undefined
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
undefined est ignoré, comme dans Prisma.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Filtres
Decimal and Bytes values
- PostgreSQL
- Repli sur Prisma
- SQLite
- Repli sur Prisma
Le générateur SQL le rejette et Prisma exécute la requête. Même résultat, sans accélération.
Le générateur SQL le rejette et Prisma exécute la requête. Même résultat, sans accélération.
Pris en charge par Prisma sur : PostgreSQL, SQLiteDéduit du code source ; non confirmé par une exécution de test.
Filtres
Enum values
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Mappées vers les noms @map.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Tri
Scalar asc / desc
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Tri
{ sort, nulls }
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
SQLite émule NULLS FIRST / LAST.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Tri
Relation field
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Relations to-one, imbriquées.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Tri
Relation _count
- PostgreSQL
- Repli sur Prisma
- SQLite
- Repli sur Prisma
Le générateur SQL le rejette et Prisma exécute la requête. Même résultat, sans accélération.
Le générateur SQL le rejette et Prisma exécute la requête. Même résultat, sans accélération.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Tri
_relevance
- PostgreSQL
- Repli sur Prisma
- SQLite
- Absent de Prisma
Le générateur SQL le rejette et Prisma exécute la requête. Même résultat, sans accélération.
Prisma ne le prend pas en charge sur cette base de données.
Pris en charge par Prisma sur : PostgreSQL (preview)
Tri
groupBy by aggregate
- PostgreSQL
- Repli sur Prisma
- SQLite
- Repli sur Prisma
Le générateur SQL le rejette et Prisma exécute la requête. Même résultat, sans accélération.
Le générateur SQL le rejette et Prisma exécute la requête. Même résultat, sans accélération.
Pris en charge par Prisma sur : PostgreSQL, SQLiteDéduit du code source ; non confirmé par une exécution de test.
Tri
Optional relation { sort, nulls }
- PostgreSQL
- prisma-sql uniquement
- SQLite
- prisma-sql uniquement
Ajouté par prisma-sql. Ne fait pas partie de l’API Prisma Client.
Ajouté par prisma-sql. Ne fait pas partie de l’API Prisma Client.
Extension de type ajoutée par prisma-sql. Lève une erreur au lieu de se replier sur Prisma lorsque ce n’est pas pris en charge.
Pris en charge par Prisma sur : Non
Agrégats
_count, _sum, _avg, _min, _max
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Agrégats
groupBy having
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
equals, not, gt, gte, lt, lte, in, notIn. Les autres opérateurs se replient sur Prisma.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Agrégats
groupBy take, skip
- PostgreSQL
- Accéléré
- SQLite
- Accéléré
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Acceptés sans orderBy ; Prisma l’exige.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Agrégats
aggregate take, skip, cursor, orderBy
- PostgreSQL
- Peut différer
- SQLite
- Peut différer
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Ignorés.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Agrégats
_count: true result shape
- PostgreSQL
- Peut différer
- SQLite
- Peut différer
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Renvoie { _all: n } ; Prisma renvoie n.
Pris en charge par Prisma sur : PostgreSQL, SQLiteDéduit du code source ; non confirmé par une exécution de test.
API client
$transaction(async (tx) => …)
- PostgreSQL
- Exécuté par Prisma
- SQLite
- Exécuté par Prisma
Non intercepté. Prisma Client l’exécute comme avant.
Non intercepté. Prisma Client l’exécute comme avant.
S’exécute sur le client de base. Les lectures dans le callback ne sont pas accélérées.
Pris en charge par Prisma sur : PostgreSQL, SQLite
API client
$transaction([…])
- PostgreSQL
- Peut différer
- SQLite
- Peut différer
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Les lectures accélérées peuvent s’exécuter sur la connexion prisma-sql, en dehors de la transaction Prisma.
Pris en charge par Prisma sur : PostgreSQL, SQLiteDéduit du code source ; non confirmé par une exécution de test.
API client
$transaction([{ model, method, args }])
- PostgreSQL
- prisma-sql uniquement
- SQLite
- Non disponible
Ajouté par prisma-sql. Ne fait pas partie de l’API Prisma Client.
Prisma le prend en charge ; prisma-sql n’a pas d’équivalent.
Forme propre à prisma-sql, avec niveau d’isolation et timeout. PostgreSQL uniquement.
Pris en charge par Prisma sur : Non
API client
$queryRaw, $executeRaw
- PostgreSQL
- Exécuté par Prisma
- SQLite
- Exécuté par Prisma
Non intercepté. Prisma Client l’exécute comme avant.
Non intercepté. Prisma Client l’exécute comme avant.
Pris en charge par Prisma sur : PostgreSQL, SQLite
API client
$queryRawTyped (TypedSQL)
- PostgreSQL
- Exécuté par Prisma
- SQLite
- Exécuté par Prisma
Non intercepté. Prisma Client l’exécute comme avant.
Non intercepté. Prisma Client l’exécute comme avant.
Pris en charge par Prisma sur : PostgreSQL, SQLite (preview)Déduit du code source ; non confirmé par une exécution de test.
API client
findUnique batching
- PostgreSQL
- Non disponible
- SQLite
- Non disponible
Prisma le prend en charge ; prisma-sql n’a pas d’équivalent.
Prisma le prend en charge ; prisma-sql n’a pas d’équivalent.
Chaque findUnique exécute sa propre requête SQL.
Pris en charge par Prisma sur : PostgreSQL, SQLite
API client
log, $on('query')
- PostgreSQL
- Partiel
- SQLite
- Partiel
Compilé en SQL ; certaines formes d’arguments se replient sur Prisma.
Compilé en SQL ; certaines formes d’arguments se replient sur Prisma.
Les requêtes accélérées n’apparaissent pas dans les logs Prisma. Utilisez debug ou onQuery.
Pris en charge par Prisma sur : PostgreSQL, SQLiteDéduit du code source ; non confirmé par une exécution de test.
API client
$batch, $batchCount
- PostgreSQL
- prisma-sql uniquement
- SQLite
- Non disponible
Ajouté par prisma-sql. Ne fait pas partie de l’API Prisma Client.
Prisma le prend en charge ; prisma-sql n’a pas d’équivalent.
Plusieurs lectures en un seul aller-retour. BigInt et Decimal sont renvoyés sous forme de nombres JS.
Pris en charge par Prisma sur : Non
API client
createShardedReader
- PostgreSQL
- prisma-sql uniquement
- SQLite
- prisma-sql uniquement
Ajouté par prisma-sql. Ne fait pas partie de l’API Prisma Client.
Ajouté par prisma-sql. Ne fait pas partie de l’API Prisma Client.
Renvoie des lignes brutes : aucune conversion de type, aucun mapping d’enum.
Pris en charge par Prisma sur : Non
API client
Multiple schemas (@@schema)
- PostgreSQL
- Non disponible
- SQLite
- Absent de Prisma
Prisma le prend en charge ; prisma-sql n’a pas d’équivalent.
Prisma ne le prend pas en charge sur cette base de données.
Le schéma est fixé à public.
Pris en charge par Prisma sur : PostgreSQL
Types de résultat
Decimal
- PostgreSQL
- Peut différer
- SQLite
- Non vérifié
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Le comportement sur cette base de données n’a pas encore été vérifié.
Chaîne sur les lignes plates, nombre dans les relations incluses. Les agrégats renvoient Prisma.Decimal.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Types de résultat
BigInt
- PostgreSQL
- Peut différer
- SQLite
- Non vérifié
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Le comportement sur cette base de données n’a pas encore été vérifié.
Chaîne sur les lignes plates, nombre dans les relations incluses. Les agrégats renvoient bigint.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Types de résultat
DateTime
- PostgreSQL
- Peut différer
- SQLite
- Peut différer
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
PostgreSQL : Date sur les lignes plates, chaîne dans les relations incluses. SQLite : nombre ou chaîne brut.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Types de résultat
Boolean
- PostgreSQL
- Accéléré
- SQLite
- Peut différer
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
SQLite renvoie 0 / 1.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Types de résultat
Bytes
- PostgreSQL
- Peut différer
- SQLite
- Non vérifié
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Le comportement sur cette base de données n’a pas encore été vérifié.
Buffer sur les lignes plates, chaîne hexadécimale dans les relations incluses.
Pris en charge par Prisma sur : PostgreSQL, SQLiteDéduit du code source ; non confirmé par une exécution de test.
Types de résultat
Json
- PostgreSQL
- Accéléré
- SQLite
- Peut différer
Compilé en SQL et exécuté via postgres.js ou better-sqlite3.
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
SQLite renvoie la chaîne JSON brute en l’absence d’include.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Types de résultat
Enum with @map
- PostgreSQL
- Peut différer
- SQLite
- Peut différer
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
Accéléré, mais le résultat peut différer de celui de Prisma sans erreur.
La valeur stockée en base est renvoyée, pas le nom défini dans le schéma.
Pris en charge par Prisma sur : PostgreSQL, SQLite
Ouvrir la carte de parité complète