IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bases de données Delphi Discussion :

Conversion de date en varchar non désirée


Sujet :

Bases de données Delphi

  1. #1
    Membre à l'essai
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2014
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2014
    Messages : 7
    Points : 13
    Points
    13
    Par défaut Conversion de date en varchar non désirée
    Bonjour à tous,

    Je rencontre actuellement un problème que je n'arrive pas à comprendre. Suite à un développement en Delphi4, un collègue et moi même avons essayé de tester une nouvelle fonctionnalité d'un programme permettant d'exécuter une procédure stockée en sql server. Cette procédure utilise comme paramètres deux dates récupérées au préalable.

    Le problème est le suivant : la procédure fonctionne parfaitement chez mon collègue et affiche les résultats souhaités mais pour ma part j'obtiens le message suivant : 'Erreur de conversion du type de données varchar en datetime'.

    Ce problème se produit en compilant en mode débug mais aussi en utilisant directement l'exe généré. Nous avons donc cherché les différences pouvant exister sur nos postes :

    - Options régionales du panneau de configuration toutes identiques

    - Options SQL identiques

    - J'ai utilisé la configuration BDE de mon collègue : le problème se produit toujours.

    Avez-vous deja rencontré ce problème et/ou une idée de sa cause ?

    Merci d'avance !

  2. #2
    Expert confirmé
    Avatar de Ph. B.
    Homme Profil pro
    Freelance
    Inscrit en
    Avril 2002
    Messages
    1 784
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 784
    Points : 5 915
    Points
    5 915
    Par défaut
    Bonjour,
    Citation Envoyé par Wingelin Voir le message
    Je rencontre actuellement un problème que je n'arrive pas à comprendre. Suite à un développement en Delphi4, un collègue et moi même avons essayé de tester une nouvelle fonctionnalité d'un programme permettant d'exécuter une procédure stockée en sql server. Cette procédure utilise comme paramètres deux dates récupérées au préalable.
    Comment sont passés ces parmètres Sous Delphi ?

    Citation Envoyé par Wingelin Voir le message
    Le problème est le suivant : la procédure fonctionne parfaitement chez mon collègue et affiche les résultats souhaités mais pour ma part j'obtiens le message suivant : 'Erreur de conversion du type de données varchar en datetime'.
    Quel est le prototype de la procédure stockée ?

    Avez vous essayé d'appeler cette procédure depuis SqlManagementStudio sur chacun des postes ?
    Philippe.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2014
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2014
    Messages : 7
    Points : 13
    Points
    13
    Par défaut
    Bonjour et merci de vous intéresser à mon problème.

    Pour répondre à vos questions :

    - Les paramètres sont récupérés par une TtkMasterQuery sous la forme de TDateTimeField et transmis de la même façon à une TtkDetailQuery

    - La procédure stockée prends ces deux paramètres en entrée en tant que datetime.

    A noter que lorsque j'utilise cette procédure directement depuis SQL Server 2005, elle s'exécute sans problèmes (tout comme sur le poste de mon collègue)...

    Je ne sais pas si cela t'éclaire sur la nature de mon problème ?

  4. #4
    Expert confirmé
    Avatar de Ph. B.
    Homme Profil pro
    Freelance
    Inscrit en
    Avril 2002
    Messages
    1 784
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 784
    Points : 5 915
    Points
    5 915
    Par défaut
    Bonjour,
    Citation Envoyé par Wingelin Voir le message
    Je ne sais pas si cela t'éclaire sur la nature de mon problème ?
    Ca élimine certaines de mes suppositions (paramètres passés en string par exemple et convertis à la volée).
    Avez vous testé en intervertissant les exécutables générés sur chacun des postes ?
    Philippe.

  5. #5
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 021
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 021
    Points : 40 935
    Points
    40 935
    Billets dans le blog
    62
    Par défaut
    Bonjour,

    Quid d'une différence de version de DLL cliente SQLserveur (pointée par le BDE d'après ce que je lis)
    ou de doublons de cette même DLL ? (je ne connais pas assez SQLServeur pour en donner le nom)
    est-ce la même version du BDE , avez vous contrôlé la partie système de ce dernier ? (en particulier la partie Format/Date) ?

    s'agit-il d'un programme en réseau local ou monoposte ?

    TtkMasterQuery c'est un TQuery (BDE) ou un autre Set de composants ?

    Depuis Windows 64 bits je me méfie aussi beaucoup de la version , qu'en est-il de votre environnement ? à mon avis BDE n'accepte que la version 32 bits de SQLServer

    Bref des pistes , mais oserai-je le rappeler BDE est obsolète depuis au bas mot 10 ans !
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  6. #6
    Membre émérite

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 381
    Points : 2 995
    Points
    2 995
    Par défaut
    Bref des pistes , mais oserai-je le rappeler BDE est obsolète depuis au bas mot 10 ans !
    C'est vrai mais en Delphi 4, il n'y a pas trop de choix

    Je penche moi aussi pour une différence de driver (SQLNCLI11.dll ou SQLNCLI10.dll).
    Si mes souvenirs sont bons, le bde utilise une connexion ODBC. Les options de ce genre de connexion permettent le choix suivant:

    "Utiliser les paramètres régionaux lors de la copie de devises, de ombres, de dates et d'heures"

    Ce choix est-il identique sur les 2 machines ?

Discussions similaires

  1. Réponses: 0
    Dernier message: 21/06/2010, 17h58
  2. Conversion non désirée des nombres a virgule
    Par bilou972 dans le forum C#
    Réponses: 5
    Dernier message: 10/12/2008, 03h47
  3. - [CAST ou CONVERT] Problème de conversion de date
    Par Boublou dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 06/07/2004, 15h31
  4. Conversion de date lors d'un import
    Par bilbon.S dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 26/03/2004, 15h33
  5. Conversion de date et division 64 bits
    Par dway dans le forum Assembleur
    Réponses: 38
    Dernier message: 27/01/2004, 11h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo