Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 检查orientdb中是否存在类_Java_Orientdb - Fatal编程技术网

Java 检查orientdb中是否存在类

Java 检查orientdb中是否存在类,java,orientdb,Java,Orientdb,如何检查orient db中是否存在类 如果它不在数据库中,我需要创建它并插入一条记录,如果存在,我需要插入该记录。 我需要使用JAVA执行同样的操作,您可以使用以下语句通过SQL检索模式信息: select expand(classes) from metadata:schema 具体而言,要检索单个类,请执行以下操作: select from ( select expand(classes) from metadata:schema ) where name = 'Your

如何检查orient db中是否存在类 如果它不在数据库中,我需要创建它并插入一条记录,如果存在,我需要插入该记录。
我需要使用JAVA执行同样的操作,您可以使用以下语句通过SQL检索模式信息:

 select expand(classes) from metadata:schema 
具体而言,要检索单个类,请执行以下操作:

 select from (
    select expand(classes) from metadata:schema
 ) where name = 'YourClassName'
来自Java:

 ODatabaseDocumentTx db = ...
 if(db.getMetadata().getSchema().existsClass("ClassName")){
   ...
 }
如果您有一个OrientGraph,您可以使用

 graph.getRawGraph();

为什么您编写的SQL查询不使用大写字母?因为类名按原样存储,所以=进行正常比较。您始终可以执行
where name.toLowerCase()=“yourclassname”
如何
从元数据中选择展开(类):模式
?!这里没有类名。我认为在将来它应该被修复。因为在其他类似SQL的数据库中,查询语言不区分大小写。属性名称(
在本例中为类
)区分大小写,这就是它不起作用的原因