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

Langage SQL Discussion :

erreur sur requête insert


Sujet :

Langage SQL

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mars 2008
    Messages
    80
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 80
    Points : 35
    Points
    35
    Par défaut erreur sur requête insert
    Salut.
    J'ai une requete d'insertion dans une table et qui est la suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    insert into ent_fact(num_fact,date_fact) values(29061985,'11/11/2005');
    sachant que date_fact est de type date.
    J'aurais l'erreur suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ORA-01400: impossible d'insérer NULL dans ("ETAP"."ENT_FACT"."DATE_FACT")
    Y a t il quelqu'un qui peut m'aider?

    Merci d'avance.

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 453
    Points : 18 388
    Points
    18 388
    Par défaut
    L'erreur est étrange, par contre il faut spécifier le format de votre date :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    insert into ent_fact (num_fact, date_fact)
    values (29061985, to_date('11/11/2005', 'dd/mm/yyyy'));

  3. #3
    Nouveau membre du Club
    Inscrit en
    Mars 2008
    Messages
    80
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 80
    Points : 35
    Points
    35
    Par défaut meme erreur
    Merci bien pour ta réponse.J'ai essayé ce que tu m'as proposé mais j'ai toujours la meme erreur.

  4. #4
    Modérateur
    Avatar de Chtulus
    Homme Profil pro
    Ingénieur
    Inscrit en
    Avril 2008
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2008
    Messages : 3 094
    Points : 8 678
    Points
    8 678
    Par défaut
    Bonjour,

    Le type DATE d'Oracle ne serait pas du genre
    année/mois/jour heures:minutes:secondes ?

    Peut-être un TRUNC(date, Format) !


  5. #5
    Membre averti Avatar de AL1986
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    434
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 434
    Points : 441
    Points
    441
    Par défaut
    Citation Envoyé par Waldar Voir le message
    L'erreur est étrange, par contre il faut spécifier le format de votre date :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    insert into ent_fact (num_fact, date_fact)
    values (29061985, to_date('11/11/2005', 'dd/mm/yyyy'));
    La norme c'est que le format doit être DD/MM/YYYY.

  6. #6
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 453
    Points : 18 388
    Points
    18 388
    Par défaut
    Citation Envoyé par AL1986 Voir le message
    La norme c'est que le format doit être DD/MM/YYYY.
    Oui, doit être. En France.
    Si on travaille avec les USA, l'Allemagne, la norme change.

    Spécifier le format de date permet que la requête fonctionne sur n'importe quel poste, avec n'importe quel outil, dans n'importe quel environnement, sous n'importe quelle session d'exécution.

    Ca me paraît nettement plus sain et solide que "doit être".
    De manière générale, les conversions explicites fonctionnent mieux que les conversions implicites.


    Retour au problème initial, pouvez-vous vérifier s'il n'y a pas un trigger sur votre table ? Pouvez-vous aussi nous en fournir la description (complète, pas uniquement les deux champs, si tant est qu'il y en ait plus).

Discussions similaires

  1. [MySQL] Erreur sur requête INSERT
    Par obito dans le forum PHP & Base de données
    Réponses: 17
    Dernier message: 17/07/2008, 17h28
  2. [SQL] erreur sur requête insert
    Par temperature dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 09/01/2008, 15h27
  3. Erreur sur Requête Mise à Jour
    Par guenfood dans le forum Access
    Réponses: 1
    Dernier message: 06/06/2006, 08h51
  4. Erreur sur requête
    Par zut94 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 26/04/2006, 10h23
  5. Problème sur requête insert mysql
    Par kcizth dans le forum Requêtes
    Réponses: 5
    Dernier message: 04/02/2006, 18h37

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