I'm facing an issue with Prisma Client initialization after running npx prisma generate. Here's the error I'm encountering:
PS C:\Users\USER\DataAnalytics> node Scripts/loadData.js
[class PrismaClient]
C:\Users\USER\DataAnalytics\node_modules\.prisma\client\default.js:43
throw new Error('@prisma/client did not initialize yet. Please run "prisma generate" and try to import it again.');
^
Error: @prisma/client did not initialize yet. Please run "prisma generate" and try to import it again.
at new PrismaClient (C:\Users\USER\DataAnalytics\node_modules\.prisma\client\default.js:43:11)
at Object.<anonymous> (C:\Users\USER\DataAnalytics\Scripts\loadData.js:5:16)
at Module._compile (node:internal/modules/cjs/loader:1554:14)
at Object..js (node:internal/modules/cjs/loader:1706:10)
at Module.load (node:internal/modules/cjs/loader:1289:32)
at Function._load (node:internal/modules/cjs/loader:1108:12)
at TracingChannel.traceSync (node:diagnostics_channel:322:14)
at wrapModuleLoad (node:internal/modules/cjs/loader:220:24)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:170:5)
at node:internal/main/run_main_module:36:49
Node.js v22.14.0
Load Data.js
const fs = require('fs');
const csv = require('csv-parser');
const { PrismaClient } = require('@prisma/client');
console.log(PrismaClient); // Added this for debugging
const prisma = new PrismaClient();
const path = require('path');
async function ImportMatches() {
const results = [];
fs.createReadStream(path.join(__dirname, 'matches.csv'))
.pipe(csv())
.on('data', (data) => {
results.push({
id: parseInt(data.id),
season: parseInt(data.season),
date: new Date(data.date),
team1: data.team1,
team2: data.team2,
// (other fields trimmed for brevity)
});
})
.on('end', async () => {
for (const match of results) {
await prisma.match.create({ data: match });
}
console.log('Matches imported successfully!');
await prisma.$disconnect();
})
.on('error', (error) => {
console.error('CSV read error:', error);
});
}
ImportMatches();
when i run npx prisma generate
PS C:\Users\USER\DataAnalytics> npx prisma generate
Environment variables loaded from .env
Prisma schema loaded from prisma\schema.prisma
✔ Generated Prisma Client (v6.6.0) to .\generated\prisma in 102ms
Start by importing your Prisma Client (See: https://pris.ly/d/importing-client)
Tip: Easily identify and fix slow SQL queries in your app. Optimize helps you enhance your visibility: https://pris.ly/--optimize
node Scripts/loadData.js
Things I’ve tried:
Running npx prisma generate again.
Checking node_modules/@prisma/client for the generated client.
Rebuilding node_modules by deleting node_modules and package-lock.json, then running npm install.
I’m using Node.js v22.14.0, Prisma v6.6.0, and PostgreSQL as the database.
Since your generated prisma client resides in .\generated\prisma folder, you need to import the client from this folder.
So, your problem will be solved if you change your import;
from;
const { PrismaClient } = require('@prisma/client');
to;
const { PrismaClient } = require('./generated/prisma/client');
if this does not work, you can also try this one below additionally;
const path = require('path');
const { PrismaClient } = require(path.join('.', 'generated', 'prisma', 'client.js'));
for more info: prisma generated client doc