Tôi đang sử dụng OrientDB trong một tình huống nhúng trong Java. Tôi đang tạo cơ sở dữ liệu và các lớp trong ứng dụng của tôi và chèn dữ liệu. Khi tôi đi xem dữ liệu thông qua giao diện điều khiển, tôi có thể thấy các lớp trong cơ sở dữ liệu, cùng với số hàng chính xác trong các lớp. Tuy nhiên khi tôi cố gắng để duyệt qua các dữ liệu trong lớp thông qua lệnh này browse class testData
, tôi nhận được lỗi sauLỗi OrientDB khi cố duyệt qua một lớp thông qua bảng điều khiển
Error: com.orientechnologies.orient.core.exception.OSerializationException: Found invalid % character. Ensure it is opened and closed correctly.
tôi đã lùng sục nguồn dữ liệu của tôi và nó không chứa bất kỳ %
. Tôi biết rằng OrientDB là nhạy cảm với khoảng cách đặc biệt là xung quanh các ký tự như )
nhưng một lần nữa dữ liệu mà tôi đã không sử dụng các ký tự mà có vẻ như là một lỗi.
Có ai đã gặp lỗi này không? Bất kỳ ý tưởng về cách giải quyết lỗi?
Mã để tạo cơ sở dữ liệu
private void createNewOrientDatabase(){
String dbPath = "plocal:./db/test";
orientDatabase = new ODatabaseDocumentTx(dbPath).create();
}
Mã để tạo các lớp
public void createClasses(Table t){
if(orientDatabase.getMetadata().getSchema().getClass(t.getName()) == null) {
orientDatabase.getMetadata().getSchema().createClass(t.getName());
}
}
Mã để chèn dữ liệu
public void insertData(Table table, TableSource data){
for (String s : data){
ODocument document = new ODocument(table.getName());
String[] parts = s.split(",");
for(int i = 0; i < table.getColumns().size(); ++i){
document.field(table.getColumns().get(i).getName(),parts[i]);
}
document.save();
}
}
Có nhiều lớp nhưng đối với lớp học, dữ liệu có thể trông giống như thế này 43840,533,1,1,3,4
chỉ để cung cấp cho bạn ý tưởng về dữ liệu trông như thế nào.
Như mọi khi, cảm ơn trước vì bất kỳ trợ giúp nào!