2013-06-18 6 views
7

मैंने नेटजेज़ा (एसक्यूएल डेटाबेस) से ओडीबीसी कनेक्ट किया है। कनेक्शन ठीक है। हालांकि, आर केवल डिफ़ॉल्ट रूप से 256 पंक्तियों को खींचता है और पंक्तियों की संख्या को प्रतिबंधित करता है जो इसे खींच सकता है।आरओडीबीसी कनेक्शन- सीमित पंक्तियां

यदि मैं नेटेजज़ा में क्वेरी चलाता हूं, तो यह पंक्तियों की कुल संख्या (300k) वापस कर देगा। मैं आर में समान पंक्तियों की उम्मीद कर रहा हूं। हालांकि, यह केवल 3006 से थोड़ी कम 256 पंक्तियों को वापस कर देता है।

चालक मैं NetezzaSQL संस्करण का उपयोग कर रहा 7.00.02 NSQLODBC.DLL

मैं पहले लाएं कंट्रोल पैनल से "ड्राइवर विकल्प 'में शून्य करने के लिए गिनती> व्यवस्थापकीय टूल> डेटा स्रोत बदलने की कोशिश की (OBBC)> सिस्टम DNS

यह काम नहीं किया। कोई भी विचार?

+0

आप कितनी पंक्तियों की अपेक्षा कर रहे हैं? और आप किस ओडीबीसी कनेक्शन लाइब्रेरी का उपयोग कर रहे हैं? –

+0

पूर्ण आकार (300k)। मुझे लगता है कि आप ओडीबीसी डेटा स्रोत प्रशासक> सिस्टम डीएसएन –

+0

और किस प्रकार का ड्राइवर था? –

उत्तर

7

मुझे लगता है कि RODBC Netezza के साथ खराब काम करता है। एक समाधान http://datamining.togaware.com/survivor/Database_Connection.html

सिर्फ ई के लिए believeNRows=FALSE जोड़ने अपने sqlQuery या odbcConnect कॉल करें (बाद में उपयोग करें यदि आप sqlFetch का भी उपयोग करते हैं।

+0

सही, बस अपनी क्वेरी में तर्क जोड़ें, उदाहरण के लिए 'परिणाम = sqlQuery (dbhandle, "तालिका से चुनें *, विश्वास करें NRows = FALSE)' – DavidJ

+0

यह एक वर्ष रहा है लेकिन जो भी हो, यह मेरे लिए काम करता है: डी – gtnbz2nite

2

तुम भी JDBC ड्राइवर आज़मा सकते हैं:

library(RJDBC) 
drv <- JDBC("org.netezza.Driver", "nzjdbc.jar", "'") 

conn <- dbConnect(drv, "jdbc:netezza://host:5480/database", "user", "password") 

res <- dbSendQuery(conn, "select * from mytable") 

इस तरह आप DSNs से निपटने के लिए की जरूरत नहीं है, आदि

+1

एलेक्स, मैं मैक पर nzjdbc.jar का उपयोग करके इस विधि को आजमाया है और अभी भी 256 पंक्तियां वापस आ रही हैं। कोई विचार? –

+0

@ फ्रैंकपी।, 256 चालक के लिए प्री-फ़ेच बफर की डिफ़ॉल्ट लंबाई है। क्या आपने 'fetch (res, n = -1)' का उपयोग कर डेटा डाउनलोड किया था? -1 सभी रिकॉर्ड्स को पुनर्प्राप्त करने के लिए मजबूर करेगा। –

0

मैं जानता हूँ कि इस तरह से बाहर दिनांकित है, लेकिन समस्या यह है आरओडीबीसी पैकेज के साथ नहीं। समस्या यह है कि आप ओडीबीसी कनेक्शन कैसे स्थापित करते हैं, यदि आप विंडोज़ में कनेक्शन कॉन्फ़िगर करते हैं तो आपको सेटिंग्स में एक अंतिम टैब दिखाई देगा जहां आप इसे प्राप्त करने वाली पंक्तियों की मात्रा निर्दिष्ट कर सकते हैं। और डिफ़ॉल्ट 256 पर है।

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