Bonjour à tous,
Je souhaiterais créer une table dont un champ s'appelle "datelocation" au format DATE avec la date du jour par défaut.
Je n'arrive pas à trouver la bonne formule.
Que faut-il utiliser Current_date ou now() ?
Merci d'avance.
Bonjour à tous,
Je souhaiterais créer une table dont un champ s'appelle "datelocation" au format DATE avec la date du jour par défaut.
Je n'arrive pas à trouver la bonne formule.
Que faut-il utiliser Current_date ou now() ?
Merci d'avance.
Créez une vue :
A +
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 CREATE VIEW V_DATE_DU_JOUR AS SELECT NOW() AS JOUR
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
* * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 ... datelocation date default now(); ...
Bonjour et merci pour vos réponses mais j'ai un autre problème.
Pour être plus précis, voilà les deux tables que je souhaite créer.
La première se crée normalement.
Pour la deuxième je souhaiterais, que la valeur par défaut pour le champ dateretour, soit datelocation ou date du jour + 15 jours.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 CREATE TABLE date ( datelocation DATE DEFAULT NOW() ); CREATE TABLE location ( datelocation DATE REFERENCES DATE(datelocation), dateretour DATE default(datelocation+15), prix FLOAT check (prix IN(2, 10, 20)) );
Voilà le message que j'obtiens:
Je ne sais pas comment faire.ERROR: cannot use column references in default expression
État SQL :42P10
Merci d'avance.
Comme dit le message d'erreur, il n'est pas possible d'utiliser la valeur d'une colonne pour calculer la valeur par défaut d'une autre colonne.
Il faudra calculer cette valeur au moment de faire l'insertion dans la table.
C'est un exercice que j'ai du faire pendant un examen. Voilà la correction de l'examen pour le champ "Dateretour" (cours suivi avec Postgres):
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part dateretour DATE DEFAULT (SYSDATE+15)
C'est la réponse à quelle question?dateretour DATE DEFAULT (SYSDATE+15)
Dans le cadre d'un exercice sur une base de données permettant de gérer des locations de CD, je devais créer une requête pour créer plusieurs tables dont la table "location".
Une des contraintes était d'avoir, par défaut, une date de retour de location égale à la date de location + 15 jours.
La date de location étant par défaut la date du jour.
Mais sysdate+15 c'est valide pour Oracle, pas pour Postgresql. Avec Postgresql, ce serait plutôt une expression du genre: now()+'15 days'::interval
J'ai trouvé !!
Voilà la ligne qui va bien dans la requête:
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part dateretour DATE DEFAULT (current_date + INTEGER '15')
Merci beaucoup pour votre aide.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager