Java Parameters Query for DELETE PreparedStatement (prepareStatement) |
Java Parameters Query for DELETE PreparedStatement (prepareStatement) ตัวอย่างการใช้ PreparedStatement ในภาษา Java เพื่อ Query ลบข้อมูลแบบ DELETE การกำหนดรูปแบบของ Parameters แบบ Query ด้วยการ DELETE ข้อมูลลงใน Table โดยที่ Prepared Statement รองรับการทำงานได้ทุก Database ไม่ว่าจะเป็น Access , MySQL , MariaDB , SQL Server หรือ Oracle Database
การนำ PreparedStatement ในการเขียนโปรแกรมด้วยภาษา Java มาช่วยในการเขียน SQL Statement จะช่วยให้การจัดการกับ Query นั้นมีประสิทธิภาพสูงขึ้นมาก เพราะ PreparedStatement เป็นการสร้าง Object ของ SQL Statement ขึ้นมา 1 ชุด ที่สามารถนำไปใช้งานได้หลายครั้ง อีกทั้งยังสามารถใช้ตรวจสอบความถูกต้องต้องข้อมูลได้ด้วย เช่นในแต่ล่ะ Parameters สามารถกำหนดชนิด Data Type ของข้อมูลได้ เช่น เป็นแบบ INTEGER ก็ใช้ setInt เป็นแบบ STRING ก็ใช้ setString และในความสามารถของการทำงานจะมี Performance ดีกว่าการเขียน Query ธรรมดา ทั้งในด้านความเร็ว ด้าน Secure ที่ช่วยป้องกัน SQL Injection อัตโนมัติ
PreparedStatement pstmt = con.prepareStatement("DELETE FROM EMPLOYEES
WHERE ID = ?");
pstmt.setInt(1, 101)
รูปแบบการเขียน PreparedStatement บนภาษา Java จะใช้เครื่องหมาย ? เป็นตำแหน่งของ Parameters โดยสามารถกำหนด Parameters ตามตำแหน่งโดยเริ่มจาก 1 ซึ่งรองรับ Data Type ต่าง ๆ เช่น
setNull ( index, null )
setBoolean ( index, boolean )
setByte ( index, byte )
setDate ( index, date )
setTime ( index, time )
setInt ( index, int )
setLong ( index, long )
setShort ( index, short )
setFloat ( index, float )
setDouble ( index, double )
setString ( index, string )
setObject ( index, object )
การนำ PreparedStatement มาใช้งานหลายครั้ง
PreparedStatement pstmt = con.prepareStatement("DELETE FROM EMPLOYEES
WHERE ID = ?");
// Query 1
pstmt.setInt(1, 101)
pstmt.executeUpdate();
// Query 2
pstmt.setInt(1, 102)
pstmt.executeUpdate();
จากตัวอย่างจะเห้นว่า Object ของ PreparedStatement สามารถนำมาใช้งานได้หลาย ๆ ครั้ง
Syntax for DELETE
PreparedStatement pre = connect.prepareStatement(sql);
สร้างชนิด Object ของ PreparedStatement เพื่อไว้สำหรับเก็บสร้าง Query และ Parameters
String sql = "DELETE FROM customer " +
" WHERE CustomerID = ? ";
pre = connect.prepareStatement(sql);
pre.setString(1, "C005");
สร้างชุดคำสั่งของ SQL และการเพิ่ม Parameters ในแต่ล่ะตำแหน่ง และ ในแต่ล่ะชนิดของข้อมูล
pre.executeUpdate();
Execute เพื่อ Query ตัว PreparedStatement
Example การใช้ PreparedStatement ด้วยการ DELETE ข้อมูลลงในตาราง (Table)
ตัวอย่างข้อมูล
MyClass.java
package com.java.myapp;
import java.sql.PreparedStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class MyClass {
public static void main(String[] args) {
Connection connect = null;
PreparedStatement pre = null;
try {
Class.forName("com.mysql.jdbc.Driver");
connect = DriverManager.getConnection("jdbc:mysql://localhost/mydatabase" +
"?user=root&password=root");
String sql = "DELETE FROM customer " +
" WHERE CustomerID = ? ";
pre = connect.prepareStatement(sql);
pre.setString(1, "C005");
pre.executeUpdate();
System.out.println("Record Delete Successfully");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// Close
try {
if(connect != null){
pre.close();
connect.close();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
Output
Record Delete Successfully
บทความเกี่ยวกับ PreparedStatement กับ Database ต่าง ๆ
Java Ms Access mdb and PreparedStatement/Parameters Query (JDBC)
Java MySQL Database and PreparedStatement/Parameters Query (JDBC)
Java MariaDB Database and PreparedStatement/Parameters Query (JDBC)
Java SQL Server Database and PreparedStatement/Parameters Query (JDBC)
Java Oracle Database and PreparedStatement/Parameters Query (JDBC)
|
ช่วยกันสนับสนุนรักษาเว็บไซต์ความรู้แห่งนี้ไว้ด้วยการสนับสนุน Source Code 2.0 ของทีมงานไทยครีเอท
|
|
|
By : |
ThaiCreate.Com Team (บทความเป็นลิขสิทธิ์ของเว็บไทยครีเอทห้ามนำเผยแพร่ ณ เว็บไซต์อื่น ๆ) |
|
Score Rating : |
|
|
|
Create/Update Date : |
2013-05-26 11:39:33 /
2017-03-27 14:23:21 |
|
Download : |
No files |
|
Sponsored Links / Related |
|
|
|
|
|
|
|