mysql

2009-09-16 22 views
6

में ऐरे वैरिएबल क्या एक सरणी (या कोई संग्रह) घोषित करने के लिए एक MySQL स्क्रिप्ट में कोई तरीका है और सामान करने के लिए इसे लूप करें?mysql

उदाहरण के लिए

,

SET @myArrayOfValue=[2,5,2,23,6] 


for each @value in @myArrayOfValue 
    INSERT INTO EXEMPLE VALUES(@value, 'hello'); 
end for each 
+4

क्या वास्तविक वास्तविक परिस्थितियों में आप यह करना चाहते हैं? यदि सरणी एक SELECT कथन से है, तो आपको बस INSERT चाहिए ... चुनें। यदि सरणी आपके एप्लिकेशन से है, तो आपको EXEMPLE VALUES (@value, 2), (@ value, 5), (@ value, 2) में शामिल होना चाहिए ... – longneck

+3

मैं बस नया जोड़ने के लिए रखरखाव स्क्रिप्ट करना चाहता हूं मूल्य। प्रत्येक सम्मिलन की प्रतिलिपि पेस्ट करने के बजाय, मैं स्क्रिप्ट की शुरुआत में एक सूची बनाना चाहता हूं। लोगों को संशोधित करने के बारे में जानने के लिए सभी स्क्रिप्ट पढ़ने की ज़रूरत नहीं है, लेकिन शुरुआत में केवल चर। – Mike

+0

@ लोंगनेक, इस पृष्ठ पर 16k आगंतुकों से पूछें, साथ ही वास्तविक दुनिया परिस्थितियों के लिए http://stackoverflow.com/q/12176709/632951 पर 67k विज़िटर पूछें जिससे आप ऐसा करेंगे। – Pacerier

उत्तर

2

नहीं, एसक्यूएल/प्रत्येक के लिए समर्थन नहीं करता है आदि वाक्य रचना। सबसे नज़दीकी आप कर्सर का उपयोग करना होगा। इसके अलावा, वहाँ एसक्यूएल में कोई सरणी वाक्य रचना है - आप का उपयोग करना होगा:

SELECT 2 FROM DUAL 
UNION ALL 
SELECT 34 FROM DUAL 
UNION ALL 
SELECT 24 FROM DUAL 

... अपने "मूल्यों की सरणी" एसक्यूएल में बराबर के निर्माण के लिए।

एसक्यूएल स्क्रिप्ट में व्यक्तिगत INSERT कथन होंगे। आप PHP/जावा/आदि का उपयोग करना चाहते हैं। आपके उदाहरण में प्रदान की जाने वाली लूप-एस्क सिंटैक्स के लिए उपयोग करने के लिए।

+0

मुझे कर्सर का उपयोग करने की कोई बात नहीं है, लेकिन इस एसईटी @myValues ​​[2,34,22] जैसी चीज़ों से मूल्यों को आने की आवश्यकता है। Thanx – Mike

+0

Thanx, यह वही है जो मैं ढूंढ रहा था। सिंटैक्स उपयोग करने के लिए बहुत बदसूरत है लेकिन यह मेरे सवाल को परेशान कर दिया। – Mike

0

क्या आप MySQL SET जैसे कुछ उपयोग कर सकते हैं? आप के माध्यम से लूपिंग के बजाय मूल्य एसईटी में स्टोर कर सकते हैं।

+0

नहीं, मैं नहीं कर सकता, मुझे अलग-अलग पंक्तियों में मूल्य डालने की आवश्यकता है। मैं इसे एक स्क्रिप्ट का उपयोग करने में आसान बनाने के लिए करना चाहता हूं। – Mike

+0

प्रत्येक सरणी के माध्यम से PHP (या कुछ) और लूप का उपयोग करें और बस एक साधारण डालने के बाद –

+0

मुझे इसे एक MySQL स्क्रिप्ट में चाहिए। – Mike