DBMS EdgeDB සම්බන්ධක ප්‍රස්ථාරයේ පළමු ස්ථාවර නිකුතුව

EdgeDB DBMS හි පළමු ස්ථායී නිකුතුව ලබා ගත හැකි අතර, එය සංකීර්ණ ධුරාවලි දත්ත සමඟ වැඩ කිරීම සඳහා ප්‍රශස්තිකරණය කරන ලද සම්බන්ධතා ප්‍රස්ථාර දත්ත ආකෘතිය සහ EdgeQL විමසුම් භාෂාව ක්‍රියාත්මක කිරීම සමඟ PostgreSQL වෙත ඇඩෝනයක් වේ. කේතය Python සහ Rust වලින් ලියා ඇති අතර Apache 2.0 බලපත්‍රය යටතේ බෙදා හරිනු ලැබේ. සේවාලාභී පුස්තකාල Python, Go, Rust සහ TypeScript/Javascript සඳහා සූදානම් කර ඇත. DBMS කළමනාකරණය සහ අන්තර්ක්‍රියාකාරී විමසුම් ක්‍රියාත්මක කිරීම (REPL) සඳහා විධාන රේඛා මෙවලම් සපයයි.

වගු මත පදනම් වූ දත්ත ආකෘතියක් වෙනුවට, EdgeDB වස්තු වර්ග මත පදනම් වූ ප්රකාශන පද්ධතියක් භාවිතා කරයි. විදේශීය යතුරු වෙනුවට, වර්ග අතර සම්බන්ධතාවය නිර්වචනය කිරීම සඳහා යොමු කිරීම මගින් සම්බන්ධ කිරීම භාවිතා කරයි (එක් වස්තුවක් වෙනත් වස්තුවක දේපලක් ලෙස භාවිතා කළ හැක). පුද්ගලයා {අවශ්‍ය දේපල නම -> str; } වර්ගය චිත්‍රපටය {අවශ්‍ය දේපල මාතෘකාව -> str; බහු සම්බන්ධක නළුවන් -> පුද්ගලයා; }

විමසුම් සැකසීම වේගවත් කිරීමට දර්ශක භාවිතා කළ හැක. ශක්තිමත් දේපල ටයිප් කිරීම, දේපල වටිනාකම සීමා කිරීම්, ගණනය කළ ගුණාංග සහ ගබඩා කර ඇති ක්‍රියා පටිපාටි වැනි විශේෂාංග ද සහාය වේ. EdgeDB වස්තු ගබඩා යෝජනා ක්‍රමයේ විශේෂාංග, එය ORM එකකට තරමක් සමාන වේ, ක්‍රම මිශ්‍ර කිරීමේ හැකියාව, විවිධ වස්තූන්ගෙන් ගුණාංග සම්බන්ධ කිරීම සහ ඒකාබද්ධ JSON සහාය ඇතුළත් වේ.

ක්‍රම සංක්‍රමණය ගබඩා කිරීම සඳහා ගොඩනඟන ලද මෙවලම් සපයනු ලැබේ - වෙනම esdl ගොනුවක දක්වා ඇති ක්‍රමලේඛය වෙනස් කිරීමෙන් පසු, “edgedb migration create” විධානය ක්‍රියාත්මක කරන්න, DBMS විසින් යෝජනා ක්‍රමයේ වෙනස්කම් විශ්ලේෂණය කර අන්තර්ක්‍රියාකාරීව සංක්‍රමණය සඳහා ස්ක්‍රිප්ට් ජනනය කරනු ඇත. නව යෝජනා ක්රමය. යෝජනා ක්‍රම වෙනස්වීම් වල ඉතිහාසය ස්වයංක්‍රීයව නිරීක්ෂණය කෙරේ.

විමසුම් උත්පාදනය කිරීම සඳහා, GraphQL විමසුම් භාෂාව සහ ධූරාවලි දත්ත සඳහා SQL අනුවර්තනයක් වන හිමිකාර EdgeDB භාෂාව යන දෙකටම සහය දක්වයි. ලැයිස්තු වෙනුවට, විමසුම් ප්‍රතිඵල ව්‍යුහගත ආකාරයෙන් හැඩගස්වා ඇති අතර, උප විමසුම් සහ JOINs වෙනුවට, ඔබට එක් EdgeQL විමසුමක් වෙනත් විමසුමක් තුළ ප්‍රකාශනයක් ලෙස සඳහන් කළ හැක. ගනුදෙනු සහ චක්‍ර සඳහා සහය දක්වයි. චිත්‍රපටය තෝරන්න { මාතෘකාව, නළුවන්: { නම } } ෆිල්ටරය .title = "The Matrix" චිත්‍රපටය ඇතුළු කරන්න { මාතෘකාව := "The Matrix Resurrections", නළුවන් := ( {'Keanu Reeves', 'Carrie- හි පුද්ගල පෙරහන .නම තෝරන්න ඈන් මොස්', 'ලෝරන්ස් ෆිෂ්බර්න්' }) } {0, 1, 2, 3} සංගමයේ අංකය සඳහා ( {අංකය, අංකය + 0.5} තෝරන්න);

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න