दिलचस्प पोस्ट
वस्तु संपत्ति पर आधारित सरणी तत्व निकालें HTML इनपुट टैग समस्या को बंद करना OpenMP में "स्थिर" और "गतिशील" शेड्यूल के बीच अंतर क्या है? एक मूल पायथन इटरेटर बनाएँ त्रुटि को ठीक कैसे करें: रूट तत्व के बाद दस्तावेज़ में मार्कअप को अच्छी तरह से बना होना चाहिए VB.NET में बहुभाषी स्ट्रिंग कैसे snackBar के लेआउट को अनुकूलित करने के लिए? jQuery और टिंइएमईईई: टेडेरेआ वैल्यू प्रस्तुत नहीं होता है jQuery मान्य आवश्यक चुनें क्यों नहीं var_dump DomDocument ऑब्जेक्ट के साथ काम करता है, जबकि प्रिंट ($ dom-> saveHTML ()) करता है? boost_1_60_0 खिड़कियों में ज़िप स्थापना सी मानक मानते हैं कि इस शीर्ष लेख में एक या दो 'संरचना uperms_entry' प्रकार हैं? सी / सी ++: स्ट्रिंग स्थिरांक के लिए पॉइंटर्स का अनुकूलन घातक त्रुटि: 134217728 बाइट्स की मात्रा का अनुमत मेमोरी आकार (CodeIgniter + XML-RPC) एसक्यूएलटी में वैकल्पिक कॉलम

एक एपॉस्ट्रॉफी (एकल उद्धरण) वाले मान को कैसे सम्मिलित करें?

इसमें एक एपॉस्ट्रॉफी वाले मान डालने के लिए सही SQL वाक्यविन्यास क्या है?

Insert into Person (First, Last) Values 'Joe', 'O'Brien' 

मैं एक त्रुटि प्राप्त करता हूं जैसा कि मुझे लगता है कि ओ के बाद एपॉस्ट्रॉफी मूल्य के अंत टैग है।

वेब के समाधान से एकत्रित समाधान "एक एपॉस्ट्रॉफी (एकल उद्धरण) वाले मान को कैसे सम्मिलित करें?"

अपने एसक्यूएल में एपॉस्ट्रॉफी से बचें (यानी एकल कोट अक्षर दोहराएं):

 INSERT INTO Person (First, Last) VALUES ('Joe', 'O''Brien') /\ right here 

SELECT क्वेरीज़ पर भी यही लागू होता है:

 SELECT First, Last FROM Person WHERE Last = 'O''Brien' 

एपोस्ट्रोफ़े या एकल उद्धरण एसक्यूएल में एक विशेष वर्ण है जो स्ट्रिंग डेटा की शुरुआत और अंत निर्दिष्ट करता है। इसका मतलब यह है कि इसे अपने शाब्दिक स्ट्रिंग डेटा के भाग के रूप में उपयोग करने के लिए आपको विशेष वर्ण से escape की आवश्यकता है। एक बोली के साथ यह आमतौर पर आपके बोली दोहरी करके पूरा किया जाता है। (दो एकल उद्धरण वर्ण, एक एकल उद्धरण के बजाय दोहरे उद्धरण नहीं।)

नोट : आपको केवल इस मुद्दे के बारे में चिंता करना चाहिए जब आप एक कच्चे एसक्यूएल इंटरफ़ेस के माध्यम से डेटा को मैन्युअल रूप से संपादित करते हैं क्योंकि विकास के बाहर प्रश्नों को लिखना और परीक्षण एक दुर्लभ घटना होना चाहिए। कोड में तकनीक और चौखटे (आपके स्टैक के आधार पर) हैं जो कि विशेष वर्ण, एसक्यूएल इंजेक्शन , आदि से बचने का ख्याल रखते हैं।

आपको केवल एकल उद्धरणों पर दोगुना करना होगा …

 insert into Person (First, Last) values ('Joe', 'O''Brien') 

आपको एपॉस्ट्रॉफी से बचने की जरूरत है टी-एसक्यूएल में यह दोहरा एपॉस्ट्रॉफी के साथ है, इसलिए आपका insert विवरण बन जाता है:

 Insert into Person (First, Last) Values 'Joe', 'O''Brien' 

चूंकि एक सिंगल उद्धरण का उपयोग स्ट्रिंग के आरंभ और अंत को इंगित करने के लिए किया जाता है; आपको इसे बचाना होगा

संक्षिप्त जवाब दो सिंगल उद्धरणों का उपयोग करना है – '' – एक एसक्यूएल डाटाबेस के लिए मान को स्टोर करने के लिए '

आवक मूल्यों को साफ करने के लिए REPLACE का उपयोग करें:

  • ओरेकल रिपेलस
  • एसक्यूएल सर्वर रीप्लाइस
  • MySQL पुनर्प्रकाश
  • पोस्टग्रेएसक्यूएल पुनर्प्रकाश

आप '''' लिए जांचना चाहते हैं, और उन्हें एकमात्र उद्धरण से बचने के लिए '''''' साथ स्ट्रिंग में मौजूद होने पर उन्हें प्रतिस्थापित करना चाहते हैं।

एडफी एक अच्छा विचार था वह उसे अपने कोड उदाहरण में पीछे की ओर मिला। या तो जावास्क्रिप्ट में या SQLite में आप उच्चारण चिह्न के साथ एपॉस्ट्रॉफी को बदल सकते हैं।

वह (गलती से मुझे यकीन है) ने ओब्रायन में एपॉस्ट्रॉफी को बदलने के बजाय स्ट्रिंग के लिए सीमांकक के रूप में उच्चारण चिह्न रखा था यह वास्तव में ज्यादातर मामलों के लिए एक बहुत ही सरल समाधान है।

एस्प्रोफ़ोफ़ा वर्ण को एआरएसओआरएसी एएससीआईआई टेबल लुकअप वैल्यू के साथ सीआरएआर फंक्शन को कॉल करके डाला जा सकता है। 39. स्ट्रिंग वैल्यू को एक कॉन्टैनेनेट ऑपरेटर के साथ मिलकर कन्टानेट किया जा सकता है।

 Insert into Person (First, Last) Values 'Joe', concat('O',char(39),'Brien') 

मूल्यों के आसपास दोहरे उद्धरण चिह्नों का उपयोग करें

 insert into Person (First, Last) Values("Joe","O'Brien") 

बजाय एक बैकटीक (~ कुंजी पर) का प्रयोग करें;

 `O'Brien`