मुझे आज बताया गया था कि मुझे वास्तव में पीडीओ और मेरे आवेदन में तैयार बयान का उपयोग करना चाहिए। जबकि मैं लाभों को समझता हूं, मैं समझने के लिए संघर्ष कर रहा हूं कि मैं उन्हें अपने वर्कफ़्लो में कैसे कार्यान्वित करता हूं। इस तथ्य के अलावा कि यह कोड को अधिक क्लीनर बनाता है, क्या मेरे पास एक विशिष्ट डेटाबेस क्लास होना चाहिए जिसमें मेरे सभी तैयार कथन हों या क्या मैं प्रत्येक बार एक क्वेरी चलाने के लिए एक बनाना चाहूंगा? मुझे यह समझना बहुत मुश्किल लगता है कि मुझे मानक पीडीओ क्वेरी का उपयोग करना चाहिए और जब मुझे तैयार कथन का उपयोग करना चाहिए। किसी भी उदाहरण, टिप्स या ट्यूटोरियल लिंक की सराहना की जाएगी।PHP पीडीओ तैयार बयान
30
A
उत्तर
31
pdo::prepare() दस्तावेज़ीकरण पर दो शानदार उदाहरण हैं।
मैंने उन्हें यहां शामिल किया है और उन्हें थोड़ा सा सरल बना दिया है।
यह ?
पैरामीटर का उपयोग करता है। $dbh
मूल रूप से एक पीडीओ वस्तु है। और आप जो कर रहे हैं वह क्रमशः पहले और दूसरे प्रश्न चिह्न में मूल्य 150
और 'red'
डाल रहा है।
/* Execute a prepared statement by passing an array of values */
$sth = $dbh->prepare('SELECT name, colour, calories
FROM fruit
WHERE calories < ? AND colour = ?');
$sth->execute(array(150, 'red'));
$red = $sth->fetchAll();
यह नामित पैरामीटर का उपयोग करता है और थोड़ा अधिक जटिल है।
/* Execute a prepared statement by passing an array of values */
$sql = 'SELECT name, colour, calories
FROM fruit
WHERE calories < :calories AND colour = :colour';
$sth = $dbh->prepare($sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY));
$sth->execute(array(':calories' => 150, ':colour' => 'red'));
$red = $sth->fetchAll();
संबंधित मुद्दे
- 1. पीडीओ, माइस्क्ल और देशी तैयार बयान
- 2. पीडीओ तैयार बयान कितने सुरक्षित हैं
- 3. PHP पीडीओ + स्टेटमेंट तैयार करें
- 4. तैयार बयान में रिकर्सन
- 5. PHP पीडीओ तैयार कथन - MySQL LIKE क्वेरी
- 6. PHP पीडीओ तैयार कथन क्वेरी रिकॉर्ड
- 7. पीडीओ तैयार वक्तव्य - NULLs
- 8. PHP पीडीओ कैशिंग
- 9. mysql स्थायी रूप से तैयार बयान
- 10. mysqli_real_escape_string और तैयार बयान?
- 11. पीडीओ तैयार बयानों को मुक्त करना (डीलॉकेट तैयार करें)
- 12. मैं PHP के पीडीओ
- 13. क्या PHP पीडीओ तैयार बयानों से बचने की जरूरत है?
- 14. LIMIT में कीवर्ड तैयार बयान के साथ
- 15. मैं कैसे करूँ तैयार बयान
- 16. पीडीओ तैयार बयान में कौन सा टोकन पैरामीटर किया जा सकता है?
- 17. PHPUnit - पीडीओ तैयार कथन कैसे नकल करें
- 18. मैं कैसे एक तैयार पीडीओ एसक्यूएल वक्तव्य
- 19. PHP पीडीओ
- 20. PHP पीडीओ
- 21. त्रुटि जब तैयार बयान के दिनांक पैरामीटर बंधन - एसक्यूएल सर्वर
- 22. php pdo दोहराव चर तैयार
- 23. की जगह mysql_ * पीडीओ और तैयार बयान के साथ काम करता है
- 24. पीडीओ से तैयार प्रश्न प्राप्त करें
- 25. PHP पीडीओ बुफर्ड क्वेरी समस्या
- 26. PHP पीडीओ: प्रदर्शन को फिर से तैयार करने के तरीके को कैसे प्रभावित करता है
- 27. PHP पीडीओ लेनदेन?
- 28. PHP पीडीओ प्लेसहोल्डर
- 29. पीडीओ lastInsertId(); मुद्दा php
- 30. PHP पीडीओ - न्यू पंक्तियां
आपके 2 उदाहरणों में, दूसरा 1 बेहतर है? – JasonDavis
सरल प्रश्नों के लिए,? ठीक है। लेकिन ध्यान दें कि तैयार बयान प्रत्येक मूल्य के चारों ओर एक उद्धरण जोड़ देगा। जहां दूसरा उदाहरण है, आप बता सकते हैं कि एक मान एक संख्या है और दूसरा मान एक स्ट्रिंग है। (हालांकि यह यहां नहीं दिखाया गया है) –
बस इस बात पर निर्भर करता है कि आप इसके साथ क्या करना चाहते हैं ... यदि आप एक ही मान का उपयोग एक से अधिक बार करना चाहते हैं, तो आपको नाम पैरामीटर का उपयोग करना चाहिए। ऐसा इसलिए है क्योंकि यदि आप इसका उपयोग करते हैं, तो यह उन्हें दिखाई देने वाले क्रम में बस उन्हें सम्मिलित करता है। यदि आपने नामित पैरामीटर का उपयोग किया है, तो आप उन्हें एक से अधिक बार उपयोग कर सकते हैं। सरल प्रश्नों के लिए बस एक अधिक संघनित संस्करण हैं। किसी को किसी अन्य तरीके से दूसरे पर लाभ नहीं होता है। – BraedenP