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

MS SQL Server Discussion :

[MSSQL05] Erreur : column is non-deterministic - dans un champ computed avec GetDate


Sujet :

MS SQL Server

  1. #1
    Membre actif
    Inscrit en
    Mars 2007
    Messages
    218
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 218
    Points : 216
    Points
    216
    Par défaut [MSSQL05] Erreur : column is non-deterministic - dans un champ computed avec GetDate
    Bonjour,

    Je construis une table sous sql05, le champ identifiant doit se composer de la façon suivante :

    ID_TABLE = Date_du_jour + '_' + Un_Entier

    L'entier correspond à un nombre stocké via formulaire.

    Pour créer cette table, je pars sur du sql :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    CREATE TABLE [dbo].[Produit](
    	[ID_Produit]  AS (GetDAte() + '_' + [ID_Composant]) PERSISTED NOT NULL,
                 etc...
    )
    D'après SQL Server, je suis obligé de placer ce champ ID_Produit (qui est PK) en tant que PERSISTED NOT NULL... Mais j'ai toujours ce problème :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Msg 4936, Level 16, State 1, Line 1
    Computed column 'ID_Produit' in table 'Produit' cannot be persisted because the column is non-deterministic.
    Ce qui vient à mon avis du GetDate() qui récupère la date courante.

    Des idées ?

    D'avance merci

  2. #2
    Expert confirmé
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Points : 4 043
    Points
    4 043
    Par défaut
    Tu ne peux pas persiter une colonne calculée qui contient une fonction non-déterministe comme GetDate(). Comment veux-tu persister une valeur qui change tout le temps ?

  3. #3
    Membre actif
    Inscrit en
    Mars 2007
    Messages
    218
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 218
    Points : 216
    Points
    216
    Par défaut
    Je concatène GetDate() avec un ID qui est unique, donc l'id de ma table sera unique.


    [UPDATE]
    Je créé une colonne ID en auto_increment (pk) et je créé un champ qui contient le résultat de GetDate() (sans préciser qu'il est persitant ou non null ou null).

    Simple!

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 22/09/2010, 17h37
  2. erreur projet.exe non detectée dans builder
    Par luckydigit dans le forum C++Builder
    Réponses: 6
    Dernier message: 22/07/2006, 14h00
  3. bdd : erreur 3265 élément non trouvé dans cette collection
    Par morgan47 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 10/07/2006, 09h52
  4. Réponses: 3
    Dernier message: 07/06/2006, 13h11
  5. Erreur de "Élément non trouvé dans cette collection"
    Par charleshbo dans le forum Access
    Réponses: 4
    Dernier message: 04/05/2006, 18h42

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