Ga naar inhoud
100% lokaal

SQL CREATE TABLE naar Prisma-schema converteren

SQL CREATE TABLE-instructies naar Prisma-schemamodellen converteren.

Invoer
Uitvoer

SQL CREATE TABLE naar Prisma-schema converteren

Plak een of meer SQL CREATE TABLE-instructies in en dit hulpmiddel geeft overeenkomstige Prisma-schemamodellen terug — inclusief kolomtypen, primaire sleutels, unieke beperkingen en vreemde-sleutelrelaties. Het is gebouwd voor ontwikkelaars die een bestaande PostgreSQL-, MySQL- of SQLite-database migreren naar een Prisma-project, of Prisma gebruiken tegen een schema dat iemand anders in pure SQL heeft ontworpen.

Selecteer de brondatabase zodat kolomtyppeertoewijzingen correct zijn — een MySQL ENUM, een PostgreSQL UUID of een SQLite JSON-kolom hebben elk verschillende behandeling nodig, en het hulpmiddel noteert dit inline wanneer een type geen exact Prisma-equivalent heeft. Schakel naamgeving in singuliere PascalCase in om idiomatische modelnamen te krijgen (users wordt User) met een @@map terug naar de echte tabel, en camelCase-veldnamen voor idiomatische Prisma-velden (full_name wordt fullName) met een @map terug naar de echte kolom — beide zijn additief, dus het onderliggende databaseschema hoeft nooit te veranderen. Vreemde sleutels, of ze nu inline zijn gedeclareerd, als een beperking op tabelniveau of via een afzonderlijke ALTER TABLE-instructie, worden juiste Prisma-relaties aan beide zijden, ondubbelzinnig gemaakt met een benoemde relatie wanneer meer dan één vreemde sleutel naar dezelfde tabel wijst.

Standaardwaarden worden ook geconverteerd: CURRENT_TIMESTAMP wordt @default(now()), AUTO_INCREMENT en SERIAL worden @default(autoincrement()), en MySQLs ON UPDATE CURRENT_TIMESTAMP wordt @updatedAt. Nullable-kolommen krijgen een volgend vraagteken, samengestelde sleutels worden @@id, en samengestelde of enkele kolom unieke beperkingen worden @@unique of @unique afhankelijk van bereik. Alles wat de converter niet exact kan weergeven — een niet-ondersteund type, een CHECK-beperking, een niet-ondertekend geheel getal — wordt aangeroepen met een opmerking direct boven het betreffende veld in plaats van stilzwijgend te worden verwijderd of geraden.

Alles wordt lokaal in uw browser uitgevoerd: uw schema wordt nergens geüpload, wat van belang is als het een productiedatabase beschrijft. Kopieer het resultaat, download het als .txt-bestand om in schema.prisma in te plakken, of stuur de uitvoer rechtstreeks naar de invoer van een ander hulpmiddel om deze verder te verfijnen.

FAQ

Welke brondatabases worden ondersteund?
PostgreSQL, MySQL en SQLite. Selecteer de juiste in de opties — het verandert hoe typen zoals UUID, JSON en niet-ondertekende gehele getallen worden toegewezen, omdat Prisma verschillende native typen per provider ondersteunt.
Hoe worden vreemde sleutels geconverteerd?
Inline-kolomverwijzingen, FOREIGN KEY-beperkingen op tabelniveau en afzonderlijke ALTER TABLE ... ADD FOREIGN KEY-instructies worden allemaal herkend en omgezet in een Prisma-relatie aan beide zijden van het verwijzende en verwezen model, met ON DELETE en ON UPDATE-acties overgedragen.
Wat gebeurt er met een type dat geen Prisma-equivalent heeft?
Het wordt toegewezen aan het dichtstbijzijnde beschikbare type (meestal String) en een opmerking wordt direct boven dat veld toegevoegd die de hiaat verklaart, zodat u precies weet wat u handmatig moet controleren.
Komen de gegenereerde modelnamen overeen met mijn tabelnamen?
Alleen als u naamgeving in singuliere PascalCase uitschakelt. Als u het ingeschakeld laat, wordt een tabel als order_items model OrderItem met een @@map("order_items")-kenmerk, zodat Prisma nog steeds naar de echte tabel verwijst.
Wordt mijn schema ergens geüpload?
Nee. De conversie wordt volledig in uw browser uitgevoerd — uw SQL en het gegenereerde Prisma-schema verlaten nooit uw apparaat.