दिलचस्प पोस्ट
64-बिट .NET अनुप्रयोग से WOW64 रजिस्ट्री कुंजी को कैसे खोलें स्विफ्ट से ऑब्जेक्टिव-सी कोड को कैसे कॉल करें JQuery कैसे href तत्व पर क्लिक ईवेंट ट्रिगर करने के लिए साजिश के साथ कस्टम मार्कर का उपयोग कैसे करें? उद्देश्य-सी में फ्लोट्स के साथ परेशानी ऑपरेटर के बीच LINQ जावा के लिए कौन सी अभिनेता मॉडल लाइब्रेरी / फ्रेमवर्क है? पायथन स्क्रिप्ट आउटपुट विंडो को कैसे खोलें? जावास्क्रिप्ट सीएसआरएफ भेद्यता से बचने के लिए HTTP GET में MVC3 के एंटीफ़ॉर्गरी टोकन का उपयोग करना कस्टम वैधीकरण सरल टेम्पलेट Asp.net MVC 3 मैवेन के लिए एक नया पैकेजिंग प्रकार कैसे बनाऊँ? जावास्क्रिप्ट: एक * स्ट्रिंग * संख्या के दशमलव की संख्या कैसे प्राप्त करें? ट्रिगर करने / पकड़ने का उपयोग कब किया जाए? वेबड्राइवर क्लिक करें () बनाम जावास्क्रिप्ट क्लिक करें () JSON में सिंगल बनाम डबल कोट्स

SQL स्टेटमेंट में बैकटीक और वर्ग ब्रैकेट के बीच अंतर क्या है?

मैंने सोचा था कि इस बारे में एक और सवाल होगा लेकिन मैं एक को खोजने में असमर्थ था। MySQL में PHP के साथ मैं आमतौर पर अपने फ़ील्ड नामों को किसी भी आरक्षित नाम या वर्णों को मुखौटा करने के लिए बैकटीक्स के साथ समापित करता हूं। हालांकि, मेरे एक सहयोगियों ने यह बताया है कि यह भी वर्ग कोष्ठक का उपयोग करके प्राप्त किया जा सकता है। इस तथ्य को छोड़कर कि बैकटीक्स SQL ​​सर्वर (जाहिरा तौर पर) के साथ संगत नहीं हैं, अंतर क्या है? मुझे किस का उपयोग करना चाहिए?

SELECT `username` FROM `users` SELECT [username] FROM [users] 

Solutions Collecting From Web of "SQL स्टेटमेंट में बैकटीक और वर्ग ब्रैकेट के बीच अंतर क्या है?"

एसक्यूएल सर्वर / टी-एसएक्बल स्क्वेयर कोष्ठक (साथ ही एमएस एक्सेस) का उपयोग करता है, जबकि MySQL बैकटीक्स का उपयोग करता है

जहाँ तक मुझे पता है, दस्तावेज में बदल सकते हैं , या परीक्षण में उपयोग कर सकते हैं , स्क्वायर कोष्ठ MySQL के लिए मान्य नहीं हैं I इसलिए यदि आपको एक खोजशब्द को SQL सर्वर में एक टेबल नाम के रूप में संलग्न करना है, तो [] उपयोग करें, और MySQL में ANSI_QUOTES का उपयोग करें, या ANSI_QUOTES सक्षम होने पर डबल-उद्धरण।

प्रलेखन से:

पहचानकर्ता बोली चरित्र बैकटीक ("`) है:

 mysql> SELECT * FROM `select` WHERE `select`.id > 100; 

अगर एएनएसआई_क्वाइट एसक्यूएल मोड सक्षम है, तो दोहरे उद्धरण चिह्नों के भीतर पहचानकर्ता को उद्धृत करने के लिए भी अनुमति है:

 mysql> CREATE TABLE "test" (col INT); ERROR 1064: You have an error in your SQL syntax... mysql> SET sql_mode='ANSI_QUOTES'; mysql> CREATE TABLE "test" (col INT); Query OK, 0 rows affected (0.00 sec) 

दोनों ऑब्जेक्ट नामों का उद्धरण करने के लिए गैर-मानक तरीके हैं, जो केस-सेंसिटिव हो सकते हैं, आरक्षित शब्द हैं या विशेष वर्ण हैं जिनकी अनुमति अन्यथा नहीं है।

इस तरह के एक पहचानकर्ता के लिए मानक उद्धरण चरित्र एक दोहरा उद्धरण है। एएनएसआई एसक्यूएल संगत होने के लिए, आपको उनका उपयोग करना चाहिए:

 SELECT "username" FROM "users" 

लेकिन ध्यान दें कि एएनएसआई एसक्यूएल के अनुसार उद्धृत पहचानकर्ता केस-संवेदी हैं। हालांकि दोनों उत्पादों का उल्लेख इस आवश्यकता के अनुरूप नहीं है। क्या ऐसा पहचानकर्ता मामला-संवेदी है या नहीं, कई अलग-अलग कॉन्फ़िगरेशन सेटिंग्स पर MySQL और MS SQL सर्वर में डेटाबेस मिलान पर निर्भर करता है।

दोनों डीबीएमएस (और मेरी राय में) एएनएसआई मानक बोली पात्रों को भी स्वीकार करने के लिए कॉन्फ़िगर किया जा सकता है।

मैं दृढ़ता से किसी भी ऑब्जेक्ट नाम से बचने की सलाह देता हूं जिसके लिए उद्धृत करना आवश्यक है । ऐसे पहचानकर्ता का उपयोग करना जो उद्धृत करने की आवश्यकता नहीं होती है, आपको लंबे समय तक बहुत ही परेशानी से बचाएगा।