要實現添加功能,你可以按照以下步驟進行操作:
1. 創建一個連接到數據庫的`Connection`對象,可以使用`DriverManager.getConnection()`方法來獲取連接。連接字符串包含數據庫的URL、用戶名和密碼。
2. 創建一個`PreparedStatement`對象,用于預編譯SQL語句。SQL語句中使用`?`作為占位符,稍后會將真實的值替換進去。
3. 使用`PreparedStatement`對象的`setXxx()`方法為占位符設置真實的值,其中`setXxx()`的參數類型要與數據庫中對應列的數據類型相匹配。
4. 調用`PreparedStatement`對象的`executeUpdate()`方法來執行SQL語句。該方法返回一個整數,表示受影響的行數。
5. 根據需要,可以使用`Connection`對象的`commit()`方法提交事務。
6. 最后,關閉`PreparedStatement`對象和連接對象,釋放資源。
以下是一個示例代碼,演示如何向數據庫的`user`表中添加一條記錄:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.SQLException; public class AddExample {????public?static?void?main(String[]?args)?{
????????//?連接數據庫
????????try?(Connection?conn?=?DriverManager.getConnection(“jdbc:mysql://localhost:3306/mydb”,?
????????“username”,?“password”))?{
????????????//?創建預編譯的SQL語句
????????????String?sql?=?“INSERT?INTO?user?(name,?age)?VALUES?(?,??)”;
????????????PreparedStatement?stmt?=?conn.prepareStatement(sql);
????????????//?設置占位符的值
????????????stmt.setString(1,?“張三”);
????????????stmt.setInt(2,?20);
????????????//?執行SQL語句
????????????int?rows?=?stmt.executeUpdate();
????????????System.out.println(“添加了?"?+?rows?+?"?行數據”);
????????}?catch?(SQLException?e)?{
????????????e.printStackTrace();
????????}
????} }
請注意,上述代碼中的數據庫URL、用戶名和密碼需要根據實際情況進行修改。另外,PreparedStatement
對象也可以使用conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS)
方法來獲取自動生成的主鍵。