hallo,
ik wil de data uit een xlsx bestand importeren naar een bestaande mdf database.
bestaande gegevens moet worden vervangen en nieuwe toegevoegd.
ik heb volgende code die ik in ssms uitvoer.
Bij de source kolommen krijg ik telkens de melding "invalid column" terwijl deze toch correct zijn.
als ik probeer via sql import en export krijg ik de melding "De Microsoft.ACE.OLEDB.12.0-provider is niet geregistreerd op de lokale computer. (System.Data)" terwijl deze wel is geïnstalleerd.
Import en export met een xls file lukt wel
ik wil de data uit een xlsx bestand importeren naar een bestaande mdf database.
bestaande gegevens moet worden vervangen en nieuwe toegevoegd.
ik heb volgende code die ik in ssms uitvoer.
Code:
MERGE INTO dbo.stock AS Target
USING (SELECT ref, vast, es, omschrijving FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;Database=C:\cat\stock.xlsx', 'SELECT * FROM [Blad1$]')) AS Source
ON Target.autonr = Source.autonr
WHEN MATCHED THEN
UPDATE SET
Target.ref = Source.ref,
Target.vast = Source.vast,
Target.es = Source.es,
target.omschrijving = source.omschrijving
WHEN NOT MATCHED BY TARGET THEN
INSERT (ref, vast, es, omschrijving)
VALUES (Source.ref, Source.vast, Source.es, source.omschrijving);
als ik probeer via sql import en export krijg ik de melding "De Microsoft.ACE.OLEDB.12.0-provider is niet geregistreerd op de lokale computer. (System.Data)" terwijl deze wel is geïnstalleerd.
Import en export met een xls file lukt wel