2017-02-20 1 views
1
BULK INSERT dbo.bulkins 
FROM "C:\BulkDataFile.csv" 
WITH 
    (FIELDTERMINATOR =',', 
    ROWTERMINATOR = '\n') 

Erreur:Comment insérer dans SQL vrac serveur à partir d'Excel par requête

Msg 4860, Level 16, State 1, Line 2
Cannot bulk load. The file "C:\BulkDataFile.csv" does not exist.

Comment résoudre ce problème?

+5

bien - quelle partie ** n'existe pas ** ne comprends-tu pas? Il semble que le fichier n'est pas là - * comment le réparer? * - mettre le fichier où vous attendez qu'il soit ..... et si c'est un * SQL * distant *, le fichier doit être sur le * * lecteur C: \ 'de la machine distante ** - pas le lecteur' C: \ 'de votre ordinateur local ...... –

+0

Le fichier Excel doit également être explicitement enregistré en tant que fichier .csv. – DhruvJoshi

+0

@Marc_s ** s'il vous plaît ** ajouter que la réponse, donc cela ne s'affichera pas dans la réponse. – SqlZim

Répondre

3

Le message d'erreur semble très clair: « le fichier ... n'existe pas » ...

Il semble donc que ce fichier que vous essayez d'utiliser pour faire votre BULK INSERT est tout simplement pas là.

Comment le réparer? Simple: mettez simplement le fichier là où vous l'attendez, et réexécutez votre code.

Et si cela est une SQL Server distant, le fichier doit être sur le C:\ route de la machine à distance - de route pas votre PC local C:\ ...

+0

Existe-t-il un moyen de charger en bloc des données à partir d'un fichier local? J'ai réussi à charger ligne par ligne, mais c'est trop lent. Et copier le fichier sur le serveur ne serait pas autorisé. – thursdaysgeek

+0

@thursdaysgeek: ** non ** - votre serveur SQL distant ** ne peut pas ** accéder à votre lecteur local - et c'est une bonne chose! * Vous devez placer votre fichier soit directement sur le système de fichiers du serveur, soit sur un stockage conduire où le SQL Server a accès. –

+0

Ok. Mais comment puis-je charger le même fichier à partir de ma machine locale en utilisant SSIS? (Je préférerais utiliser SSIS, mais le code que je maintiens est dans Excel VBA). C'est probablement mieux comme une question distincte. – thursdaysgeek