我是 orientdb 的新手,尝试从 java 代码库运行以下命令,但出现 Invalid keywords: PROPERTY 错误。同样的命令在 orientdb studio 中完美运行。无法理解为什么它不能通过代码工作。
CREATE CLASS User
CREATE PROPERTY User.firstName String
CREATE PROPERTY User.password String
ALTER PROPERTY User.password NOTNULL = true
我正在使用tinkerpop java库进行开发。下面是执行命令的代码。
OrientGraph graph = graphFactory.getTx();
int modified = graph.command(
new OCommandSQL(command)).execute();
谢谢。
最佳答案
我已经能够重现您的问题,您不能将所有这些指令放入变量命令中,您必须单独运行它们,我给您两种方法:
第一次尝试
OrientGraphFactory graphFactory=new OrientGraphFactory(path+DB);
OrientGraph graph=graphFactory.getTx();
List<String> Command=new ArrayList<String>();
Command.add("CREATE CLASS User");
Command.add("CREATE PROPERTY User.firstName String");
Command.add("CREATE PROPERTY User.password String");
Command.add("ALTER PROPERTY User.password NOTNULL true");
for(int i=0;i<Command.size();i++)
{
String command=Command.get(i);
graph.command(new OCommandSQL(command)).execute();
}
第二次尝试
String command="CREATE CLASS User";
int modified=graph.command(new OCommandSQL(command)).execute();
String command2="CREATE PROPERTY User.firstName String";
int modified2=graph.command(new OCommandSQL(command2)).execute();
String command3="CREATE PROPERTY User.password String";
int modified3=graph.command(new OCommandSQL(command3)).execute();
String command4="ALTER PROPERTY User.password NOTNULL true";
graph.command(new OCommandSQL(command4)).execute();
希望对你有帮助
关于java - 为什么会出现 Invalid keywords : PROPERTY error in orientdb?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36343913/