orientDB `OrientGraphNoTx ` Суперкласс V; не существует

Я программно загружаю файл, содержащий операторы OSql, для создания схемы моей БД с помощью API Blueprint, в частности, я создаю БД в plocal режим с помощью создания экземпляра OrientGraphNoTx учебный класс:

val graph = new OrientGraphNoTx(s"plocal:$dbPath", "admin", "admin")

Я получаю странную ошибку, утверждая, что класс V не существует в моей базе данных:

Exception in thread "main" com.orientechnologies.orient.core.sql.OCommandSQLParsingException: Error on parsing command at position #29: Super-class V; not exists
Command: CREATE CLASS Employee EXTENDS V;

Вот пример кода, генерирующего ошибку:

  def main(args: Array[String]) {
    val graph = new OrientGraphNoTx(s"plocal:C:\\Users\\alberto\\tmp\\tmp\\test_orient", "admin", "admin")
    val cmd = "CREATE CLASS Employee EXTENDS V;"
    graph.command(new OCommandSQL(cmd)).execute()
    graph.shutdown(true)
  }

Как я видел, у немногих людей была похожая проблема, и я решил ее, указав ключевое слово. graph к их CREATE DATABASE утверждения, однако, я думаю, что система уже должна знать, что я работаю с графиком, так как я использую OrientGraphNoTx, Я все равно пытался добавить CREATE DATABASE Заявление к моему сценарию, но, как и ожидалось, я получил ошибку:

Exception in thread "main" com.orientechnologies.orient.core.command.OCommandExecutorNotFoundException: Cannot find a command executor for the command request: sql.CREATE DATABASE plocal:C:\Users\alberto\tmp\tmp\synth_1000 admin admin plocal graph

Я использую банки, включенные в lib справочник OrientDB 2.1.4.

Кто-нибудь знает, как решить эту проблему?

1 ответ

Решение

1) Удалить ; так что это: CREATE CLASS Employee EXTENDS V

2) CREATE DATABASE это не команда SQL, а консольная команда

Другие вопросы по тегам