Ugrás a tartalomhoz
100% helyi

SQL CREATE TABLE Prisma sémára

SQL CREATE TABLE utasítások konvertálása Prisma sémamodellekre.

Bemenet
Kimenet

SQL CREATE TABLE Prisma sémára

Illessz be egy vagy több SQL CREATE TABLE utasítást, és ez az eszköz megfelelő Prisma sémamodelleket ad vissza — oszlopadatokat, elsődleges kulcsokat, egyedi korlátozásokat és idegen kulcs relációkat. A PostgreSQL, MySQL vagy SQLite adatbázis Prisma projektbe való migrálásához vagy egy másik személy által nyers SQL-ben tervezett sémához való Prisma csatlakozáshoz készült.

Válassza ki a forrás adatbázist, hogy az oszlopadatok helyesen leképezhessenek — a MySQL ENUM, a PostgreSQL UUID vagy az SQLite JSON oszlop eltérő kezelésre szorul, és az eszköz bejelöli, ha az adattípus nem rendelkezik pontos Prisma megfelelővel. Kapcsolja be az egyes PascalCase elnevezést az idiomatikus modellnevek (users becomes User) @@map biztonsági másolatával, valamint a camelCase mezőneveket az idiomatikus Prisma mezőkhöz (full_name becomes fullName) @map biztonsági másolattal — mindkettő additív, így az alapul szolgáló adatbázis sémájának soha nem kell megváltoznia. Az idegen kulcsok, függetlenül attól, hogy soron belüliek, táblaszintű korlátozások vagy külön ALTER TABLE utasítás-e, megfelelő Prisma relációkká válnak mindkét oldalon, elnevezett relációval szétválasztva, ha egynél több idegen kulcs ugyanarra a táblára mutat.

Az alapértelmezett értékek is konvertálódnak: CURRENT_TIMESTAMP @default(now()) lesz, AUTO_INCREMENT és SERIAL @default(autoincrement()) lesz, a MySQL ON UPDATE CURRENT_TIMESTAMP pedig @updatedAt lesz. A null értékekre képes oszlopok záró kérdőjelet kapnak, az összetett kulcsok @@id-ek lesznek, az összetett vagy egyoszlopos egyedi korlátozások pedig @@unique vagy @unique lesz, az érvényesség függvényében. Bármi, amit az átalakító nem tud pontosan képviselni — egy nem támogatott adattípus, CHECK korlátozás vagy előjel nélküli egész szám — megjegyzéssel kell jelezni közvetlenül az érintett mező felett ahelyett, hogy csendesen elvetettük vagy sejtettünk volna.

Minden helyileg fut a böngészőjében: a sémája soha nem töltődik fel sehova, ami fontos, ha ezt a termelési adatbázist írja le. Másolja ki az eredményt, töltse le .txt fájlként a schema.prisma-ba való beillesztéshez, vagy küldje tovább az eredményt közvetlenül egy másik eszköz bemenetébe, hogy tovább szűkösen finomítsa azt.

Gyakori kérdések

Mely forrás adatbázisok támogatottak?
PostgreSQL, MySQL és SQLite. Válassza ki a megfelelőt a beállításokban — ez megváltoztatja, hogyan vannak leképezve az adattípusok, például UUID, JSON és előjel nélküli egészek, mivel a Prisma különbözőket támogatnak szolgáltatónként.
Hogyan konvertálódnak az idegen kulcsok?
Az oszlopon belüli referenciák, a táblaszintű FOREIGN KEY záradékok és a külön ALTER TABLE ... ADD FOREIGN KEY utasítások mind felismerésre kerülnek, és a Prisma relációvá alakulnak a referenciázó és a hivatkozott modellen egyaránt, az ON DELETE és ON UPDATE műveletek átvételével.
Mi történik egy olyan adattípussal, amelynek nincs Prisma megfelelője?
A legközelebbi elérhető típusra (általában String) képezi le, és a rés magyarázatával az érintett mező felett megjegyzés kerül hozzáadásra, így pontosan tudod, mit kell kézileg felülvizsgálni.
Az előállított modelnevek megfelelnek-e a táblaneveimnek?
Csak akkor, ha kikapcsolod az egyes PascalCase elnevezést. Bekapcsolt állapotban egy olyan tábla, mint order_items, az OrderItem modellé válik egy @@map("order_items") attribútummal, így a Prisma továbbra is a valós táblára mutat.
Az én sémám feltöltödik-e valahova?
Nem. Az átalakítás teljes egészében a böngészőjében történik — az SQL és az előállított Prisma séma soha nem hagyja el az eszközöd.