Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.0 (中文) » UltraLiteJ » 使用 UltraLiteJ » 开发 UltraLiteJ 应用程序 » 使用 SQL 访问和修改数据

 

使用 INSERT、UPDATE 和 DELETE 进行数据修改

可使用 PreparedStatement 的 execute 方法来执行 SQL 数据修改。PreparedStatement 使用用户定义的 SQL 语句查询数据库。

将 SQL 语句应用于 PreparedStatement 时,使用 ? 字符来表示查询参数。对于任何 INSERT、UPDATE 或 DELETE 语句,每个 ? 参数都根据其在语句中的顺序位置来进行引用。例如,第一个 ? 引用为参数 1,第二个引用为参数 2。

 ♦  向表中插入行
  1. 将新 SQL 语句准备为一个字符串。

    String sql_string = 
        "INSERT INTO Department(dept_no, name) VALUES( ?, ? )";
  2. 将该字符串传递给 PreparedStatement。

    PreparedStatement inserter = 
        conn.prepareStatement(sql_string);
    
  3. 使用 set 方法将输入值传递给 PreparedStatement。

    本示例将 dept_no 设置为 101,并引用为参数 1,将 name 设置为 "Electronics",并引用为参数 2。

    inserter.set(1, 101);
    inserter.set(2, "Electronics");
  4. 执行该语句。

    inserter.execute();
  5. 关闭 PreparedStatement 以释放资源。

    inserter.close()
  6. 提交对数据库的所有更改。

    conn.commit();

步骤 (3) 和 (4) 可以根据需要重复执行多次。

或者,在仅执行一次 INSERT 时,可以 PREPARE、EXECUTE 和 CLOSE 语句 INSERT INTO Department(dept_no, name) VALUES(2, 'Electronics')。

此语句可以通过 Java 字符串连接进行创建。

 ♦  更新表中的行
  1. 将新 SQL 语句准备为一个字符串。

    String sql_string = 
        "UPDATE Department SET dept_no = ? WHERE dept_no = ?";
  2. 将该字符串传递给 PreparedStatement。

    PreparedStatement updater = 
        conn.prepareStatement(sql_string);
    
  3. 使用 set 方法将输入值传递给 PreparedStatement。

    updater.set(1, 102);
    updater.set(2, 101);

    上述示例与声明以下 SQL 语句等效:

    UPDATE Department SET dept_no = 102 WHERE dept_no = 101
  4. 执行语句。

    updater.execute();
  5. 关闭 PreparedStatement 以释放资源。

    updater.close()
  6. 提交对数据库的所有更改。

    conn.commit();

步骤 (3) 和 (4) 可以根据需要重复执行多次。

或者,在仅执行一次 INSERT 时,可以 PREPARE、EXECUTE 和 CLOSE 语句 INSERT INTO Department(dept_no, name) VALUES(2, 'Electronics')。

此语句可以通过 Java 字符串连接进行创建。

 ♦  删除表中的行
  1. 将新 SQL 语句准备为一个字符串。

    String sql_string = 
        "DELETE FROM Department WHERE dept_no = ?";
  2. 将该字符串传递给 PreparedStatement。

    PreparedStatement deleter = 
        conn.prepareStatement(sql_string);
    
  3. 使用 set 方法将输入值传递给 PreparedStatement。

    deleter.set(1, 102);

    上述示例与声明以下 SQL 语句等效:

    DELETE FROM Department WHERE dept_no = 102
  4. 执行语句。

    deleter.execute();
  5. 关闭 PreparedStatement 以释放资源。

    deleter.close()
  6. 提交对数据库的所有更改。

    conn.commit();
 示例

步骤 (3) 和 (4) 可以根据需要重复执行多次。

或者,在仅执行一次 INSERT 时,可以 PREPARE、EXECUTE 和 CLOSE 语句 INSERT INTO Department(dept_no, name) VALUES(2, 'Electronics'),如上节所述。

此语句可以通过 Java 字符串连接进行创建。