Preskoči na vsebino
100% lokalno

SQL shema v TypeORM entiteto

Spremenite CREATE TABLE izjave v razrede entitet TypeORM z okrasi in relacijami.

Vhod
Izhod

SQL shema v TypeORM entiteto

Prilepite eno ali več SQL CREATE TABLE izjav in to orodje vrne razrede entitet TypeORM, pripravljene za vstavitev v projekt NestJS ali Node.js — @Entity, @Column, @PrimaryGeneratedColumn in okraske relacij, ki jih pričakuje TypeORM, generirane neposredno iz sheme, ki jo že imate.

Mogočnosti nadzorujejo, kako prihajajo razredi: izberite postgres, mysql ali sqlite kot ciljno podatkovno bazo, ker imena vrst stolpcev, kot so uuid, jsonb ali tinyint, obstajajo le na nekaterih od njih. Tuji ključi postanejo @ManyToOne in @OneToMany pari, čista tabela spajanja — dva tuja ključa in nič drugega — se zreducira v pravi @ManyToMany z @JoinTable. Stolpci s snake_case se lahko samodejno preslikajo v lastnosti camelCase, z dodano možnostjo imena, kjer se razlikujeta, indeksi in edinstvena omejena pa se prikažejo kot okrasi @Index in @Unique na ravni razreda. Izklopite privzete vrednosti ali zaznavanje relacij, ko želite le golo obliko stolpca.

Pristupaču razumejo navedene identifikatorje, vgrajene in omejitve na ravni tabele, stavke CHECK in COMMENT ter Unix in Windows konce vrstic, zato se izvoz sheme, kopiran iz psql, mysqldump ali datoteke migracije, uporablja kot je. Ravnati je mogoče tudi z zelo velikimi shemami, vendar generirani kod nad 10 MB vrne sporočilo, ki vas prosim, da skrajšate vnos namesto zamrzovanja zavihka.

Vse se izvaja v vašem brskalniku — nobena shema, ime tabele ali stolpec nikoli ne zapusti vaše naprave. Kopirajte rezultat, prenesite ga kot datoteko .txt, da sami razdelite na entitete po datoteki, ali ga pošljite direktno nazaj v vnos, da nadaljujete s prefinjenjem iste sheme.

FAQ

Katere relacije prepoznava?
Tuji ključi postanejo @ManyToOne/@OneToMany pari. Tabela, ki je sestavljena iz točno dveh tujih ključev in ničesar drugega, se prepozna kot tabela spajanja in postane @ManyToMany z @JoinTable namesto lastnega razreda.
Kako se izberejo vrste stolpcev?
Vsaka SQL vrsta se preslika v najbližjo vrsto stolpca TypeORM za izbrano podatkovno bazo, ki ste je izbrali — na primer uuid ostane uuid na PostgreSQL-u, vendar postane varchar(36) na MySQL-u in SQLite-u, ker niti ena nima izvirne vrste stolpca UUID.
Ali lahko generiram eno datoteko na entiteto?
Da. Vključite "Razdeli v eno datoteko na entiteto", da dobite zaglavlje komentarja in svojo izjavo import za vsak razred, pripravljen za lepljenje v ločene datoteke *.entity.ts.
Kaj se zgodi s sestavljenimi primarnimi ključi?
Vsak stolpec sestavljenega primarnega ključa dobi svojo @PrimaryColumn(); samodejno povečevanje in generiranje UUID se nanašata samo na enostolpični ključ.
Je moja podatkovna shema negdje naložena?
Ne. Razčlenjevanje in generiranje kode se izvršata povsem v vašem brskalniku — SQL, ki ga prilepite, nikoli ne zapusti vaše naprave.