2010-09-24 24 views
2

transfert groupé à partir du fichier de test csvImpossible de charger en bloc car le fichier n'a pas pu être ouvert. code d'erreur du système d'exploitation 1326 (Échec de la connexion:. nom d'utilisateur inconnu ou mot de passe incorrect)

"\ servername \ wwwroot \ Upload \ LDSAgentsMap.txt"

chemin
 SET QUOTED_IDENTIFIER ON 
SET ANSI_NULLS ON 
GO 

CREATE PROCEDURE [dbo].[sp_CSVTest_BulkInsert] (@Path NVARCHAR(128)) 
AS 
    DECLARE @Sql NVARCHAR(256) 
    SET @Sql = 'BULK 
INSERT CSVTest 
FROM ''' + @Path + ''' WITH 
(
FIELDTERMINATOR = '','', 
ROWTERMINATOR = ''\n'' 
)' 
--PRINT @Sql 
EXEC(@Sql) 

GO 

est "\ servername \ wwwroot \ Upload \ LDSAgentsMap.txt"

Note

c'est en hébergement mutualisé et l'utilisateur de base de données ont blukadmin et le rôle de la fonction publique

Répondre

2

Cela peut se produire lorsque le compte d'utilisateur Windows sous lequel SQL s'exécute (par ex. SqlServerAccount) n'a pas les autorisations pour accéder au fichier partagé (\ nom_serveur \ wwwroot \ Upload \ LDSAgentsMap.txt).

Une façon dont nous avons travaillé est d'aller à la machine où réside le fichier partagé. Sur cette machine, ajoutez un compte d'utilisateur Windows avec le même nom d'utilisateur et le même mot de passe que le compte sous lequel SQL s'exécute.

Par exemple,

Si votre base de données réside sur MyDatabaseServer, et fonctionne sous un SqlServerAccount de compte utilisateur Windows avec mot de passe Foo, puis aller à la machine où votre fichier partagé réside, par exemple MyFileServer et créez un compte d'utilisateur Windows nommé SqlServerAccount avec le mot de passe Foo.

Dernière étape: accédez au partage de dossier sur MyFileServer et accédez aux propriétés de partage de ce dossier. (Sur Win7, cliquez avec le bouton droit sur le dossier-> Propriétés-> Partage-> Partage avancé). Puis ajoutez l'autorisation de lecture pour SqlServerAccount que vous avez créé.

1

Je recevais cette erreur de SSIS en essayant d'exécuter une procédure stockée qui a effectué une insertion en bloc.

Je l'ai corrigé en ajoutant le numéro de port SQL Server à la chaîne de connexion dans SSIS, forçant SSIS à accéder à SQL Server via TCP/IP au lieu de canaux nommés.