+ Répondre à la discussion
Affichage des résultats 1 à 3 sur 3
  1. #1
    Invité de passage
    Homme Profil pro
    Consultant informatique
    Inscrit en
    mai 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : mai 2011
    Messages : 2
    Points : 0
    Points
    0

    Par défaut Default value datetime

    Bonjour,

    Je suis sur Sysbase 11/12/15 - TDS 5.5 et j'aimerais modifier une table en y ajoutant une colonne non null de type datetime, mais ca passe pas.
    La requête est la suivante:

    Code :
    1
    2
    alter table MA_TABLE
      add DATE_DERNIERE_MODIF  datetime DEFAULT getdate() not null
    Erreur:
    >[Error] Script lines: 1-2 --------------------------
    ALTER TABLE 'MA_TABLE' failed. Default cannot be an expression when adding non-NULL column 'DATE_DERNIERE_MODIF'. Use a default value instead.
    Je vois bien qu'il ne veut pas de fonction, je ne veux pas mettre de date fixe car c'est un script que je vais lance dans d'autre environnement et j'aimerais juste avoir la date du jour le jour de l'exécution du script.
    J'ai essayé CURRENT DATE, CURRENT TIMESTAMP

    Merci d'avance pour votre aide

  2. #2
    Membre Expert
    Inscrit en
    juin 2007
    Messages
    1 056
    Détails du profil
    Informations forums :
    Inscription : juin 2007
    Messages : 1 056
    Points : 1 211
    Points
    1 211

    Par défaut

    Bonjour,

    Pourquoi ne pas mettre la colonne à NULL avec la valeur par défaut getdate() et mettre à jour les lignes qui n'ont pas de date manuellement une bonne fois pour toutes ?

    Code :
    1
    2
    alter table MA_TABLE
    add DATE_DERNIERE_MODIF datetime DEFAULT getdate() null
    A chaque insertion, la date du jour sera mise dans la colonne. Par contre il est possible de forcer la colonne à NULL c'est sûr.

    Sinon, tu peux toujours créer une table dans la structure qui te convient et de transférer les lignes avec un insert/select ou un select into, puis de renommer les tables.
    Emmanuel T.

  3. #3
    Invité de passage
    Homme Profil pro
    Consultant informatique
    Inscrit en
    mai 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : mai 2011
    Messages : 2
    Points : 0
    Points
    0

    Par défaut Pb Résolu

    Salut kagemaru,
    J'ai fait comme t'as dit avec la colonne à NULL et ça marche nickel.
    Merci

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •