ต่อไปนี้เป็นข้อดีของข้อความที่เตรียมไว้:
-
โดยการหลีกเลี่ยงการคอมไพล์และการดำเนินการของคำสั่งหลายคำสั่ง คำสั่งที่เตรียมไว้จะทำงานเร็วขึ้น
-
เมื่อใช้คำสั่งที่เตรียมไว้ เราสามารถแทรกค่าลงในประเภทข้อมูลขั้นสูง เช่น BLOB, CLOB, OBJECT ได้อย่างง่ายดายด้วยความช่วยเหลือของเมธอด setter ที่จัดเตรียมโดยอินเทอร์เฟซของ PreparedStatement
-
ด้วยการจัดเตรียมวิธี setter เพื่อตั้งค่าคำสั่งที่เตรียมไว้เพื่อหลีกเลี่ยงการใช้เครื่องหมายคำพูดและอักขระพิเศษอื่น ๆ ในแบบสอบถามและด้วยเหตุนี้จึงหลีกเลี่ยงการโจมตีด้วยการฉีด SQL
ต่อไปนี้เป็นข้อจำกัดของข้อความที่เตรียมไว้:
-
ตั้งแต่ PreparedStatement object แสดงถึงคำสั่ง SQL ครั้งละหนึ่งคำสั่งเท่านั้น เราสามารถดำเนินการได้เพียงคำสั่งเดียวโดยหนึ่งอ็อบเจกต์คำสั่งที่เตรียมไว้
-
เพื่อป้องกันการโจมตีจากการฉีด จะไม่อนุญาตให้มีตัวยึดตำแหน่งมากกว่าหนึ่งค่า