Preskoči na vsebino
100% lokalno

SQL CREATE TABLE v Prisma shemo

Pretvori SQL CREATE TABLE stavke v Prisma schema modele.

Vhod
Izhod

SQL CREATE TABLE v Prisma shemo

Prilepi eno ali več SQL CREATE TABLE stavk in to orodje vrne ustrezne Prisma schema modele — tipi stolpcev, primarni ključi, edinstvena ograničenja in relacije tujih ključev vključene. Zgrajeno je za razvojne programerje, ki migrirajo obstoječo PostgreSQL, MySQL ali SQLite bazo podatkov v Prisma projekt, ali povezujejo Prismo s shemo, ki jo je nekdo drug zasnoval v čistem SQL-u.

Izberi izvorno bazo podatkov, da se tipi stolpcev pravilno mapirajo — MySQL ENUM, PostgreSQL UUID ali SQLite JSON stolpec vsak potrebuje drugačno rokovanje, in orodje to zapiše na mestu, ko tip nima točnega Prisma enakovrednika. Vključi singular PascalCase imenovanje, da dobiš idiomatska imena modelov (users postane User) z @@map nazaj na pravo tabelo, in camelCase imena polj, da dobiš idiomatska Prisma polja (full_name postane fullName) z @map nazaj na pravi stolpec — oba sta aditivna, zato osnovna shema baze podatkov nikoli ne mora biti spremenjena. Tuji ključi, bodisi deklarirani vgrajeni, kot ograničenje na ravni tabele ali preko ločene ALTER TABLE stavke, postanejo ustrezne Prisma relacije na obeh straneh, razločene z imenovanim odnosom, ko več tujih ključev kaže na isto tabelo.

Privzete vrednosti se tudi pretvorijo: CURRENT_TIMESTAMP postane @default(now()), AUTO_INCREMENT in SERIAL postanejo @default(autoincrement()), MySQL-ov ON UPDATE CURRENT_TIMESTAMP pa postane @updatedAt. Polja, ki so lahko NULL, dobijo vprašaj, sestavljeni ključi postanejo @@id, in sestavljena ali enostolpčna edinstvena ograničenja postanejo @@unique ali @unique odvisno od obsega. Vse, kar pretvornik ne more predstaviti točno — nepodprta vrsta, CHECK ograničenje, nepredznačeno celo število — je navedeno s komentarjem tik nad vpletenim poljem namesto da bi bilo tiho izpuščeno ali ugibano.

Vse se izvršava lokalno v tvem brskalniku: tvoja shema se nikoli ne pošlje nikamor, kar je pomembno, če opisuje produkcijsko bazo podatkov. Kopiraj rezultat, ga preuzemi kot .txt datoteko za lepljenje v schema.prisma, ali pošlji izhod neposredno na vhod drugega orodja, da ga nadaljuješ izvajati.

FAQ

Katere izvorne baze podatkov so podprte?
PostgreSQL, MySQL in SQLite. Izberi pravilno v možnostih — to spremeni, kako se tipi, kot so UUID, JSON in nepredznačena cela števila, mapirajo, ker Prisma podpira različne izvorske tipe na ponudnika.
Kako se tuji ključi pretvorijo?
Vgrajeni sklici stolpcev, ograničenja na ravni tabele FOREIGN KEY in ločene ALTER TABLE ... ADD FOREIGN KEY stavke so vse prepoznane in pretvorjene v Prisma relacijo na obeh straneh referencirajočega in referencijanega modela, z akcijami ON DELETE in ON UPDATE prenesene.
Kaj se zgodi s tipom, ki nima Prisma enakovrednika?
Mapira se na najbliži dostopni tip (običajno String) in komentar se doda nad tem poljem, ki pojasni vrzel, tako da točno veš, kaj moraš pregledati ročno.
Ali se bodo generirana imena modelov ujemala z mojimi imeni tabel?
Samo, če izključiš singular PascalCase imenovanje. Če ostane vključeno, tabela, kot je order_items, postane model OrderItem z @@map("order_items") atributom, zato Prisma še vedno kaže na pravo tabelo.
Ali se moja shema nekje pošlje?
Ne. Pretvorka se izvršuje popolnoma v tvojem brskalniku — tvoj SQL in generirana Prisma shema nikoli ne zapustita tvojo napravo.