2008-09-09 13 views
11

में एक डीबीएफ फ़ाइल आयात करने के लिए कैसे करें आप SQL सर्वर में फॉक्सप्रो डीबीएफ फ़ाइल कैसे आयात कर सकते हैं?SQL सर्वर

उत्तर

15

उपयोग किसी लिंक किए गए सर्वर या OPENROWSET उपयोग करते हैं, उदाहरण के

SELECT * into SomeTable 
FROM OPENROWSET('MSDASQL', 'Driver=Microsoft Visual FoxPro Driver; 
SourceDB=\\SomeServer\SomePath\; 
SourceType=DBF', 
'SELECT * FROM SomeDBF') 
+5

मैंने इसका इस्तेमाल किया, लेकिन यह त्रुटि होती है ---- लिंक किए गए सर्वर "(शून्य)" के लिए ओएलई डीबी प्रदाता "MSDASQL" संदेश लौटाता है "[माइक्रोसॉफ्ट] [ओडीबीसी चालक प्रबंधक] ड्राइवर इस फ़ंक्शन का समर्थन नहीं करता है"। लिंक किए गए सर्वर "(शून्य)" के लिए ओएलई डीबी प्रदाता "MSDASQL" के डेटा स्रोत ऑब्जेक्ट को प्रारंभ नहीं किया जा सकता है। – sqlchild

+1

@sqlchild: मुझे इसे मेरे लिए काम करने के लिए इंस्टॉल करना पड़ा। http://msdn.microsoft.com/en-us/vfoxpro/bb190233 – JoshBaltzell

+0

@ जोशबाल्टज़ेल: जब मैं उस ओडीबीसी ड्राइवर को स्थापित करने का प्रयास करता हूं तो मुझे निम्न त्रुटि मिलती है: "त्रुटि 1 9 18: ओडीबीसी ड्राइवर स्थापित करने में त्रुटि: माइक्रोसॉफ्ट विजुअल फॉक्सप्रो डाइवर, ओडीबीसी त्रुटि 13. Microsoft Visual FoxPro Diver ODBC ड्राइवर के लिए सेटअप दिनचर्या सिस्टम त्रुटि कोड 1114 के कारण लोड नहीं की जा सकी: एक गतिशील लिंक लाइब्रेरी (DLL) प्रारंभिक दिनचर्या विफल रही। (सी: \ विंडोज \ system32 \ vfpodbc.dll) .. सत्यापित करें कि फ़ाइल माइक्रोसॉफ्ट विजुअल फॉक्सप्रो ड्राइवर मौजूद है और आप इसे एक्सेस कर सकते हैं। " – Zach

2

क्या अंत में हमारे लिए काम किया FoxPro OLEDB Driver का उपयोग करें और निम्न सिंटैक्स का उपयोग करने के लिए किया गया था। हमारे मामले में हम, एसक्यूएल 2008.

select * from 
    openrowset('VFPOLEDB','\\VM-GIS\E\Projects\mymap.dbf';''; 
    '','SELECT * FROM mymap') 

स्थानापन्न अपने DBF फ़ाइल के स्थान के साथ \\VM-GIS... उपयोग कर रहे हैं या तो यूएनसी या ड्राइव पथ। इसके अलावा, FROM के बाद। डीबीएफ एक्सटेंशन के बिना डीबीएफ फ़ाइल के नाम के साथ विकल्प।

+1

हां आप निश्चित रूप से ओडीबीसी पर ओएलडीबीबी का उपयोग करना चाहते हैं। –

4

मैं jnovation से जवाब उपयोग करने में सक्षम था, लेकिन बाद से वहाँ कुछ मेरी क्षेत्रों के साथ गलत था, मैं बस की तरह सभी के बजाय विशिष्ट क्षेत्रों, चयनित:

select * into CERTDATA 
from openrowset('VFPOLEDB','C:\SomePath\CERTDATA.DBF';''; 
    '','SELECT ACTUAL, CERTID, FROM CERTDATA') 

आखिरकार यहां काम करने योग्य उत्तर देने के लिए बहुत ही रोमांचक है हर किसी के लिए धन्यवाद!

+0

यह मेरे लिए काम किया। हालांकि जब तक मैं सर्वर ऑब्जेक्ट्स -> लिंक्ड सर्वर -> प्रदाता -> VFPOLEDB पर गया, तब तक मुझे "एक्सेस अस्वीकृत" त्रुटि प्राप्त होगी, गुणों पर क्लिक किया गया और "अक्षमता की अनुमति दें" की जांच की गई –