簡體   English   中英

當有復合鍵時,如何使用 jdbc 插入表

[英]how to insert into table using jdbc, when there are compound keys

我有一個帶有屬性(id, language_id, genre_name)的表。 genre_name獲取兩種語言的名稱, idlanguage_id是主鍵的一部分。 如何使用 JDBC(preparedStatement,(java.sql.Connection) Connection)“插入”新值,所以language_id ID 的id可以自動相同?
例如:

id | language_id| name                    |
1  |      1     | name in one language    |
1  |      2     | name in another language|

PS id是自動遞增的。

通過 JDBC 插入非常簡單。 您必須連接您的數據庫(您尚未命名),然后通過您需要的數據創建PreparedStatement (這意味着您應該事先擁有language_idname )。

這將是一個粗略的例子:

String SQL_INSERT = "INSERT INTO genre(language_id, name) VALUES (?, ?)";

try (Connection conn = DriverManager.getConnection(
        "jdbc:postgresql://127.0.0.1:5432/test", "postgres", "password");
     PreparedStatement preparedStatement = conn.prepareStatement(SQL_INSERT)) {

    preparedStatement.setInt(1, YOUR_ID_COMES_HERE);
    preparedStatement.setString(2, YOUR_NAME);

    int row = preparedStatement.executeUpdate();

    // rows affected
    System.out.println(row); //1

} catch (SQLException e) {
    System.err.format("SQL State: %s\n%s", e.getSQLState(), e.getMessage());
} catch (Exception e) {
    e.printStackTrace();
}

這是 Postgresql 的示例,但是如果您在 google 上搜索如何使用 java JDBC 執行插入,您將擁有比這更多的資源。

暫無
暫無

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

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