2013-11-21 11 views
5

पर वैश्विक चर सेट नहीं कर सकता है मैं स्थानीयहोस्ट में (यूबंटू और विंडोज़ में) में MySQL का उपयोग कर रहा हूं। मैं एक वैश्विक चर सेट करना चाहता हूं, और मैंने सभी तरीकों से कोशिश की है, भले ही मुझे mysql से "ठीक" संदेश मिलता है, फिर जब मैं "चयन @var" करता हूं तो यह हमेशा "न्यूल" कहता है। मैंने कोशिश की है:माइस्क्ल

set global var=17; 
set @global.var=17; 
set @@var=17; 

क्या कोई मेरी मदद कर सकता है?

अग्रिम धन्यवाद।

ps: मेरे पास सुपर विशेषाधिकार है।

+0

मैं बस "$ var = 17;" कोशिश करूंगा – user2196728

+1

क्या? "$" सिंबल PHP में चर के लिए है, MySQL में नहीं। –

+0

oups क्षमा करें, मैं केंद्रित नहीं था! – user2196728

उत्तर

4

परिवर्तनीय नाम var मान्य सिस्टम चर का संदर्भ नहीं देता है। GLOBAL और SESSIONSET कथन में कीवर्ड का उपयोग MySQL सिस्टम चर सेट करते समय दायरे को निर्दिष्ट करने के लिए किया जाता है, MySQL उपयोगकर्ता चर नहीं। उदाहरण के लिए

प्रयास करें:

SELECT @@global.net_read_timeout ; 

SET GLOBAL net_read_timeout = 45 ; 

SELECT @@global.net_read_timeout ; 

http://dev.mysql.com/doc/refman/5.5/en/set-statement.html

+1

तो, आपके द्वारा चुने गए किसी भी नाम के साथ स्थायी रूप से एक चर सेट करना और स्टोर करना संभव नहीं है? –

+1

यह सही है। 'सेट ग्लोबल' पूर्वनिर्धारित MySQL * सिस्टम चर * को संशोधित करने के लिए है। इसका उपयोग * उपयोगकर्ता परिभाषित चर * सेट करने के लिए नहीं किया जाता है। मेरे पास त्रुटि को छोड़ने के बजाय, "ठीक" संदेश के साथ MySQL प्रतिक्रिया के लिए कोई स्पष्टीकरण नहीं है। शायद एक मानक SQLSTATE नहीं है जो त्रुटि का सटीक रूप से प्रतिनिधित्व करता है, हो सकता है कि सफलता कोड वापस करना आसान हो; या, शायद यह भविष्य के उन्नयन के संबंध में एक डिज़ाइन निर्णय था, और बहिष्कृत और हटाए गए सिस्टम चर के लिए पिछली संगतता की कुछ डिग्री थी। – spencer7593

1

MySQL 5.0 Reference Manual के अनुसार:

उपयोगकर्ता-निर्धारित वेरिएबल सत्र-विशिष्ट हैं। यही है, एक उपयोगकर्ता द्वारा परिभाषित एक उपयोगकर्ता परिवर्तनीय अन्य क्लाइंट द्वारा देखा या उपयोग नहीं किया जा सकता है। किसी दिए गए क्लाइंट सत्र के लिए सभी चर स्वचालित रूप से मुक्त हो जाते हैं जब ग्राहक बाहर निकलता है।

वैश्विक (लगातार साझा) चर का उपयोग करने के लिए आप MySQL Global User Variables UDF जैसे एक्सटेंशन का उपयोग करने पर विचार कर सकते हैं।

संबंधित मुद्दे