2010-02-18 27 views
5

रूबी कार्यक्रमों के लिए, एक मॉड्यूल के लिए एसक्यूएल प्रश्नों को बाहरी रखने वाले मॉड्यूल के लिए कोई सिफारिशें? मैं हार्डकोडिंग एसक्यूएल प्रश्नों से बचने के लिए और संभावित रूप से प्रोग्रामों के एक सेट में एकाधिक एसक्यूएल बैकएंड का समर्थन करने के लिए देख रहा हूं जो प्रत्यक्ष एसक्यूएल प्रश्न (यानी, ओआरएम के माध्यम से मध्यस्थ नहीं) बनाते हैं।रूबी बाहरी एसक्यूएल मॉड्यूल

Hyopthetically:

# Production system is pg, dev environment is sqlite 
sql_book = What::Module::Here.load(a_file, 
            ENV['DEVEL'] ? 'PostgreSQL' : 'SQLite3') 

# Okay, now get all Widget IDs 
r = db_handle.execute(:load_all_widget_ids) 

पर्ल में मैं या कुछ CAM::SQLManager की तरह अधिक विदेशी का उपयोग हो सकता है।

http://sequel.rubyforge.org/

या आप उपयोग कर सकते रूबी DBI:

+0

दिलचस्प लगता है, लेकिन मेरा मानना ​​है कि इस मॉड्यूल/मणि पहले लिखा जाना है। लगता है कि बहुत जटिल नहीं है।/क्या आपको इस लंबे समय के बाद कोई समाधान मिला? – asaaki

+0

@साकी, नहीं, अभी तक नहीं। हालांकि, आरडीबीआई (रूबी/डीबीआई रीबूट) के शीर्ष पर बने कुछ अप्रकाशित स्क्रैचिंग हैं। – pilcrow

उत्तर

4

अगली कड़ी अधिक हल्का और ActiveRecord और DataMapper जैसे अन्य ORMs से लचीला है

https://github.com/RDBI/rdbi (संपादित)

हो सकता है आप हूँ जैसा कि आपने पूछा था, बाहरी फ़ाइल से क्वेरी पढ़ने के लिए कुछ परत लिखना चाहते हैं।

+1

हां! लेकिन कृपया पुरानी रूबी-डीबीआई की बजाय ['RDBI'] (https://github.com/rdbi) देखें। – pilcrow

+0

संपादित लिंक, धन्यवाद;) –

+0

हां, आरडीबीआई + फाइल लोडिंग सहायक और सबकुछ अपेक्षित के रूप में काम करना चाहिए। – asaaki

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