realm1.beginTransaction();
newuser tripnew = realm1.createObject(newuser.class);
int nid= (int)(realm.where(newuser.class).max("nid").intValue()+1);
tripnew.setNid(nid);
tripnew.setFrom(frominput.getText().toString());
tripnew.setTo(toinput.getText().toString());
tripnew.setDatejourney(dateinput.getText().toString());
realm1.commitTransaction();
updatetrip();
/// iam also use this code not working
realm.where(newuser.class).maximumInt("id_cp") + 1;
newuser.java //////
public class newuser extends RealmObject {
private String from,to,datejourney;
public String getFrom() {
return from;
}
public void setFrom(String from) {
this.from = from;
}
public String getTo() {
return to;
}
public void setTo(String to) {
this.to = to;
}
public String getDatejourney() {
return datejourney;
}
public void setDatejourney(String datejourney) {
this.datejourney = datejourney;
}
}
答案 0 :(得分:0)
您的班级看起来没有import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import com.mysql.jdbc.Statement;
public class Fire_Emblem {
public static ArrayList<String> GetCharacters() {
try {
Class.forName("com.mysql.jdbc.Driver");
java.sql.Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/fire_emblem","root","[redacted]");
java.sql.Statement st = con.createStatement();
ResultSet rs = st.executeQuery("select name from characters");
System.out.println ("Connection successful");
ArrayList<String> list = new ArrayList<String>();
while (rs.next()) {
list.add(rs.getString("name"));
}
System.out.println(list);
}
catch (SQLException e) {
System.out.println(e.getMessage());
System.out.println("Connection failed");
}
return list;
}
或@Parameters ({"browser"})
数字字段。添加nid
字段和访问者,然后id_cp
应该适用于大多数情况。但是,如果数据库中没有int nid;
实例,它将失败。我使用singleton factory for generating primary keys作为更通用的解决方案。
如果您需要更多上下文,可以在Realm Git Hub中进行长时间的讨论:Document how to set an auto increment id?