Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > Java Programming > Java Parameters Query (prepareStatement) > Java Parameters Query for INSERT PreparedStatement (prepareStatement)



Clound SSD Virtual Server

Java Parameters Query for INSERT PreparedStatement (prepareStatement)

Java Parameters Query for INSERT PreparedStatement (prepareStatement) ตัวอย่างการใช้ PreparedStatement ในภาษา Java เพื่อ Query บันทึกข้อมูลแบบ INSERT การกำหนดรูปแบบของ Parameters แบบ Query ด้วยการ INSERT ข้อมูลลงใน 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("INSERT INTO EMPLOYEES
                                     (ID,SALARY) VALUES (?,?)");
   pstmt.setBigDecimal(1, 153833.00)
   pstmt.setInt(2, 110592)

รูปแบบการเขียน 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("INSERT INTO EMPLOYEES
	     (ID,SALARY) VALUES (?,?)");

// Query 1
pstmt.setBigDecimal(1, 153833.00)
pstmt.setInt(2, 110592)
pstmt.executeUpdate();

// Query 2
pstmt.setBigDecimal(1, 1234.00)
pstmt.setInt(2, 56789)
pstmt.executeUpdate();
จากตัวอย่างจะเห้นว่า Object ของ PreparedStatement สามารถนำมาใช้งานได้หลาย ๆ ครั้ง

Syntax for INSERT
PreparedStatement pre = connect.prepareStatement(sql);
สร้างชนิด Object ของ PreparedStatement เพื่อไว้สำหรับเก็บสร้าง Query และ Parameters
		
String sql = "INSERT INTO customer " +
		"(CustomerID,Name,Email,CountryCode,Budget,Used) " + 
		"VALUES (?,?,?,?,?,?) ";
pre.setString(1, "C005");
pre.setString(2, "Chai Surachai");
pre.setString(3, "[email protected]");
pre.setString(4, "TH");
pre.setFloat(5, 1000000);
pre.setFloat(6, 0);
สร้างชุดคำสั่งของ SQL และการเพิ่ม Parameters ในแต่ล่ะตำแหน่ง และ ในแต่ล่ะชนิดของข้อมูล
pre.executeUpdate();
Execute เพื่อ Query ตัว PreparedStatement



Example การใช้ PreparedStatement ด้วยการ INSERT ข้อมูลลงในตาราง (Table)

Java Parameters Query for INSERT (prepareStatement)

ตัวอย่างข้อมูล

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 = "INSERT INTO customer " +
					"(CustomerID,Name,Email,CountryCode,Budget,Used) " + 
					"VALUES (?,?,?,?,?,?) ";
			pre = connect.prepareStatement(sql);
			pre.setString(1, "C005");
			pre.setString(2, "Chai Surachai");
			pre.setString(3, "[email protected]");
			pre.setString(4, "TH");
			pre.setFloat(5, 1000000);
			pre.setFloat(6, 0);
			
			pre.executeUpdate();
			
            System.out.println("Record Inserted 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 Inserted Successfully


Java Parameters Query for INSERT (prepareStatement)








บทความเกี่ยวกับ 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)


   
Share


ช่วยกันสนับสนุนรักษาเว็บไซต์ความรู้แห่งนี้ไว้ด้วยการสนับสนุน Source Code 2.0 ของทีมงานไทยครีเอท


ลองใช้ค้นหาข้อมูล


   


Bookmark.   
       
  By : ThaiCreate.Com Team (บทความเป็นลิขสิทธิ์ของเว็บไทยครีเอทห้ามนำเผยแพร่ ณ เว็บไซต์อื่น ๆ)
  Score Rating :  
  Create/Update Date : 2013-05-26 11:39:04 / 2017-03-27 14:23:43
  Download : No files
 Sponsored Links / Related

 
Java Parameters Query for SELECT PreparedStatement (prepareStatement)
Rating :

 
Java Parameters Query for UPDATE PreparedStatement (prepareStatement)
Rating :

 
Java Parameters Query for DELETE PreparedStatement (prepareStatement)
Rating :


ThaiCreate.Com Forum


Comunity Forum Free Web Script
Jobs Freelance Free Uploads
Free Web Hosting Free Tools

สอน PHP ผ่าน Youtube ฟรี
สอน Android การเขียนโปรแกรม Android
สอน Windows Phone การเขียนโปรแกรม Windows Phone 7 และ 8
สอน iOS การเขียนโปรแกรม iPhone, iPad
สอน Java การเขียนโปรแกรม ภาษา Java
สอน Java GUI การเขียนโปรแกรม ภาษา Java GUI
สอน JSP การเขียนโปรแกรม ภาษา Java
สอน jQuery การเขียนโปรแกรม ภาษา jQuery
สอน .Net การเขียนโปรแกรม ภาษา .Net
Free Tutorial
สอน Google Maps Api
สอน Windows Service
สอน Entity Framework
สอน Android
สอน Java เขียน Java
Java GUI Swing
สอน JSP (Web App)
iOS (iPhone,iPad)
Windows Phone
Windows Azure
Windows Store
Laravel Framework
Yii PHP Framework
สอน jQuery
สอน jQuery กับ Ajax
สอน PHP OOP (Vdo)
Ajax Tutorials
SQL Tutorials
สอน SQL (Part 2)
JavaScript Tutorial
Javascript Tips
VBScript Tutorial
VBScript Validation
Microsoft Access
MySQL Tutorials
-- Stored Procedure
MariaDB Database
SQL Server Tutorial
SQL Server 2005
SQL Server 2008
SQL Server 2012
-- Stored Procedure
Oracle Database
-- Stored Procedure
SVN (Subversion)
แนวทางการทำ SEO
ปรับแต่งเว็บให้โหลดเร็ว


Hit Link
   







Load balance : Server 05
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่