+1 امتیاز
قبل در برنامه نویسی توسط (5 امتیاز)
ویرایش شده قبل توسط

من میخوام یه رکورد به ResultSet اضافه کنم ، کدم رو هم به صورت زیر نوشتم ولی پیغام ResultSet non-updatable میده، ممنون میشم راهنمایی بفرمایید که مشکل از کجاست

try
{
    DriverManager.registerDriver(new com.mysql.jdbc.Driver());
   // Class.forName("com.mysql.jdbc.Driver").newInstance  ();
    String url= "jdbc:mysql://localhost/university?user=root&password=";
    Connection connection = DriverManager.getConnection(url);
    //connection.setReadOnly(false);
    Statement statement1 = connection.createStatement(ResultSet.TYPE_SCROLL_S  ENSITIVE,ResultSet.CONCUR_UPDATABLE);
    ResultSet result = statement1.executeQuery("SELECT FirstName FROM Students");

     if (result.getConcurrency() == ResultSet.CONCUR_READ_ONLY) {
        System.out.println("ResultSet non-updatable.");
      } else {
        System.out.println("ResultSet updatable.");
      }


    result.moveToInsertRow();
    result.updateString("FirstName", "Alex");
    result.insertRow();
     //result.moveToCurrentRow();

    result.beforeFirst();

    while (result.next())
    {
        System.out.println(result.getString("FirstName"));

    }

    result.close();
    statement1.close();
    connection.close();
}
catch (Exception ex)
{
    System.out.println(ex.getMessage());
}

 

1 پاسخ

0 امتیاز
قبل توسط (1.1هزار امتیاز)

شما باید statement رو بصورت زیر ایجاد کنید. به نظر میرسه کد شما مشکل import داره و از جای نامناسب CONCUR_UPDATABLE را import کرده:

Statement stmt = conn.createStatement(ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_UPDATABLE);

سوالات مشابه

0 امتیاز
1 پاسخ 880 بازدید
+2 امتیاز
2 پاسخ 1.7هزار بازدید
+1 امتیاز
1 پاسخ 940 بازدید
+2 امتیاز
1 پاسخ 1.2هزار بازدید
0 امتیاز
2 پاسخ 7.6هزار بازدید
+2 امتیاز
2 پاسخ 1.0هزار بازدید
0 امتیاز
1 پاسخ 2.4هزار بازدید
0 امتیاز
0 پاسخ 419 بازدید
سوال شده 10 سال قبل در برنامه نویسی توسط Saeed Zarinfam (1.1هزار امتیاز)
...