Thawj qhov ruaj khov tso tawm ntawm cov duab sib txheeb DBMS EdgeDB

Thawj qhov kev tso tawm ruaj khov ntawm EdgeDB DBMS yog muaj, uas yog ib qho ntxiv rau PostgreSQL nrog rau kev siv cov ntaub ntawv sib txheeb graph cov qauv thiab cov lus nug EdgeQL, optimized rau kev ua hauj lwm nrog complex hierarchical cov ntaub ntawv. Cov cai tau sau hauv Python thiab Rust thiab muab faib raws li Apache 2.0 daim ntawv tso cai. Cov tsev qiv ntawv Client tau npaj rau Python, Mus, Rust thiab TypeScript / Javascript. Muab cov cuab yeej hais kom ua kab rau kev tswj hwm DBMS thiab sib tham sib nug ua tiav (REPL).

Hloov ntawm cov qauv ntaub ntawv raws li cov lus, EdgeDB siv cov lus tshaj tawm raws li hom khoom. Hloov cov yuam sij txawv teb chaws, kev sib txuas los ntawm kev siv yog siv los txheeb xyuas kev sib raug zoo ntawm hom (ib yam khoom siv tau los ua khoom ntawm lwm yam khoom). hom neeg {yuav tsum muaj lub npe khoom -> str; } hom Movie { xav tau lub npe khoom -> str; multi link actors -> Tus neeg; }

Indexs tuaj yeem siv los ua kom ceev cov lus nug. Cov yam ntxwv xws li kev ntaus ntawv muaj zog, kev txwv tus nqi ntawm cov cuab yeej, suav cov khoom, thiab cov txheej txheem khaws cia kuj tau txais kev txhawb nqa. Cov yam ntxwv ntawm EdgeDB cov tswv yim khaws cia, uas yog qhov tseem ceeb ntawm ORM, suav nrog lub peev xwm los sib xyaw schemas, txuas cov khoom los ntawm cov khoom sib txawv, thiab kev txhawb nqa JSON.

Built-in cov cuab yeej yog muab rau khaws cia schema tsiv teb tsaws - tom qab hloov lub schema teev nyob rau hauv ib tug cais esdl ntaub ntawv, cia li khiav lub "edgedb tsiv teb tsaws tsim" hais kom ua thiab DBMS yuav txheeb xyuas qhov sib txawv ntawm cov schema thiab sib tham sib tsim ib tsab ntawv rau migration mus rau lub tshiab schema. Cov keeb kwm ntawm schema hloov pauv tau raug taug qab.

Txhawm rau tsim cov lus nug, ob qho tib si GraphQL lus nug thiab cov lus EdgeDB tus tswv, uas yog kev hloov pauv ntawm SQL rau cov ntaub ntawv hierarchical, tau txais kev txhawb nqa. Hloov chaw ntawm cov npe, cov lus nug cov txiaj ntsig tau tsim nyob rau hauv txoj hauv kev, thiab tsis yog cov lus nug thiab koom nrog, koj tuaj yeem teev ib qho lus nug EdgeQL raws li kev qhia hauv lwm cov lus nug. Kev lag luam thiab cov voj voog raug txhawb. xaiv Movie { title, actors: { name } } filter .title = "The Matrix" insert Movie { title := "The Matrix Resurrections", lam := ( xaiv tus neeg lim .name hauv { 'Keanu Reeves', 'Carrie- Anne Moss', 'Laurence Fishburne' } ) } rau tus lej hauv {0, 1, 2, 3} union (xaiv {ntau, tus lej + 0.5 } );

Tau qhov twg los: opennet.ru

Ntxiv ib saib