चर

2012-04-12 11 views
6

में निष्पादित mysql क्वेरी वर्तमान मैं एक MySQLvariableचर

@query = CONCAT('INSERT INTO history VALUES (',1,',',50,',UTC_TIMESTAMP()'); 

मैं डालने बयान चर में मौजूद निष्पादित करने के लिए चाहते हैं।

+0

तैयार कथन –

+0

कृपया मुझे उदाहरण दें – Avinash

+0

मेरा उत्तर देखें, मुझे लगता है कि यह काम करेगा –

उत्तर

12

आप पहली बार PREPARE का उपयोग कर बयान तैयार करना होगा और उसके बाद EXECUTE

का उपयोग यहाँ देखें: http://dev.mysql.com/doc/refman/5.0/en/sql-syntax-prepared-statements.html

कुछ की तरह:

SET @query = CONCAT("INSERT INTO history VALUES (",1,",",50,",UTC_TIMESTAMP()"); 

PREPARE stmt1 FROM @query; 
EXECUTE stmt1; 
DEALLOCATE PREPARE stmt1; 
+0

मुझे यह त्रुटि मिली # 1064 - आपको अपने SQL वाक्यविन्यास में कोई त्रुटि है; लाइन 2 – Avinash

+0

पर 'EXECUTE stmt_name' के पास उपयोग करने के लिए सही वाक्यविन्यास के लिए आपके MySQL सर्वर संस्करण से मेल खाने वाले मैन्युअल की जांच करें, मेरा संपादन करने का प्रयास करें, ठीक होना चाहिए। – mattytommo

+0

धन्यवाद @ mattytommo। – Avinash

2
Set @query = CONCAT("INSERT INTO history VALUES (",1,",",50,",UTC_TIMESTAMP()"); 

और फिर

PREPARE stmt_name FROM @query 

और पिछले

EXECUTE stmt_name 
-2

पर concat(), यह बाद से यह और कुछ नहीं के साथ एक स्ट्रिंग को श्रेणीबद्ध करने के लिए कोशिश कर रहा है कोई त्रुटि उत्पन्न के अलावा कुछ नहीं कर रहा है हटा दें।

+0

यह वास्तव में 5 तत्वों को जोड़ रहा है, यह कोई त्रुटि नहीं होगी => आपका उत्तर खराब है -> पहले से ही उत्तर दिए गए सवालों का जवाब न दें - 'नया' अनुभाग देखें और अपने कौशल दिखाएं :) – Toumash

+0

अनौपचारिक उत्तर। –