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

Affichage des résultats du sondage: Meilleur Méthode : 1 ou 2

Votants
0. Vous ne pouvez pas participer à ce sondage.
  • Version n°1

    0 0%
  • Version n°2

    0 0%
Requêtes MySQL Discussion :

Meilleur Methode insert Date/time postgres - C#


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 19
    Par défaut Meilleur Methode insert Date/time postgres - C#
    Bonjour

    Je souhaite savoir qu'elle est la meilleur méthode pour intégrer des dates et heures dans une base de donnée Postgres (elle sera très grande..)

    Version n°1 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    <table>
         <tr>
              <td>IDP</td>
              <td>0</td>
         </tr>
         <tr>
              <td>NomP</td>
              <td>Walley</td>
         </tr>
         <tr>
              <td>PrenomP</td>
              <td>Luc</td>
         </tr>
         <tr>
              <td>Date_HeureP</td>
              <td>21-07-2013 13:32:40</td>
         </tr>
         <tr>
              <td>Date_HeureMisAJP</td>
              <td>21-07-2013 13:32:40</td>
         </tr>
    </table>
    Version n°2 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    <table>
         <tr>
              <td>IDP</td>
              <td>0</td>
         </tr>
         <tr>
              <td>NomP</td>
              <td>Walley</td>
         </tr>
         <tr>
              <td>PrenomP</td>
              <td>Luc</td>
         </tr>
         <tr>
              <td>DateP</td>
              <td>21-07-2013</td>
         </tr>
         <tr>
              <td>HeureP</td>
              <td>13:32:40</td>
         </tr>
         <tr>
              <td>DateMisAJP</td>
              <td>21-07-2013</td>
         </tr>
         <tr>
              <td>HeureMisAJP</td>
              <td>13:32:40</td>
         </tr>
    </table>
    Il faut que cela soit le plus intéressant et le plus intelligent à stoker/Manipuler.
    Je vous remercie d'avance

  2. #2
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 506
    Par défaut
    tu dois stocker une date ou un timestamp ?

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

    Informations forums :
    Inscription : Mars 2010
    Messages : 19
    Par défaut
    Bonjour

    j'utilisai le type date et time de postgres, mais je viens de passer au Timestamp,
    (1/2 de seconde en traitement + moins gourmand en stockage + update plus rapide?!)

    je pense avoir résolu mon problème grâce à cela.

    Par contre je dois mettre à jour plusieurs timestamps, tous dans different tables, ayant leur nom propre à chaque table.

    n''est-il pas possible de faire une fonction générique, ou plus simple que ce que j'ai trouvé sur le net? et que j'utilise pour le moment c'est dire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
                   sqlQuery += " begin;";
     
                    //Debut Creation Function
                    sqlQuery += " CREATE OR REPLACE FUNCTION Date_HeureMisAJ_" + NomTable + "_modified_column()";
                    sqlQuery += " RETURNS TRIGGER AS $$";
                    sqlQuery += " BEGIN";
                    sqlQuery += " NEW.Date_HeureMisAJ" + NomTable + " = now();";
                    sqlQuery += " RETURN NEW;";
                    sqlQuery += " END;";
                    sqlQuery += " $$ language 'plpgsql';";
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
                    //Debut Creation TRIGGER
                    sqlQuery += " CREATE TRIGGER TRIG_Date_HeureMisAJ_" + NomTable + "_modified_column BEFORE UPDATE";
                    sqlQuery += " ON " + NomTable + " FOR EACH ROW EXECUTE PROCEDURE";
                    sqlQuery += " Date_HeureMisAJ_" + NomTable + "_modified_column();";
     
                    sqlQuery += " commit;";
    Car si je continue sur cette voie, je vais avoir beaucoup "trop" de trigger et de function pour chaque table

    Je vous remercie d'avance

Discussions similaires

  1. SQL Insert into with a date time picker
    Par blacklolou dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 27/12/2012, 13h01
  2. Réponses: 6
    Dernier message: 06/04/2008, 22h42
  3. Insertion timestamp [date+time]
    Par badi082 dans le forum PostgreSQL
    Réponses: 8
    Dernier message: 30/01/2008, 10h12
  4. [MySQL] insert check box meilleur methode
    Par digger dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 11/07/2006, 16h08
  5. [DATE][TIME] Manque 1 heure
    Par cpr0 dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 01/07/2004, 16h43

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