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

Développement SQL Server Discussion :

Probleme requete dans un job


Sujet :

Développement SQL Server

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 13
    Par défaut Probleme requete dans un job
    Bonjour,

    Voilà je ne trouve pas de solution à mon problème et donc je le poste au cas où.
    J'ai une table comme celle-ci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    CREATE TABLE [dbo].[fidelisation_point](
    	[code_point] [int] IDENTITY(1,1) NOT NULL,
    	[code_client] [int] NOT NULL,
    	[date_validite] [datetime] NOT NULL,
    	[nb_point_restant] [int] NOT NULL
    Quand je joue la requête suivante, je n'ai aucun problème. Elle marche parfaitement.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    UPDATE client_newsletter
    SET maj_emailvision = 1
    WHERE
    	code_client in (SELECT code_client 
    		FROM fidelisation_point
    		WHERE nb_point_restant>0 and 
    				date_validite between CONVERT(varchar,dateadd (dd,-1,getdate()),103) + ' 00:00:00' and CONVERT(varchar,getdate(),103) + ' 00:00:00')
    Je la place alors dans un job, qui tourne tout les jours.
    Aucun problème le 2,3,4,5,6,7,8,9,10,11,12 du mois. En revanche tous les autres jours du mois je me retrouve avec le job en erreur.

    Voilà le message d'erreur que j'obtiens dans l'historique du job:
    07/17/2012 00:45:00,Expiration_Pts_Fidelite,Erreur,0,FRD074P02DBW\NODE1,Expiration_Pts_Fidelite,(Job outcome),,The job failed. The Job was invoked by Schedule 46 (Mise a jour email_vision pour point de fidelite perime). The last step to run was step 1 (selection des points fidelites arrives a echeances et UPDATE du client_newsletter).,00:00:00,0,0,,,,0
    07/17/2012 00:45:00,Expiration_Pts_Fidelite,Erreur,1,FRD074P02DBW\NODE1,Expiration_Pts_Fidelite,selection des points fidelites arrives a echeances et UPDATE du client_newsletter,,Executed as user: FRD074P02DBW\Usr_sqlagent. The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value. [SQLSTATE 22007] (Error 242) The statement has been terminated. [SQLSTATE 01000] (Error 3621). The step failed.,00:00:00,16,3621,,,,0
    Je suis sur que le problème viens de l’interprétation des dates. Jour et mois inversé. Du coup ça marche les premiers jours du mois et plus ensuite.
    Par contre je n'arrive pas à m'expliquer pourquoi ça marche en dehors du job et pas dans le job.

  2. #2
    Membre Expert

    Homme Profil pro
    Chargé de Développement et d'Analyse de données
    Inscrit en
    Mars 2010
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé de Développement et d'Analyse de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 278
    Par défaut
    Remplacer votre BETWEEN par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    BETWEEN CONVERT(varchar(8),getdate()-1,112) AND CONVERT(varchar(8),getdate(),112)
    Etienne ZINZINDOHOUE
    Billets-Articles

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 13
    Par défaut
    He ben Merci beaucoup ça a marché nickel.

    Tu viens de m'enlever une sacré épine du pied, parce que ça fait un bout de temps que je cherche...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. probleme requete SQL dans un block PL/SQL
    Par zinabd dans le forum PL/SQL
    Réponses: 15
    Dernier message: 14/01/2009, 16h22
  2. [VB6] Probleme variable dans requete
    Par Peper89 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 20/06/2008, 11h15
  3. Réponses: 1
    Dernier message: 08/05/2008, 23h07
  4. probleme requete DELETE dans Postgres
    Par youp_db dans le forum JDBC
    Réponses: 2
    Dernier message: 13/11/2006, 17h35
  5. Réponses: 5
    Dernier message: 06/06/2006, 12h14

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