Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
670 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [SQL Server 2005] Exporter une table vers un fichier texte via SSIS

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[SQL Server 2005] Exporter une table vers un fichier texte via SSIS

n°2020352
finelame
Même pas mal
Posté le 01-09-2010 à 11:33:29  profilanswer
 

Bonjour,
Comme le titre l'indique, je dois exporter une table vers un fichier texte via un package SSIS.
J'ai créé le package (avec SQL server Business Intelligence Developpement Studio  integration service project ).
Lorsque je lance le start Debugging tout se déroule normalement, j'ai bien mon fichier texte en sortie ==> tout roule.
 
Je build donc mon projet.DTSX.
Depuis la console SQL Server management studio, je l'ajoute dans l'Integration services du serveur sous Stored PackagesFile systempackage. ==> clique droit sur le package, run ==> ca fonctionne.
Depuis l'Execute package utility (qui a fait tourné correctement le package) menu Command Line je copie la commande générée, et j'essaie de lancer cette commande depuis une query SQL, ca donne :
 
 

Code :
  1. DECLARE @chaine   varchar(2048)   SELECT @chaine='DTEXEC /DTS "File SystemPackage" /SERVER "xxxxx" /MAXCONCURRENT " -1 " /CHECKPOINTING OFF  /REPORTING V '
  2. EXEC xp_cmdshell @chaine
  3. [b][/b]


 
mais lorsque je l'éxécute il me fait une erreur :
 
   Code: 0xC0016016
   Source:  
   Description: Failed to decrypt protected XML node "DTS:Password" with error 0x8009000B "Key not valid for use in specified state.". You may not be authorized to access this information. This error occurs when there is a cryptographic error.  
 
J'éxécute la query SQL en tant que 'sa'.
D'apres de ce que j'ai vu sur internet j'ai essayer de changer la propriété "SecurityProtection Level", mais a seule différence obtenue est lors de l'ajout du package dans l'Integration services il me demande un mot de passe c'est tout, meme message d'erreur.
 
Voili voilou, si quelqu'un a une idée sur où chercher je suis preneur !
 
merci +++
Fine.

mood
Publicité
Posté le 01-09-2010 à 11:33:29  profilanswer
 

n°2020409
alien cons​piracy
hardtrance addict
Posté le 01-09-2010 à 14:05:04  profilanswer
 

C'est pas une question de droit d'accès (lecture/écriture) sur le fichier ?

n°2020437
Oliiii
Posté le 01-09-2010 à 15:09:29  profilanswer
 

Les infos sensibles d'un package SSIS sont toujours encryptee (ou carement effacee).
Par defaut les infos sont encryptee avec le user key, donc celui qui a sauvé le package dans msdb (ou dans une directory) est le seul a pouvoir le faire tourner. C'est pour ca que ca marche avec click droit -> Run (il le fait tourner avec ton compte).
 
Par contre ca marche pas avec xp_cmdshell, car xp_cmdshell utilises toujours le compte qui fait tourner le service MSSQLSERVER, different user -> probleme pour decrypter le package -> erreur.
 
Si tu veux executer ton package depuis xp_cmdshell tu dois sauver le package et utiliser un mot de passe (Encrypt Sensitive data with Password), dans ta ligne de commande DTExec tu peux utiliser /P pour donner le mot de passe, ou alors tu t'arranges pour sauver le package avec le compte qui fait tourner le service SQL Server.


Message édité par Oliiii le 01-09-2010 à 15:10:53
n°2020625
finelame
Même pas mal
Posté le 02-09-2010 à 08:03:26  profilanswer
 

OK, merci pour la réponse je vais tester cela !  

n°2020628
finelame
Même pas mal
Posté le 02-09-2010 à 08:16:38  profilanswer
 

Alors, j'essaie la commande avec un /P et j'ai ce message d'erreur :  
The DTS option cannot be specified with the File, SQL, User, or Password options.
 
SELECT @chaine='DTEXEC /DTS "\File System\Package" /SERVER "xxxxx" /P xxxxx /MAXCONCURRENT " -1 " /CHECKPOINTING OFF  /REPORTING V '
EXEC xp_cmdshell @chaine  
 
 
Sinon j'ai essayé aussi avec le parametre /De (decrypt).
 
DECLARE @chaine   varchar(2048)    
 
SELECT @chaine='DTEXEC /DTS "\File System\Package" /SERVER "xxxxxx" /De xxxxxx /MAXCONCURRENT " -1 " /CHECKPOINTING OFF  /REPORTING V '
EXEC xp_cmdshell @chaine  
 
et j'ai l'erreur :
   Code: 0xC0016016
   Source:  
   Description: Failed to decrypt protected XML node "DTS:Password" with error 0x8009000B "Key not valid for use in specified state.". You may not be authorized to access this information. This error occurs when there is a cryptographic error. Verify that
 
Je vais maintenant regarder avec quel compte windows le MS SQL Server tourne pour builder le package avec celui-ci.

n°2020631
Oliiii
Posté le 02-09-2010 à 08:22:56  profilanswer
 

Tu as bien resauvé ton package avec Encrypt with password et pas user key?

n°2020632
finelame
Même pas mal
Posté le 02-09-2010 à 08:23:22  profilanswer
 

Ah, le serveur est en "Local System" .... on peut créer un package depuis ce compte ?

n°2020635
finelame
Même pas mal
Posté le 02-09-2010 à 08:40:29  profilanswer
 

Oliiii a écrit :

Tu as bien resauvé ton package avec Encrypt with password et pas user key?


Oui, d'ailleurs lorsque j'ajoute le package dans L'integration services il me demande le mot de passe, et si je ne met pas le bon ca me le redemande.

n°2020642
Oliiii
Posté le 02-09-2010 à 09:36:11  profilanswer
 

Si tu peux te logguer avec le compte tu devrais pouvoir le sauver


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [SQL Server 2005] Exporter une table vers un fichier texte via SSIS

 

Sujets relatifs
[RESOLU]Modifier table Access en Visual Basicfaire une recherchev et sommer les colonnes sur un fichier excel avec
[SQL SERVEUR] Backup complet serveurGDI - Texte transparent sur Form transparent
[RESOLU] opendir() sur server distant / droit apache[Résolu] Div avec photo et texte pour index gallerie
[SQL]-Tables SystèmesCréer une table dans Access à partir d'un tableau
Formulaire et texte qui disparaitCopie de fichier : Quel langage?
Plus de sujets relatifs à : [SQL Server 2005] Exporter une table vers un fichier texte via SSIS


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR