Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
How to use BULK INSERT ?
Message
 
À
03/11/2004 04:03:26
Cetin Basoz
Engineerica Inc.
Izmir, Turquie
Information générale
Forum:
Visual FoxPro
Catégorie:
Client/serveur
Versions des environnements
Visual FoxPro:
VFP 8 SP1
OS:
Windows XP
Database:
MS SQL Server
Divers
Thread ID:
00956757
Message ID:
00962235
Vues:
20
Hello Cetin !
I am sorry that I have to return to this question again, but I still have an unsolved issue.

When I first used OPENROWSET method like this
SELECT * FROM OPENROWSET('VFPOLEDB', 'C:\TEMP ';'';'','select * from test1.dbf')
I got the error:
“Ad hoc access to OLE DB provider ‘CustomOLEDBProvider ‘ has been denied. You must access this provider through a linked server”.
In MS KB I found the article # 328569 which gave the solution for this problem - to install the service pack for MS SQL Server. After the installation SP3 (check that DissallowAdHocAccess key exists) I got another message for the same action:
“Could not create an instance of OLE DB provider 'VFPOLEDB'.
OLE DB error trace [Non-interface error: CoCreate of DSO for VFPOLEDB returned 0x80040154]. “

I tried the same action on my local computer, where I have another copy of MS SQL Server- it works fine.
(I have Windows XP on my computer, and Windows NT on our main server. )

I am wondering may be you know what the a problem here, what else I have to check or install ?

Thank you very much,
Mariam


>Mariam,
>Why are you using MSDASQL. It's a wrapper driver for ODBC. Directly use VFPOLEDB driver (BTW MSDASQL works too). ie:
>
*Assuming SQL server has a table named myTable with same structure as ordItems
>* lnHandle is ready
>text to m.lcSQL textmerge noshow
>insert into myTable ;
>  SELECT * FROM
>  OPENROWSET('VFPOLEDB',
>  '<<_samples+"data\testdata.dbc">>';'';'',
>  'select * from orditems')
>endtext
>SQLExec(m.lnHandle,m.lcSQL)
>
Cetin
>
>>Thank you for help.
>>i try to use OpenRowSet() but have a error message
>>
>>1)
>>exec sp_addlinkedserver @server=N'CSTSERVER',
>>@srvproduct ='',
>>@provider = N'MSDASQL',
>>@datasrc=N'DBF'
>>2)
>>exec sp_addlinkedsrvlogin @rmtsrvname=N'CSTSERVER',
>>@useself = N'FALSE',
>>@locallogin = NULL,
>>@rmtuser = N'',
>>@rmtpassword =N''
>>
>>first two work fine
>>
>>3)
>>select * from [CSTSERVER].[Q:\FPDEV\COMMON\sqlappinspect]..[helpdb]
>>
>>here i have an error
>>OLE DB provider 'MSDASQL' reported an error.
>>[OLE/DB provider returned message: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified]
>>OLE DB error trace [OLE/DB Provider 'MSDASQL' IDBInitialize::Initialize returned 0x80004005: ].
>>
>>
>>
>>>>Hello All !
>>>>I have VFP 8.0/SQL Server SPT application.
>>>>I'm wondering is there any way to use BULK INSERT command for loading DBF file into a SQL Server table ? All examples I've seen were about loading text files and not the DBF.
>>>>TIA
>>>>Mariam
>>>
>>>Mariam,
>>>It's because dbf files do not need BULK INSERT command. See OpenRowSet() - or search here for samples.
>>>Cetin
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform