<?xml version="1.0"?>
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" dtd-version="1.4" xsi:noNamespaceSchemaLocation="https://jats.nlm.nih.gov/archiving/1.4/xsd/JATS-archivearticle1.xsd" xml:lang="ru">
  <front>
    <journal-meta>
      <journal-id journal-id-type="ojs">emr</journal-id>
      <journal-title-group>
        <journal-title xml:lang="ru">&#x423;&#x43F;&#x440;&#x430;&#x432;&#x43B;&#x435;&#x43D;&#x438;&#x435; &#x43E;&#x431;&#x440;&#x430;&#x437;&#x43E;&#x432;&#x430;&#x43D;&#x438;&#x435;&#x43C;: &#x442;&#x435;&#x43E;&#x440;&#x438;&#x44F; &#x438; &#x43F;&#x440;&#x430;&#x43A;&#x442;&#x438;&#x43A;&#x430;</journal-title>
        <trans-title-group xml:lang="en">
          <trans-title>Education Management Review</trans-title>
        </trans-title-group>
      </journal-title-group>
      <issn pub-type="epub">2311-2174</issn>
      <publisher>
        <publisher-name>&#x418;&#x43D;&#x434;&#x438;&#x432;&#x438;&#x434;&#x443;&#x430;&#x43B;&#x44C;&#x43D;&#x44B;&#x439; &#x43F;&#x440;&#x435;&#x434;&#x43F;&#x440;&#x438;&#x43D;&#x438;&#x43C;&#x430;&#x442;&#x435;&#x43B;&#x44C; &#x41F;&#x43E;&#x434;&#x43A;&#x43E;&#x43B;&#x437;&#x438;&#x43D; &#x41C;.&#x41C;.</publisher-name>
      </publisher>
      <self-uri xlink:href="https://emreview.ru/index.php/emr"/>
    </journal-meta>
    <article-meta>
      <article-id pub-id-type="publisher-id">2159</article-id>
      <article-categories>
        <subj-group xml:lang="ru_RU" subj-group-type="heading">
          <subject>DATA SCIENCE &#x412; &#x423;&#x41F;&#x420;&#x410;&#x412;&#x41B;&#x415;&#x41D;&#x418;&#x418; &#x41E;&#x411;&#x420;&#x410;&#x417;&#x41E;&#x412;&#x410;&#x422;&#x415;&#x41B;&#x42C;&#x41D;&#x42B;&#x41C; &#x41F;&#x420;&#x41E;&#x421;&#x422;&#x420;&#x410;&#x41D;&#x421;&#x422;&#x412;&#x41E;&#x41C;</subject>
        </subj-group>
      </article-categories>
      <title-group>
        <article-title xml:lang="ru">&#x418;&#x441;&#x43F;&#x43E;&#x43B;&#x44C;&#x437;&#x43E;&#x432;&#x430;&#x43D;&#x438;&#x435; &#x43C;&#x435;&#x442;&#x430;&#x434;&#x430;&#x43D;&#x43D;&#x44B;&#x445; &#x434;&#x43B;&#x44F; &#x43F;&#x440;&#x43E;&#x432;&#x435;&#x440;&#x43A;&#x438; SQL DDL-&#x437;&#x430;&#x43F;&#x440;&#x43E;&#x441;&#x43E;&#x432; &#x432; &#x43E;&#x431;&#x443;&#x447;&#x430;&#x44E;&#x449;&#x438;&#x445; &#x441;&#x438;&#x441;&#x442;&#x435;&#x43C;&#x430;&#x445;</article-title>
        <trans-title-group xml:lang="en">
          <trans-title>Using metadata to validate SQL DDL queries in training systems</trans-title>
        </trans-title-group>
      </title-group>
      <contrib-group content-type="author">
        <contrib contrib-type="author">
          <name-alternatives>
            <name name-style="western" specific-use="primary" xml:lang="ru">
              <surname>&#x41F;&#x43B;&#x443;&#x436;&#x43D;&#x438;&#x43A;&#x43E;&#x432;&#x430;</surname>
              <given-names>&#x410;&#x43D;&#x430;&#x441;&#x442;&#x430;&#x441;&#x438;&#x44F; &#x414;&#x43C;&#x438;&#x442;&#x440;&#x438;&#x435;&#x432;&#x43D;&#x430;</given-names>
            </name>
            <name name-style="western" xml:lang="en">
              <surname>Pluzhnikova</surname>
              <given-names>Anastasia D.</given-names>
            </name>
          </name-alternatives>
          <xref ref-type="aff" rid="aff-1"/>
          <email>pluzhnikova.01@yandex.com</email>
        </contrib>
        <contrib contrib-type="author">
          <name-alternatives>
            <name name-style="western" specific-use="primary" xml:lang="ru">
              <surname>&#x413;&#x440;&#x430;&#x444;&#x435;&#x435;&#x432;&#x430;</surname>
              <given-names>&#x41D;&#x430;&#x442;&#x430;&#x43B;&#x44C;&#x44F; &#x413;&#x435;&#x43D;&#x440;&#x438;&#x445;&#x43E;&#x432;&#x43D;&#x430;</given-names>
            </name>
            <name name-style="western" xml:lang="en">
              <surname>Grafeeva</surname>
              <given-names>Natalia G.</given-names>
            </name>
          </name-alternatives>
          <xref ref-type="aff" rid="aff-1"/>
          <email>nggrafeeva@itmo.ru</email>
        </contrib>
        <contrib contrib-type="author">
          <name-alternatives>
            <name name-style="western" specific-use="primary" xml:lang="ru">
              <surname>&#x415;&#x433;&#x43E;&#x440;&#x43E;&#x432;&#x430;</surname>
              <given-names>&#x41E;&#x43B;&#x44C;&#x433;&#x430; &#x411;&#x43E;&#x440;&#x438;&#x441;&#x43E;&#x432;&#x43D;&#x430;</given-names>
            </name>
            <name name-style="western" xml:lang="en">
              <surname>Egorova</surname>
              <given-names>Olga B.</given-names>
            </name>
          </name-alternatives>
          <xref ref-type="aff" rid="aff-1"/>
          <email>oegorova@itmo.ru</email>
        </contrib>
      </contrib-group>
      <aff-alternatives id="aff-1">
        <aff xml:lang="ru">
          <institution content-type="orgname">&#x41D;&#x430;&#x446;&#x438;&#x43E;&#x43D;&#x430;&#x43B;&#x44C;&#x43D;&#x44B;&#x439; &#x438;&#x441;&#x441;&#x43B;&#x435;&#x434;&#x43E;&#x432;&#x430;&#x442;&#x435;&#x43B;&#x44C;&#x441;&#x43A;&#x438;&#x439; &#x443;&#x43D;&#x438;&#x432;&#x435;&#x440;&#x441;&#x438;&#x442;&#x435;&#x442; &#x418;&#x422;&#x41C;&#x41E;</institution>
        </aff>
        <aff xml:lang="en">
          <institution content-type="orgname">ITMO National Research University</institution>
        </aff>
      </aff-alternatives>
      <pub-date date-type="pub" publication-format="epub">
        <day>30</day>
        <month>03</month>
        <year>2025</year>
      </pub-date>
      <volume>15</volume>
      <issue>3-1</issue>
      <fpage>126</fpage>
      <lpage>134</lpage>
      <history>
        <date date-type="received" iso-8601-date="2025-09-03">
          <day>03</day>
          <month>09</month>
          <year>2025</year>
        </date>
        <date date-type="accepted" iso-8601-date="2025-09-03">
          <day>03</day>
          <month>09</month>
          <year>2025</year>
        </date>
      </history>
      <permissions>
        <copyright-statement>Copyright (c) 2025 &#x423;&#x43F;&#x440;&#x430;&#x432;&#x43B;&#x435;&#x43D;&#x438;&#x435; &#x43E;&#x431;&#x440;&#x430;&#x437;&#x43E;&#x432;&#x430;&#x43D;&#x438;&#x435;&#x43C;: &#x442;&#x435;&#x43E;&#x440;&#x438;&#x44F; &#x438; &#x43F;&#x440;&#x430;&#x43A;&#x442;&#x438;&#x43A;&#x430;</copyright-statement>
        <copyright-year>2025</copyright-year>
        <copyright-holder>&#x423;&#x43F;&#x440;&#x430;&#x432;&#x43B;&#x435;&#x43D;&#x438;&#x435; &#x43E;&#x431;&#x440;&#x430;&#x437;&#x43E;&#x432;&#x430;&#x43D;&#x438;&#x435;&#x43C;: &#x442;&#x435;&#x43E;&#x440;&#x438;&#x44F; &#x438; &#x43F;&#x440;&#x430;&#x43A;&#x442;&#x438;&#x43A;&#x430;</copyright-holder>
        <license xml:lang="ru" xlink:href="https://creativecommons.org/licenses/by-nc-nd/4.0">
          <license-p>&#x42D;&#x442;&#x43E; &#x43F;&#x440;&#x43E;&#x438;&#x437;&#x432;&#x435;&#x434;&#x435;&#x43D;&#x438;&#x435; &#x434;&#x43E;&#x441;&#x442;&#x443;&#x43F;&#x43D;&#x43E; &#x43F;&#x43E; &#x43B;&#x438;&#x446;&#x435;&#x43D;&#x437;&#x438;&#x438; Creative Commons &#xAB;Attribution-NonCommercial-NoDerivatives&#xBB; (&#xAB;&#x410;&#x442;&#x440;&#x438;&#x431;&#x443;&#x446;&#x438;&#x44F; &#x2014; &#x41D;&#x435;&#x43A;&#x43E;&#x43C;&#x43C;&#x435;&#x440;&#x447;&#x435;&#x441;&#x43A;&#x43E;&#x435; &#x438;&#x441;&#x43F;&#x43E;&#x43B;&#x44C;&#x437;&#x43E;&#x432;&#x430;&#x43D;&#x438;&#x435; &#x2014; &#x411;&#x435;&#x437; &#x43F;&#x440;&#x43E;&#x438;&#x437;&#x432;&#x43E;&#x434;&#x43D;&#x44B;&#x445; &#x43F;&#x440;&#x43E;&#x438;&#x437;&#x432;&#x435;&#x434;&#x435;&#x43D;&#x438;&#x439;&#xBB;) 4.0 &#x412;&#x441;&#x435;&#x43C;&#x438;&#x440;&#x43D;&#x430;&#x44F;.</license-p>
        </license>
        <license license-type="open-access" specific-use="metadata" xml:lang="ru" xlink:href="https://creativecommons.org/publicdomain/zero/1.0/">
          <license-p>&#x41C;&#x435;&#x442;&#x430;&#x434;&#x430;&#x43D;&#x43D;&#x44B;&#x435; &#x43D;&#x430;&#x441;&#x442;&#x43E;&#x44F;&#x449;&#x435;&#x439; &#x437;&#x430;&#x43F;&#x438;&#x441;&#x438; &#x440;&#x430;&#x441;&#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x44F;&#x44E;&#x442;&#x441;&#x44F; &#x43D;&#x430; &#x443;&#x441;&#x43B;&#x43E;&#x432;&#x438;&#x44F;&#x445; Creative Commons CC0 1.0 (&#x43F;&#x435;&#x440;&#x435;&#x434;&#x430;&#x447;&#x430; &#x432; &#x43E;&#x431;&#x449;&#x435;&#x441;&#x442;&#x432;&#x435;&#x43D;&#x43D;&#x43E;&#x435; &#x434;&#x43E;&#x441;&#x442;&#x43E;&#x44F;&#x43D;&#x438;&#x435;).</license-p>
        </license>
      </permissions>
      <self-uri xlink:href="https://emreview.ru/index.php/emr/article/view/2159"/>
      <self-uri xlink:href="https://emreview.ru/index.php/emr/article/download/2159/1810/3489" content-type="application/pdf"/>
      <abstract xml:lang="ru">
        <p>&#x412; &#x434;&#x430;&#x43D;&#x43D;&#x43E;&#x439; &#x440;&#x430;&#x431;&#x43E;&#x442;&#x435; &#x440;&#x430;&#x441;&#x441;&#x43C;&#x430;&#x442;&#x440;&#x438;&#x432;&#x430;&#x435;&#x442;&#x441;&#x44F; &#x43F;&#x440;&#x43E;&#x431;&#x43B;&#x435;&#x43C;&#x430; &#x430;&#x432;&#x442;&#x43E;&#x43C;&#x430;&#x442;&#x438;&#x437;&#x438;&#x440;&#x43E;&#x432;&#x430;&#x43D;&#x43D;&#x43E;&#x439; &#x43F;&#x440;&#x43E;&#x432;&#x435;&#x440;&#x43A;&#x438; SQL DDL-&#x437;&#x430;&#x43F;&#x440;&#x43E;&#x441;&#x43E;&#x432; &#x43F;&#x440;&#x438; &#x43E;&#x431;&#x443;&#x447;&#x435;&#x43D;&#x438;&#x438; &#x440;&#x430;&#x431;&#x43E;&#x442;&#x435; &#x441; &#x431;&#x430;&#x437;&#x430;&#x43C;&#x438; &#x434;&#x430;&#x43D;&#x43D;&#x44B;&#x445; &#x432; &#x43E;&#x43D;&#x43B;&#x430;&#x439;&#x43D; &#x43A;&#x443;&#x440;&#x441;&#x430;&#x445; &#x438;&#x43B;&#x438; &#x438;&#x43D;&#x442;&#x435;&#x440;&#x430;&#x43A;&#x442;&#x438;&#x432;&#x43D;&#x44B;&#x445; &#x442;&#x440;&#x435;&#x43D;&#x430;&#x436;&#x435;&#x440;&#x430;&#x445;. &#x41F;&#x440;&#x435;&#x434;&#x43B;&#x430;&#x433;&#x430;&#x435;&#x442;&#x441;&#x44F; &#x438;&#x441;&#x43F;&#x43E;&#x43B;&#x44C;&#x437;&#x43E;&#x432;&#x430;&#x43D;&#x438;&#x435; &#x43C;&#x435;&#x442;&#x430;&#x434;&#x430;&#x43D;&#x43D;&#x44B;&#x445;, &#x434;&#x43E;&#x441;&#x442;&#x443;&#x43F;&#x43D;&#x44B;&#x445; &#x432; &#x421;&#x423;&#x411;&#x414; PostgreSQL &#x447;&#x435;&#x440;&#x435;&#x437; &#x441;&#x438;&#x441;&#x442;&#x435;&#x43C;&#x43D;&#x44B;&#x439; &#x43A;&#x430;&#x442;&#x430;&#x43B;&#x43E;&#x433; &#x438; &#x438;&#x43D;&#x444;&#x43E;&#x440;&#x43C;&#x430;&#x446;&#x438;&#x43E;&#x43D;&#x43D;&#x443;&#x44E; &#x441;&#x445;&#x435;&#x43C;&#x443;. &#x41F;&#x440;&#x43E;&#x432;&#x43E;&#x434;&#x438;&#x442;&#x441;&#x44F; &#x441;&#x440;&#x430;&#x432;&#x43D;&#x438;&#x442;&#x435;&#x43B;&#x44C;&#x43D;&#x44B;&#x439; &#x430;&#x43D;&#x430;&#x43B;&#x438;&#x437; &#x44D;&#x442;&#x438;&#x445; &#x441;&#x43F;&#x43E;&#x441;&#x43E;&#x431;&#x43E;&#x432;, &#x440;&#x430;&#x441;&#x441;&#x43C;&#x430;&#x442;&#x440;&#x438;&#x432;&#x430;&#x44E;&#x442;&#x441;&#x44F; &#x438;&#x445; &#x43F;&#x440;&#x435;&#x438;&#x43C;&#x443;&#x449;&#x435;&#x441;&#x442;&#x432;&#x430; &#x438; &#x43D;&#x435;&#x434;&#x43E;&#x441;&#x442;&#x430;&#x442;&#x43A;&#x438; &#x434;&#x43B;&#x44F; &#x440;&#x430;&#x437;&#x43B;&#x438;&#x447;&#x43D;&#x44B;&#x445; &#x442;&#x438;&#x43F;&#x43E;&#x432; &#x43E;&#x431;&#x44A;&#x435;&#x43A;&#x442;&#x43E;&#x432; &#x431;&#x430;&#x437;&#x44B; &#x434;&#x430;&#x43D;&#x43D;&#x44B;&#x445;. &#x41E;&#x43F;&#x438;&#x441;&#x44B;&#x432;&#x430;&#x435;&#x442;&#x441;&#x44F; &#x440;&#x435;&#x430;&#x43B;&#x438;&#x437;&#x430;&#x446;&#x438;&#x44F; &#x43F;&#x440;&#x43E;&#x432;&#x435;&#x440;&#x43E;&#x447;&#x43D;&#x44B;&#x445; &#x444;&#x443;&#x43D;&#x43A;&#x446;&#x438;&#x439; &#x438; &#x438;&#x441;&#x43F;&#x43E;&#x43B;&#x44C;&#x437;&#x43E;&#x432;&#x430;&#x43D;&#x438;&#x435; &#x440;&#x430;&#x441;&#x448;&#x438;&#x440;&#x435;&#x43D;&#x438;&#x44F; PostgreSQL &#x434;&#x43B;&#x44F; &#x438;&#x445; &#x43E;&#x431;&#x44A;&#x435;&#x434;&#x438;&#x43D;&#x435;&#x43D;&#x438;&#x44F;.</p>
      </abstract>
      <trans-abstract xml:lang="en">
        <p>This paper examines the problem of automated verification of SQL DDL queries when learning to work with databases in online courses or interactive simulators. The use of metadata available in the PostgreSQL database through the system catalog and information schema is proposed. A comparative analysis of these methods is carried out, their advantages and disadvantages for different types of database objects are considered. It describes the implementation of the verification functions and the use of the PostgreSQL extension to combine them.</p>
      </trans-abstract>
      <kwd-group xml:lang="en">
        <kwd>PostgreSQL</kwd>
        <kwd>SQL</kwd>
        <kwd>DDL queries</kwd>
        <kwd>online courses</kwd>
        <kwd>simulators</kwd>
        <kwd>metadata</kwd>
      </kwd-group>
      <kwd-group xml:lang="ru">
        <kwd>PostgreSQL</kwd>
        <kwd>SQL</kwd>
        <kwd>DDL-&#x437;&#x430;&#x43F;&#x440;&#x43E;&#x441;&#x44B;</kwd>
        <kwd>&#x43E;&#x43D;&#x43B;&#x430;&#x439;&#x43D;-&#x43A;&#x443;&#x440;&#x441;&#x44B;</kwd>
        <kwd>&#x442;&#x440;&#x435;&#x43D;&#x430;&#x436;&#x435;&#x440;&#x44B;</kwd>
        <kwd>&#x43C;&#x435;&#x442;&#x430;&#x434;&#x430;&#x43D;&#x43D;&#x44B;&#x435;</kwd>
      </kwd-group>
      <funding-group>
        <funding-statement xml:lang="ru">&#x418;&#x441;&#x441;&#x43B;&#x435;&#x434;&#x43E;&#x432;&#x430;&#x43D;&#x438;&#x435; &#x432;&#x44B;&#x43F;&#x43E;&#x43B;&#x43D;&#x435;&#x43D;&#x43E; &#x431;&#x435;&#x437; &#x432;&#x43D;&#x435;&#x448;&#x43D;&#x435;&#x433;&#x43E; &#x444;&#x438;&#x43D;&#x430;&#x43D;&#x441;&#x438;&#x440;&#x43E;&#x432;&#x430;&#x43D;&#x438;&#x44F;.</funding-statement>
        <funding-statement xml:lang="en">The study was conducted without external funding.</funding-statement>
      </funding-group>
      <counts>
        <page-count count="9"/>
      </counts>
      <custom-meta-group>
        <custom-meta>
          <meta-name>metadata-license</meta-name>
          <meta-value>
            <ext-link ext-link-type="uri" xlink:href="https://creativecommons.org/publicdomain/zero/1.0/">CC0 1.0</ext-link>
          </meta-value>
        </custom-meta>
      </custom-meta-group>
    </article-meta>
  </front>
  <body>
    <p/>
  </body>
  <back>
    <ref-list xml:lang="ru">
      <title>&#x421;&#x43F;&#x438;&#x441;&#x43E;&#x43A; &#x43B;&#x438;&#x442;&#x435;&#x440;&#x430;&#x442;&#x443;&#x440;&#x44B;</title>
      <ref id="R1">
        <mixed-citation>Mikhailova E., Boitsev A., Egorova O., Grafeeva N.G., Romanov A., Volchek D. Curriculum for Digital Culture at ITMO University // Advances in Intelligent Systems and Computing - 2020, Vol. 1161 AISC, pp. 235-244</mixed-citation>
      </ref>
      <ref id="R2">
        <mixed-citation>&#x41D;&#x430;&#x446;&#x438;&#x43E;&#x43D;&#x430;&#x43B;&#x44C;&#x43D;&#x44B;&#x439; &#x438;&#x441;&#x441;&#x43B;&#x435;&#x434;&#x43E;&#x432;&#x430;&#x442;&#x435;&#x43B;&#x44C;&#x441;&#x43A;&#x438;&#x439; &#x443;&#x43D;&#x438;&#x432;&#x435;&#x440;&#x441;&#x438;&#x442;&#x435;&#x442; &#x418;&#x422;&#x41C;&#x41E;. 2025. https://itmo.ru/</mixed-citation>
      </ref>
      <ref id="R3">
        <mixed-citation>&#x41D;&#x43E;&#x432;&#x438;&#x43A;&#x43E;&#x432; &#x411;.&#x410;., &#x413;&#x43E;&#x440;&#x448;&#x43A;&#x43E;&#x432;&#x430; &#x415;.&#x410;., &#x413;&#x440;&#x430;&#x444;&#x435;&#x435;&#x432;&#x430; &#x41D;.&#x413;. &#x41E;&#x441;&#x43D;&#x43E;&#x432;&#x44B; &#x442;&#x435;&#x445;&#x43D;&#x43E;&#x43B;&#x43E;&#x433;&#x438;&#x439; &#x431;&#x430;&#x437; &#x434;&#x430;&#x43D;&#x43D;&#x44B;&#x445;: &#x443;&#x447;. &#x43F;&#x43E;&#x441;. 2-&#x435; &#x438;&#x437;&#x434;. &#x41C;.: &#x414;&#x41C;&#x41A; &#x41F;&#x440;&#x435;&#x441;&#x441;, 2020. 200 &#x441;.</mixed-citation>
      </ref>
      <ref id="R4">
        <mixed-citation>&#x420;&#x43E;&#x433;&#x43E;&#x432; &#x415;., &#x41B;&#x443;&#x437;&#x430;&#x43D;&#x43E;&#x432; &#x41F;., &#x411;&#x430;&#x448;&#x442;&#x430;&#x43D;&#x43E;&#x432; &#x418;. &#x41E;&#x440;&#x433;&#x430;&#x43D;&#x438;&#x437;&#x430;&#x446;&#x438;&#x44F; &#x434;&#x430;&#x43D;&#x43D;&#x44B;&#x445;. &#x421;&#x438;&#x441;&#x442;&#x435;&#x43C;&#x43D;&#x44B;&#x439; &#x43A;&#x430;&#x442;&#x430;&#x43B;&#x43E;&#x433; // Postgres professional. 2015-2022.</mixed-citation>
      </ref>
      <ref id="R5">
        <mixed-citation>&#x420;&#x43E;&#x433;&#x43E;&#x432; &#x415;. PostgreSQL 17 &#x438;&#x437;&#x43D;&#x443;&#x442;&#x440;&#x438; // &#x41C;.: &#x414;&#x41C;&#x41A; &#x41F;&#x440;&#x435;&#x441;&#x441;, 2024. &#x421;. 24-28.</mixed-citation>
      </ref>
      <ref id="R6">
        <mixed-citation>ISO/IEC 9075-11:2023 Information technology &#x2013; Database languages SQL Part 11: Information and definition schemas (SQL/Schemata). 2023.</mixed-citation>
      </ref>
      <ref id="R7">
        <mixed-citation>PostGIS. 2024. https://postgis.net/</mixed-citation>
      </ref>
      <ref id="R8">
        <mixed-citation>PostgreSQL extension for ddl-queries validation. 2025. https://github.com/pluzhnikova/check_ddl_ext</mixed-citation>
      </ref>
      <ref id="R9">
        <mixed-citation>PostgreSQL Documentation: 17 https://www.postgresql.org/docs/17/index.html.</mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>
