Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server
MS SQL-Server Forum Microsoft SQL-Server. Avant de poster -> FAQ SQL-Server, Tutoriels SQL-Server
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 30/08/2011, 14h58   #1
Invité régulier
 
Homme
Sopotel
Inscription : juillet 2011
Messages : 33
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Sopotel
Secteur : Enseignement

Informations forums :
Inscription : juillet 2011
Messages : 33
Points : 5
Points : 5
Par défaut Conversion date format texte en timestamp sql server 2008 R2

Bonjour j'ai un petit problème de format de date sur SQL SERVER 2008.

Petite explication:
J'ai un fichier csv que je stocke dans ma base sql server à l'aide de SSIS (visual studio 2008). Dans mon csv, j'ai une date au format texte 25/07/2011. Dans ma base sql server, ma colonnes dates est au format VARCHAR.
Avez vous une idée de comment pourrais-je, transformer mon VARCHAR en format DATE ou DATESTAMP. Je dois réaliser des rapports crystal reports, donc pour traiter ma colonne dates, je dois avoir ma colonne au bon format.

Merci de votre aide.
nathantahiti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/08/2011, 15h46   #2
Expert Confirmé
 
Avatar de 7gyY9w1ZY6ySRgPeaefZ
 
Homme
dba
Inscription : juillet 2007
Messages : 2 520
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Canada

Informations professionnelles :
Activité : dba

Informations forums :
Inscription : juillet 2007
Messages : 2 520
Points : 3 967
Points : 3 967
Citation:
Envoyé par nathantahiti Voir le message
Dans ma base sql server, ma colonnes dates est au format VARCHAR.
Ça commence mal. Ça serait bien trop simple de stocker des dates dans un format dédié comme DATETIME...
Vous vous engagez dans une belle galère à recréer la roue.
Regardez CONVERT dans MSDN : http://msdn.microsoft.com/en-us/library/ms187928.aspx

Sinon Google est souvent plus rapide qu'un forum....
__________________
les règles du forum - mode d'emploi du forum
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs.
(Rappel : "ça ne marche pas" n'est pas un message d'erreur)
JE NE RÉPONDS PAS aux questions techniques par message privé.
Écrire en français sur un forum est une marque minimale de respect.
7gyY9w1ZY6ySRgPeaefZ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/08/2011, 15h56   #3
Invité régulier
 
Homme
Sopotel
Inscription : juillet 2011
Messages : 33
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Sopotel
Secteur : Enseignement

Informations forums :
Inscription : juillet 2011
Messages : 33
Points : 5
Points : 5
Citation:
Envoyé par 7gyY9w1ZY6ySRgPeaefZ Voir le message
Ça commence mal. Ça serait bien trop simple de stocker des dates dans un format dédié comme DATETIME...
Vous vous engagez dans une belle galère à recréer la roue.
Effectivement, je galère grave. Je ne sais pas pourquoi mais lors de l’exécution de mon package, je n'arrive pas à stoker mes dates avec un format DATIME au début. Je suis obliger de mettre ma colonne en VARCHAR. Je ne sais si c'est la configuration de mon fichier plat?
nathantahiti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/08/2011, 08h35   #4
Membre Expert
 
Avatar de iberserk
 
Homme Bruno IGNACE
Architecte de base de données
Inscription : novembre 2004
Messages : 1 299
Détails du profil
Informations personnelles :
Nom : Homme Bruno IGNACE
Âge : 30
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Architecte de base de données
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : novembre 2004
Messages : 1 299
Points : 2 282
Points : 2 282
Envoyer un message via MSN à iberserk
Code :
Effectivement, je galère grave. Je ne sais pas pourquoi mais lors de l’exécution de mon package, je n'arrive pas à stoker mes dates avec un format DATIME au début. Je suis obliger de mettre ma colonne en VARCHAR. Je ne sais si c'est la configuration de mon fichier plat?
Votre fichier plat est interprété comme du texte donc SQL SERVER tente de faire la conversion en DATETIME en fonction de sa culture (anglais dans votre cas je pense).

Il faut que vous faisiez un CAST en DATETIME en précisant à SQLSERVER que vous envoyez les dates au format français (103) comme vous le conseil 7gyY9w1ZY6ySRgPeaefZ.
__________________
Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir.
iberserk est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/09/2011, 09h02   #5
Rédacteur/Modérateur

 
Avatar de SQLpro
 
Homme Frédéric BROUARD
Expert SGBDR & SQL
Inscription : mai 2002
Messages : 10 955
Détails du profil
Informations personnelles :
Nom : Homme Frédéric BROUARD
Localisation : France

Informations professionnelles :
Activité : Expert SGBDR & SQL
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 10 955
Points : 17 779
Points : 17 779
Plus simplement régler le paramètre de session @@DATEFORMAT à YDM.

A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
* * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *
SQLpro est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h01.


 
 
 
 
Partenaires

Hébergement Web