Bastien Etienne
08/12/2022, 10:23 AMupsert
for Create if id not exist. So actually update work fine but when id not exist , the create part return me this error :
:42:29) {
code: 'P2023',
clientVersion: '4.0.0',
meta: {
message: 'Error creating UUID, invalid length: expected one of [36, 32], found 35'
}
}
This is the code
const updateFeature = await prisma.feature.upsert({
where: {
id: props.idFeature,
},
update: {
cibest_role_id: roleId.id,
create: props.create,
read: props.read,
update: props.update,
delete: props.delete,
service_name: props.service_name,
},
create: {
cibest_role_id: roleId.id,
create: props.create,
read: props.read,
update: props.update,
delete: props.delete,
service_name: props.service_name,
},
});
this is the feature model
model feature {
id String @id @default(dbgenerated("gen_random_uuid()")) @db.Uuid
date_created DateTime @default(now()) @db.Timestamp(6)
service_name service_name
create Boolean @default(false)
read Boolean @default(false)
update Boolean @default(false)
delete Boolean @default(false)
cibest_role_id String @db.Uuid
iconId String? @db.Uuid
cibest_role cibest_role @relation(fields: [cibest_role_id], references: [id])
icon icon? @relation(fields: [iconId], references: [id])
}
Nurul
08/12/2022, 1:06 PMNurul
08/12/2022, 1:07 PMNurul
08/12/2022, 1:08 PMroleId.id
Bastien Etienne
08/12/2022, 1:09 PMBastien Etienne
08/12/2022, 1:10 PMBastien Etienne
08/12/2022, 1:10 PMBastien Etienne
08/12/2022, 1:11 PMNurul
08/12/2022, 1:22 PMid
in create
clause?
import { PrismaClient } from '@prisma/client';
const prisma = new PrismaClient({
log: ['query'],
});
async function main() {
const id = '1597cc98-5a49-46e8-90da-879d6bf3e857';
const updateFeature = await prisma.feature.upsert({
where: {
id: id,
},
update: {
create: false,
read: false,
update: false,
delete: false,
// service_name: props.service_name,
},
create: {
cibest_role_id: id,
id: id,
create: false,
read: false,
update: false,
delete: false,
// service_name: props.service_name,
},
});
console.log(updateFeature);
}
main()
.catch((e) => {
throw e;
})
.finally(async () => {
await prisma.$disconnect();
});
Bastien Etienne
08/12/2022, 1:23 PMBastien Etienne
08/12/2022, 1:24 PMPrismaClientValidationError:
Invalid `prisma.feature.upsert()` invocation:
{
where: {
id: '00000000-0000-0000-0000-000000000000'
},
update: {
cibest_role_id: '7416ca10-d9c5-4e63-a6d5-c295210bbc10',
create: false,
read: true,
update: true,
delete: false,
service_name: 'infoVehiculService'
},
create: {
cibest_role_id: '7416ca10-d9c5-4e63-a6d5-c295210bbc10',
create: false,
read: true,
update: true,
delete: false,
service_name: 'infoVehiculService',
+ id: String,
? date_created?: DateTime,
? iconId?: String | null
}
}
Argument id for create.id is missing.
Note: Lines with + are required, lines with ? are optional.
Bastien Etienne
08/12/2022, 1:24 PMBastien Etienne
08/12/2022, 1:24 PMid _String_ @id @db.Uuid
Bastien Etienne
08/12/2022, 1:24 PMBastien Etienne
08/12/2022, 1:25 PMNurul
08/30/2022, 12:47 PM