0

我正在以编程方式加载一个包含 OSql 语句的文件,以使用 Blueprint API 创建我的数据库架构,具体来说,我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

我正在使用libOrientDB 2.1.4 目录中包含的 jar。

有谁知道如何解决这个问题?

4

1 回答 1

1

1)删除;所以它是:CREATE CLASS Employee EXTENDS V

2)CREATE DATABASE不是 SQL 命令,而是控制台命令

于 2015-11-30T14:58:35.677 回答