在写入行中插入Java DB新记录



我试图将新项插入到表中,但它们没有插入到最后一行。他们插入到他们想要的地方。为了解释,他们可以在最后一行的上面插入30行。有趣的是,有时效果很好,有时会有问题。我已经尝试从netbeans插入新行-->服务-->java数据库-->我的数据库,有同样的问题。

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
public void doConnect()  {

try{

String host=fl.DataBaseFiles();
String uName="tmimaIpologiston";
String uPass="kyri";
con=DriverManager.getConnection(host, uName, uPass);

}
catch (SQLException err){
//JOptionPane.showMessageDialog(null, err.getMessage());
JOptionPane.showMessageDialog(null, "Πρέπει πρώτα να εννωθείτε με τη βάση δεδομένων.", "Connection Error", JOptionPane.ERROR_MESSAGE);
System.exit(0);
}
}

public void importToEF16DBassistantTest() {


try {

rs.close();
stmt.close();

stmt = ctd.con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE);
String sql = fl.selectAllFromEF16DBassistant();
rs = stmt.executeQuery(sql);
//kyria

rs.moveToInsertRow();

rs.updateInt("AE", Integer.parseInt(AEylikoy));
rs.updateString("XRONIA", yearField.getText());
rs.updateString("PALIOI_AE", AEpalioi);
rs.updateString("MONADA", monada);
rs.updateString("EF13", ef13);
rs.updateString("IMEROMINIA_EF13", imerominiaEf13);
rs.updateString("YLIKA", YlikoPane.getText());
rs.updateString("SN", SNPane.getText());
rs.updateString("KATASTASIOKAA", AAokField.getText());
if (katastsiOKCheckBox.isSelected() == true) {
ok = true;
} else {
ok = false;
}
rs.updateBoolean("OKBTN", ok);
rs.updateString("KATASTASIPOEAA", AApoeField.getText());
if (katastsiPOECheckBox.isSelected() == true) {
poe = true;
} else {
poe = false;
}
rs.updateBoolean("POEBTN", poe);
rs.updateString("EF157", EF157);
rs.updateString("IMEROMINIA_EF157", EF157Imerominia);
rs.updateString("AR_PRAKTIKOU", arithmosPraktikou);
rs.updateString("ERGASIES", ergasies);
rs.updateString("IMEROMINIA_ISODOU", imerominiaIsodou);
rs.updateString("IMEROMINIA_PERAS_ERGASION", imerominiaPerasEpiskevis);
rs.updateString("IMEROMINIA_EXODOU", imerominiaExodou);

rs.insertRow();
rs.close();
stmt.close();

} catch (SQLException ex) {
ex.printStackTrace();
Logger.getLogger(EF16.class.getName()).log(Level.SEVERE, null, ex);

}


importFromEF16DBassistant();
}

关系数据库中的表本质上是无序的。

这意味着;位置";在它插入的地方,它只是被添加到一组行中。从这个意义上说,表的行为很像Java中的SetMap:它们没有顺序,只是";一堆内容";。

如果要按特定顺序返回值,则必须使用ORDER BY来指定在给定的SELECT中要按哪个值进行排序。

这适用于基本上所有的关系数据库,也适用于几乎任何可以使用JDBC/java.sql访问的数据库。

最新更新