【问题标题】:How to "describe" a class, index, or other object in OrientDB SQL?如何在 OrientDB SQL 中“描述”一个类、索引或其他对象?
【发布时间】:2018-10-06 17:28:22
【问题描述】:

本质上,ODB SQL 中 CREATE CLASS(或 CREATE 任何东西)的“对立面”是什么?大多数/所有其他类似 SQL/SQL 的数据库都提供了一种根据创建数据库对象所需的 SQL 命令来描述数据库对象的方法,但我在 ODB 文档中找不到任何关于此的内容。当您单击模式管理器中的类时,Studio 使用什么?我最终要寻找的是一种使用 ODB SQL 从现有数据库对象生成 CREATE 命令的方法。

【问题讨论】:

    标签: sql orientdb orientdb2.2


    【解决方案1】:

    可以通过查询OrientDB模式来获取类信息:

    https://orientdb.com/docs/last/SQL.html#query-metadata

    课程信息:

    select expand(classes) from metadata:schema
    

    关于单个类的信息:

    select expand(properties) from (
       select expand(classes) from metadata:schema
    ) where name = 'MyClassName'
    

    也可以获得关于索引的元数据:

    select expand(indexes) from metadata:indexmanager
    

    【讨论】:

    • 是的,我知道元数据“类”,但它产生的输出不能用于立即重新创建底层架构对象。我希望的是一个“双向”解决方案,ODB 可以用可用于重新创建它们的术语来描述其模式对象。
    • 在这方面,我正在考虑一个内部项目来开发一种工具,该工具将使用元数据结果来重新创建底层架构对象。如果我们最终这样做,我很高兴将它提供给 ODB 社区。​​span>
    猜你喜欢
    • 2021-10-26
    • 1970-01-01
    • 2021-06-26
    • 1970-01-01
    • 1970-01-01
    • 2023-03-21
    • 2011-07-24
    • 1970-01-01
    • 2011-09-21
    相关资源
    最近更新 更多