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 :

Remettre tous les bit à 0 dans un champ d'une table toute les N secondes


Sujet :

Développement SQL Server

  1. #1
    Candidat au Club
    Inscrit en
    Octobre 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Remettre tous les bit à 0 dans un champ d'une table toute les N secondes
    Bonjour à tous,

    voilà ma deuxième requête sur ce forum, hélas je ne peux émettre ici que des requêtes étant donné que le développement n'est pas du tout ma spécialité

    Je vous remercie par avance pour l'aide que vous pourrez m'apporter, je vais essayer de m'exprimer au mieux...

    J'ai une petite base SQL qui tourne sous SQL server v8 (SQL 2000).

    Dans cette base j'ai une table POINT et dans cette table POINT un champ PO_ACTIVATED (data type: bit).
    Pour tout mes enregistrements j'aimerai que toutes les 60 secondes une petite moulinette passe et me remette à 0 le champ PO_ACTIVATED si il est à 1.
    Le nombre d'enregistrements ne change presque jamais mais j'aimerai ne pas avoir à me soucier de modifier la boucle si je modifie le nombre d'enregistrements.

    Quelles sont les étapes pour arriver à faire tout ça ?

    J'aimerai vous donner plus de détails genre pourquoi je veux remettre à 0, mais c'est un peu compliqué. Ce champ passe à 1 quand une alarme technique apparait à notre usine et parfois une fois que l'alarme a disparu le champ reste toujours à 1 (donc le système voit l'alarme toujours active alors qu'elle ne l'est plus), d'où mon besoin de remettre à 0 de temps en temps car la boite qui nous a développé ce MACHIN n'existe plus.

    J'ai joint une petite capture d'écran qui pourra peut être vous éclairer.

    Merci par avance.
    Images attachées Images attachées  

  2. #2
    Membre éprouvé

    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 448
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 448
    Points : 1 234
    Points
    1 234
    Par défaut
    WHILE, DO, WAITFOR.
    Most Valued Pas mvp

  3. #3
    Candidat au Club
    Inscrit en
    Octobre 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par Sergejack Voir le message
    WHILE, DO, WAITFOR.
    Merci Serge

    Comme je l'ai précisé au dessus j'ai très peu de notions.

    Donc ce que je comprend c'est:

    TANT QUE je ne suis pas au bout de la colonne PO_ACTIVATED
    JE FAIS valeur de PO_ACTIVATED=0
    J'ATTENDS 60 secondes et je recommence

    Mais tout ça je ne sais pas comment l'écrire.

    Quelles sont les syntaxes et où écrire ça...

    Merci encore de vos lumières

  4. #4
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Points : 13 092
    Points
    13 092
    Par défaut
    sinon, si vous avez SQL Agent d'installé, vous pouvez créer un job, le planifier selon vos besoin pour exécuter la requête suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    UPDATE POINT
    SET PO_ACTIVATED = 0
    WHERE PO_ACTIVATED = 1
    Il me semble que le WHILE de Sergejack était plutôt destiné à faire une boucle sans fin dans laquelle exécuter la requête ci-dessus (qui replace d'un seul coup tous les PO_ACTIVATED à 0), et attendre (WAITFOR) avant de recommencer

Discussions similaires

  1. [AC-2003] modifier les données dans le champs d'une table en sql
    Par carlostropico dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 01/12/2009, 16h24
  2. Fichier dans un champ d'une table
    Par BOUBOU81 dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 09/10/2006, 17h02
  3. [SQL Server] rechercher dans plusieurs champs d'une table
    Par houla! dans le forum Langage SQL
    Réponses: 3
    Dernier message: 23/08/2006, 09h37
  4. Réponses: 3
    Dernier message: 21/08/2006, 11h31
  5. Lire un code à barre dans un champ d'une table
    Par tleboukaka dans le forum Débuter
    Réponses: 1
    Dernier message: 05/09/2005, 15h15

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