簡體   English   中英

Java:更新MySQL表的id

[英]Java: updating the MySQL table's id

這是我的刪除類,它將id作為輸入。

我成功刪除了行(例如,我的數據庫中包含id為'3'的行),現在我想更新所有id-s。 例如:我的行是:

1 a5

2 f3

(3 t1被刪除)

4 r2

所以現在應該更新結果:

1 a5

2 f3

3 r2

String delete = "DELETE from authors WHERE id = ?";

          Class.forName("com.mysql.jdbc.Driver");
          Connection con = DriverManager.getConnection(url, "root", "easttg");
          PreparedStatement ps = con.prepareStatement(delete);

          //updating the id
          String sql = "Select id from authors";
          PreparedStatement ps2 = con.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);

          ps.setInt(1, id);
          ps.executeUpdate();
          con.close();

要更新某些行,必須使用update語句。 不是選擇聲明:

update authors set id = ? where id = ?

也就是說:ID只是行的技術標識符。 它們不應該被普遍修改。 並且使用純技術ID的原因是它們永遠不需要被修改,這是一件好事,因為可能有許多其他表具有包含相同ID的外鍵。 該ID也可能是用於在網站中顯示行的某些URL的一部分,許多人可能已將其添加為書簽。 ID是......行的標識。 您不會更改身份。 如果你這樣做,會發生各種問題,就像你改變了自己的名字一樣。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM