Probleme bei der Verwendung von BCP über xp_cmdshell.
Ich habe die Tabellendaten als .dat in eine Datei exportiert, aber wenn ich versuche, die Datei in eine neue Tabelle zu importieren, wird der folgende Fehler angezeigt. Der SQL Server-Dienst und das von mir verwendete Konto haben vollen Zugriff auf dieses Laufwerk. Ich bin mir nicht sicher, warum ich immer noch Probleme habe.
Fehler = [Microsoft] [SQL Server Native Client 10.0] BCP-Host-Datendatei kann nicht geöffnet werden.
Hier sind die Skripte, die ich ausführe.
exec master..xp_cmdshell 'BCP database.dbo.tabel OUT d:\tabledata.dat -T -c'
exec master..xp_cmdshell 'BCP database.dbo.tabelnew IN d:\tabledata.dat -T -c'
sql-server
bcp
db7
quelle
quelle
xp_cmdshell
?Antworten:
Ich hatte das gleiche - irgendwie hat ein Windows- oder SQL Server-Update etwas geändert und ein zuvor erfolgreicher Build schlug fehl. In meinem Fall waren die Zugriffsberechtigungen für den Ordner mit den Datendateien fehlerhaft. Ich konnte das bcp über die Befehlszeile ausführen und es funktionierte, aber es schlug unter SQL Server fehl. Der SQL-Dienst benötigt grundsätzlich Zugriff auf den Ordner. Versuchen Sie es, um dies zu testen
Wenn dies fehlschlägt, überprüfen Sie Ihre Zugriffsberechtigungen (und gewähren Sie sie nach Bedarf).
quelle