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

AS/400 Discussion :

SQL: Timestamp UTC par défaut en CREATE TABLE


Sujet :

AS/400

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2010
    Messages : 8
    Par défaut SQL: Timestamp UTC par défaut en CREATE TABLE
    Bonjour,

    je souhaiterais pouvoir créer une table dans laquelle une zone serait automatiquement renseignée par défaut avec la date & heure UTC

    Le CURRENT TIMESTAMP fourni l'info mais en type WALL
    Le CURRENT TIMEZONE fourni le décalage

    J'ai tenté :
    CREATE TABLE qtemp/tempo
    (B TIMESTAMP NOT NULL WITH DEFAULT
    (CURRENT TIMESTAMP-CURRENT TIMEZONE) )

    Il n'accepte pas.


    J'ai fait une autre approche par création d'une fonction :
    CREATE FUNCTION LOCALUTCTIME()
    RETURNS TIMESTAMP
    RETURN NOW()-CURRENT TIMEZONE

    et enfin
    CREATE TABLE qtemp/tempo
    (B TIMESTAMP NOT NULL WITH DEFAULT LOCALUTCTIME() )

    mais rien à faire.

    Dernière possibité, faire un trigger sur le fichier pour mettre le timestamp UTC mais si autre solution....

    Merci de vos idées

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    821
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2008
    Messages : 821
    Par défaut
    Question récurrente :

    Quelle version ?

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2010
    Messages : 8
    Par défaut
    désolé...

    DSPDTAARA QSS1MRI

    soit
    V6R1M0

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    821
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2008
    Messages : 821
    Par défaut
    Tu ne pourras pas faire ce que tu recherches car dans la valeur par default on ne peut mettre que des contantes ou des registres. Donc pas de fonctions SQL ou utilisateur.

    - Soit tu passes par un trigger comme tu le préssentais,
    - soit tu laisses ta zone timestamp qui contiendra automatiquement le current timestamp à l'ajout d'une ligne.
    Reste à créer une vue sur ta table qui te fera ton timestamp + CURRENT TIMEZONE.

    En V6R1 tu peux créer une zone timestamp qui sera aussi automatiquement changée à la modification :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    CREATE TABLE xxxx (
    Z1 INTEGER,
    Z2 TIMESTAMP NOT NULL
    IMPLICITLY HIDDEN
    FOR EACH ROW ON UPDATE AS ROW CHANGE TIMESTAMP);
    En ajoutant le IMPLICITY HIDDEN, le timestamp n'apparaîtra pas dans un SELECT *, il faudra le qualifier : Select a.*, a.Z2 from xxxx a

    ou l'utiliser de la sorte :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Select * from xxxx
                  where ROW CHANGE TIMESTAMP FOR xxxx = current date - 1 day

  5. #5
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2010
    Messages : 8
    Par défaut
    Merci pour le coup de main ,

    je passe finalement par un trigger.

    la fonction reste neanmoins utile pour d'autre situation.

    bonne journée

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 23/11/2009, 21h11
  2. date pdu jour par défaut dans create table
    Par r83 dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 20/10/2006, 23h45
  3. Réponses: 7
    Dernier message: 24/05/2006, 12h52
  4. [SQL - Access] Valeur par défaut d'un champs
    Par Demiurge dans le forum Access
    Réponses: 2
    Dernier message: 11/02/2005, 18h16
  5. Valeur par défaut dans une table objet
    Par Ricky81 dans le forum Oracle
    Réponses: 12
    Dernier message: 18/03/2004, 12h52

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