|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité régulier
![]() Sopotel Inscription : juillet 2011 Messages : 33 ![]() |
Bonjour j'aimerais exporter les données ci-dessous dans une base de données sql server 2008 et tout ça sur une seule ligne. Cela me permettra d'avoir un suivi des instructions faite par chaque machines (ici la machine EDS2 3A2-1711). Il faut que je respecte l'ordre chronologique.
2011.06.02 00:00:00.07,/Alia,50.19.7.187,EDS2 3A2-1711,,,, 2011.06.02 00:01:06.51,EDS2 3A2-1711,BagSc,,,,, 2011.06.02 00:01:08.09,EDS2 3A2-1711,TagIn,NAFZ2014850,,,, 2011.06.02 00:01:09.68,EDS2 3A2-1711,MfDec,NAFZ2014850,R,,, 2011.06.02 00:01:09.71,EDS2 3A2-1711,SendB,NAFZ2014850,50.2.4.3,960,R, 2011.06.02 00:01:09.90,EDS2 3A2-1711,SentB,NAFZ2014850,50.2.4.3,,, 2011.06.02 00:01:09.83,PO-2A-10G-3,WsRcv,NAFZ2014850,711,960,0, 2011.06.02 00:01:10.33,PO-2A-10G-3,WsSho,NAFZ2014850,711,0,, 2011.06.02 00:01:12.52,PO-2A-10G-3,WsDec,NAFZ2014850,711,0,R, Code :
Dans un premier temps je mets dans un tableau temporaire mes informations, je ne sais pas si je procède de la bonne manière. La commande BULK INSERT peut elle être intéressante ici. Je suis novice en sql server, je vous remercie d'avance de l'aide apportée. |
||
|
|
00
|
|
|
#2 |
|
Membre habitué
![]() Inscription : janvier 2008 Messages : 212 ![]() |
Oublies Visual Basic pour ce genre de manipulation. Utilises Integration Service (SSIS).
Un tutoriel est disponible à cette adresse : http://odelmotte.developpez.com/tuto.../introduction/ |
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Sopotel Inscription : juillet 2011 Messages : 33 ![]() |
Bonjour, je vous remercie de votre réponse.
J'ai lu le tutoriel, donc on doit créer une table sur sql server 2008 et ensuite utiliser SSIS pour stocker les données de mon fichier csv ou log . En faite ce qui me pose problème, c'est que la machine qui m'édite mes fichiers le fait à des heures précise. Pour le log toutes les heures et pour le csv à la fin de la journée. Donc il y a un paquet de lignes et de fichier générés J'aimerais bien récupérer ses informations automatiquement et les stocker dans ma base de données à l'aide d'une application. Plus précisément mon code devra: 1) Récupérer les fichiers sur un server 2) Stocker toutes les informations qui m'intéresse dans sql server 2008 3) A l'aide de crystal report faire des opérations sur ma base de données ( statistique, graphe etc. ) Mais si cela peut être fait plus simplement je suis preneur. |
|
|
00
|
|
|
#4 |
|
Membre habitué
![]() Inscription : janvier 2008 Messages : 212 ![]() |
C'est tout à fait possible avec SSIS.
SSIS dispose d'un composant "Tâche de système de fichier" qui te permettra de gérer tes fichiersc csv En gros, le SSIS lira le fichier Log, convertira les données et les écrira dans une table SQL. Pour cela, il faudra bien entendu que le service SQL qui exécutera le lot dispose des droits nécessaires sur le répertoire concerné. Le composant Tâche de système de fichier, te permettra de détruire ou déplacer ton fichier csv dans un autre répertoire, par exemple. Bon au début, quand on ne connait pas, c'est casse tête, mais avec l'habitude, tu verras que SSIS est l'outil idéal pour importer des données provenant de fichier texte ou d'autres bases de données. Bon travail. |
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Sopotel Inscription : juillet 2011 Messages : 33 ![]() |
Bonjour, SSIS est vraiment pas mal comme système de gestion de fichiers. Mais comme tu le dit et je confirme c'est casse tête.
Penses-tu que je pourrais vraiment tout faire avec, comme par exemple choisir les données précise que je veux traiter. Tu connais un bouquin complet pour se former à SSIS |
|
|
00
|
|
|
#6 |
![]() ![]() Alexandre ChemlaConsultant en Business Intelligence Inscription : février 2006 Messages : 1 773 ![]() |
Il y a un forum pas loin pour poser quelques questions
Sinon, c'est une interface complètement graphique et finalement assez intuitive. On utilise une tâche de dataflow (transfert de données) et dans cette tâche on a à disposition des composants de sources, transformations et destinations. Il ne reste qu'à choisir, relier les petites flèches et paramétrer ce que tu veux dans les transformations avec un langage spécifique mais très proche du SQL. Le tout c'est d'éviter les pièges comme brancher le composant de sources sur un fichier texte dans lequel il va détecter automatiquement des colonnes de types nvarchar que l'on va vouloir insérer dans un varchar... là, il refuse et il faut passer par un composant de conversion avant.
__________________
Alexandre Chemla - Consultant MS BI chez Masao |
|
|
00
|
|
|
#7 | |
|
Membre habitué
![]() Inscription : janvier 2008 Messages : 212 ![]() |
Citation:
Mais je te conseille le tutoriel pour commencer + piocher ici et là dans des blogues ou fora. Le livre te permttra ensuite d'approfondir le sujet. Le travail que tu dois entreprendre est justement un cas d'école : lire un fichier texte, convertir les données et les insérer dans une table. C'est un bon début... |
|
|
|
00
|
|
|
#8 | |
|
Invité régulier
![]() Sopotel Inscription : juillet 2011 Messages : 33 ![]() |
Citation:
En gros ça serais de mettre ses données sur une seule ligne : 2011.06.02 00:00:00.07,/Alia,50.19.7.187,EDS2 3A2-1711,,,, 2011.06.02 00:01:06.51,EDS2 3A2-1711,BagSc,,,,, 2011.06.02 00:01:08.09,EDS2 3A2-1711,TagIn,NAFZ2014850,,,, 2011.06.02 00:01:09.68,EDS2 3A2-1711,MfDec,NAFZ2014850,R,,, 2011.06.02 00:01:09.71,EDS2 3A2-1711,SendB,NAFZ2014850,50.2.4.3,960,R, 2011.06.02 00:01:09.90,EDS2 3A2-1711,SentB,NAFZ2014850,50.2.4.3,,, 2011.06.02 00:01:09.83,PO-2A-10G-3,WsRcv,NAFZ2014850,711,960,0, 2011.06.02 00:01:10.33,PO-2A-10G-3,WsSho,NAFZ2014850,711,0,, 2011.06.02 00:01:12.52,PO-2A-10G-3,WsDec,NAFZ2014850,711,0,R, |
|
|
|
00
|
|
|
#9 | |
|
Membre habitué
![]() Inscription : janvier 2008 Messages : 212 ![]() |
Citation:
|
|
|
|
00
|
|
|
#10 | |
|
Membre Expert
![]() |
Citation:
A quels fins? Reporting? Voyez du côté de PIVOT si c'est le cas (sujet maintes fois traité sur ce forum vous devriez trouver...).
__________________
Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir. |
|
|
|
00
|
|
|
#11 |
|
Invité régulier
![]() Sopotel Inscription : juillet 2011 Messages : 33 ![]() |
Effectivement c'est bien pour faire du reporting.
En faite, je dois retracer les instructions faite par ma machine. Date Heure Machine 2011.06.02 11:25:36.25, EDS2 3A2-1711, bagscan, tagin, mfdec, senB etc. tout cela mise sur une seule ligne. En gros j'utiliserai crystal report et avec un simple clique sur le nom de ma machine, j'ai un suivi de mes bagages. Ce qui permettra de calculer le nombre de bagages scannés par machines sur un jour, un mois, une année, et visualiser les différentes tâches. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com