From 1f4eb87a224bce0f8b6a80995f86396152ec41c3 Mon Sep 17 00:00:00 2001 From: Julius de Bruijn Date: Wed, 28 Oct 2020 09:43:46 +0100 Subject: [PATCH] Fix SQL Server features - Doesn't have support for arrays or enums - Uuid supported natively - `autoincrement` through `SERIAL(1,1)` - `now` through `GET_DATE` --- .../01-database-features.mdx | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/content/03-reference/02-database-connectors/01-database-features.mdx b/content/03-reference/02-database-connectors/01-database-features.mdx index 5a22e14f33..4d2dc12252 100644 --- a/content/03-reference/02-database-connectors/01-database-features.mdx +++ b/content/03-reference/02-database-connectors/01-database-features.mdx @@ -90,8 +90,8 @@ Lock option (MySQL): | Feature | PostgreSQL | SQL Server | MySQL | SQLite | Prisma schema | Prisma Client | Prisma Migrate | | :-------------------------------- | :--------- | :--------- |:---- | :----- | :--------------------------------------------------------------------------------------------- | ------------- | -------------- | | Autoincrementing IDs | ✔️ | ✔️ | ✔️ | | ✔️ | [`autoincrement()`](../tools-and-interfaces/prisma-schema/data-model#defining-a-default-value) | ✔️ | ✔️ | -| Arrays | ✔️ | ✔️ | No | No | [`[]`](../tools-and-interfaces/prisma-schema/data-model#type-modifiers) | ✔️ | ✔️ | -| Enums | ✔️ | ✔️ | ✔️ | No | [`enum`](../tools-and-interfaces/prisma-schema/data-model#defining-enums) | ✔️ | ✔️ | +| Arrays | ✔️ | No | No | No | [`[]`](../tools-and-interfaces/prisma-schema/data-model#type-modifiers) | ✔️ | ✔️ | +| Enums | ✔️ | No | ✔️ | No | [`enum`](../tools-and-interfaces/prisma-schema/data-model#defining-enums) | ✔️ | ✔️ | | Native database types | ✔️ | ✔️ | ✔️ | ✔️ | Not yet | ✔️ | Not yet | | SQL Views | ✔️ | ✔️ | ✔️ | ✔️ | Not yet | Not yet | Not yet | | Authorization and user management | ✔️ | ✔️ | ✔️ | No | Not yet | Not yet | Not yet | @@ -118,20 +118,20 @@ The following functions are implemented by Prisma's query engine: `uuid()` and `cuid()` are commonly used to set default values for [ID](../tools-and-interfaces/prisma-schema/data-model#defining-an-id-field) fields. - The following functions are available in Prisma and map to underlying database features: -| Name | PostgreSQL | MySQL | SQLite | Description | -| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------- | ------------------------------------- | -| `autoincrement()` | via the `SERIAL` type | via the `AUTO_INCREMENT` keyword | via the `AUTOINCREMENT` keyword | Generates an autoincrementing integer | -| `now()` | [`CURRENT_TIMESTAMP`](https://www.postgresql.org/docs/current/functions-datetime.html#FUNCTIONS-DATETIME-CURRENT) and aliases like `now()` | [`CURRENT_TIMESTAMP`](https://dev.mysql.com/doc/refman/8.0/en/date-and-time-functions.html#function_current-timestamp) and aliases like `now()` | `date('now')` | Returns the current time | +| Name | PostgreSQL | SQL Server | MySQL | SQLite | Description | +| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ------------------------------- | ------------------------------------- | +| `autoincrement()` | via the `SERIAL` type | IDENTITY(1,1) | via the `AUTO_INCREMENT` keyword | via the `AUTOINCREMENT` keyword | Generates an autoincrementing integer | +| `now()` | [`CURRENT_TIMESTAMP`](https://www.postgresql.org/docs/current/functions-datetime.html#FUNCTIONS-DATETIME-CURRENT) and aliases like `now()` | [GET_DATE](https://docs.microsoft.com/en-us/sql/t-sql/functions/getdate-transact-sql?view=sql-server-ver15) | [`CURRENT_TIMESTAMP`](https://dev.mysql.com/doc/refman/8.0/en/date-and-time-functions.html#function_current-timestamp) and aliases like `now()` | `date('now')` | Returns the current time | `autoincrement()` is commonly used to generated autoincrementing [ID](../tools-and-interfaces/prisma-schema/data-model ../tools-and-interfaces/prisma-schema/data-model#defining-an-id-field) values. `now()` is commonly used to initialize "createdAt"-fields that store the point in time when a record was created.