[Résolu] Clé Primaire : INTEGER obligatoire ?
Modérateur : Vilains modOOs
Règles du forum
Cette section est dédiée au module Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Pour accélérer les réponses, vous pouvez mettre en ligne votre base en joignant un fichier ODB : comment faire.
Cette section est dédiée au module Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Pour accélérer les réponses, vous pouvez mettre en ligne votre base en joignant un fichier ODB : comment faire.
[Résolu] Clé Primaire : INTEGER obligatoire ?
bonjour à tous,
Je suis tombé sur ce tuto un peu ancien https://forum.openoffice.org/fr/forum/v ... 68#p207468
et j'ai quelques questions dessus. Alors si j'ai bien compris, c'est une question par sujet.
Il me semblait qu'une clé primaire devait être de type INTEGER. Est-ce toujours valable ?
Je suis tombé sur ce tuto un peu ancien https://forum.openoffice.org/fr/forum/v ... 68#p207468
et j'ai quelques questions dessus. Alors si j'ai bien compris, c'est une question par sujet.
Il me semblait qu'une clé primaire devait être de type INTEGER. Est-ce toujours valable ?
Dernière modification par jean83fun le 05 août 2022 09:37, modifié 2 fois.
Jean
"Donne un poisson à un homme, il mangera un jour, apprends-lui à pêcher, il mangera tous les jours."
MacOS X 12.4 M1
LO 7.2.7.2
AOO 4.1.10
temurin-8.jdk
MacOS X 12.6.7 Intel
LO 7.2.7.2
AOO 4.1.3
jdk 1.8.0_333 (??)
"Donne un poisson à un homme, il mangera un jour, apprends-lui à pêcher, il mangera tous les jours."
MacOS X 12.4 M1
LO 7.2.7.2
AOO 4.1.10
temurin-8.jdk
MacOS X 12.6.7 Intel
LO 7.2.7.2
AOO 4.1.3
jdk 1.8.0_333 (??)
-
- NéOOphyte
- Messages : 243
- Inscription : 13 juil. 2022 19:13
Re: Clé Primaire : INTEGER obligatoire ?
Bonjour,
J'aimerais, par mon expérience te dire que, personnellement pour mes petites bases de données de chez moi, je n'utilise pas de code EAN ou ISBN etc.
Je me permettrais donc d'affirmer ton propos pour une gestion casanière. Evidemment cela peut se compliquer si les produits de la base de données font l'objet par exemple d'un passage de propriété - et cela va mieux si le code est univoque.
C'est mon opinion, mais je suis certain que les modérateurs de ce forum en savent plus que moi.
J'aimerais, par mon expérience te dire que, personnellement pour mes petites bases de données de chez moi, je n'utilise pas de code EAN ou ISBN etc.
Je me permettrais donc d'affirmer ton propos pour une gestion casanière. Evidemment cela peut se compliquer si les produits de la base de données font l'objet par exemple d'un passage de propriété - et cela va mieux si le code est univoque.
C'est mon opinion, mais je suis certain que les modérateurs de ce forum en savent plus que moi.
Libre Office 6.0.4 sur Ubuntu 18.04
Re: Clé Primaire : INTEGER obligatoire ?
Bonjour jean83fun.
Pour une base de données relationnelle un index doit avoir une valeur unique pour chaque enregistrement d'une table indexée. Il peut y avoir des tables non indexées.
Dans l'exemple cité, nous avons deux raisons d'utiliser un code sur trois caractères : premièrement il n'y a que 109 indicatifs départementaux et deuxièmement il y a déjà une nomenclature établie normalisée par le Code officiel géographique et connue de tous depuis les bancs de l'école.
On utilise un entier incrémenté automatiquement (qui est proposé par défaut) quand on n'a pas se système de valeurs déjà instauré ou que le champ identifiant unique d'usage sera établi après la création de l'enregistrement. Dans ce cas la seule caractéristique que l'on souhaite de ce champ d'index est son unicité et sa valeur exacte est à priori sans signification.
Cordialement,
JF.L
Pour une base de données relationnelle un index doit avoir une valeur unique pour chaque enregistrement d'une table indexée. Il peut y avoir des tables non indexées.
Dans l'exemple cité, nous avons deux raisons d'utiliser un code sur trois caractères : premièrement il n'y a que 109 indicatifs départementaux et deuxièmement il y a déjà une nomenclature établie normalisée par le Code officiel géographique et connue de tous depuis les bancs de l'école.
On utilise un entier incrémenté automatiquement (qui est proposé par défaut) quand on n'a pas se système de valeurs déjà instauré ou que le champ identifiant unique d'usage sera établi après la création de l'enregistrement. Dans ce cas la seule caractéristique que l'on souhaite de ce champ d'index est son unicité et sa valeur exacte est à priori sans signification.
Cordialement,
JF.L
Linux Mint 21.1 x64 + LibO 7.3.1 / LibO 7.1.1 + W10 x64
- jeanmi2403
- SuppOOrter
- Messages : 1398
- Inscription : 18 janv. 2008 10:02
- Localisation : Val de Marne
Re: Clé Primaire : INTEGER obligatoire ?
Bonjour,
La clé primaire (selon moi) sert essentiellement pour les relations. On utilise le plus souvent un numéro d'ordre (INTEGER) en Autovaleur (pour ne pas avoir à s'en occuper !)
Pour une petite table peu évolutive comme celle là, on peut effectivement utiliser un autre codage.
Un autre type ( à part SMALL qui est plus limité) ne permet pas l'autovaleur.
Cordialement,
La clé primaire (selon moi) sert essentiellement pour les relations. On utilise le plus souvent un numéro d'ordre (INTEGER) en Autovaleur (pour ne pas avoir à s'en occuper !)
Pour une petite table peu évolutive comme celle là, on peut effectivement utiliser un autre codage.
Un autre type ( à part SMALL qui est plus limité) ne permet pas l'autovaleur.
Cordialement,
Dernière modification par jeanmi2403 le 03 août 2022 16:14, modifié 2 fois.
Jean-Michel
LibO 7.5.9 et AoO 4.1.15 sur Windows 11 & Ubuntu 22.04
LibO 7.6 sur OpenSuse & Linux MX
LibO 7.5.9 et AoO 4.1.15 sur Windows 11 & Ubuntu 22.04
LibO 7.6 sur OpenSuse & Linux MX
-
- NéOOphyte
- Messages : 243
- Inscription : 13 juil. 2022 19:13
Re: Clé Primaire : INTEGER obligatoire ?
Vous avez répondu à juste tritre. Une écriture comptable est pour ainsi dire "progressive", donc, pour enregistrer un évènement, j'utilise de même que vous une autovaleur.
Bien à vous
Bien à vous
Libre Office 6.0.4 sur Ubuntu 18.04
- Dude
- IdOOle de la suite
- Messages : 25143
- Inscription : 03 mars 2006 08:45
- Localisation : 127.0.0.1
- Contact :
Re: Clé Primaire : INTEGER obligatoire ?
Salut,
Une clé primaire est obligatoire si tu veux faire fonctionner Base.
C'est marqué dans le tutoriel Démarrer avec Base (page 10)
Une clé primaire est obligatoire si tu veux faire fonctionner Base.
C'est marqué dans le tutoriel Démarrer avec Base (page 10)
-
- NéOOphyte
- Messages : 243
- Inscription : 13 juil. 2022 19:13
Re: Clé Primaire : INTEGER obligatoire ?
Libre Office 6.0.4 sur Ubuntu 18.04
Re: Clé Primaire : INTEGER obligatoire ?
ce n'est pas ça ma question.
Jean
"Donne un poisson à un homme, il mangera un jour, apprends-lui à pêcher, il mangera tous les jours."
MacOS X 12.4 M1
LO 7.2.7.2
AOO 4.1.10
temurin-8.jdk
MacOS X 12.6.7 Intel
LO 7.2.7.2
AOO 4.1.3
jdk 1.8.0_333 (??)
"Donne un poisson à un homme, il mangera un jour, apprends-lui à pêcher, il mangera tous les jours."
MacOS X 12.4 M1
LO 7.2.7.2
AOO 4.1.10
temurin-8.jdk
MacOS X 12.6.7 Intel
LO 7.2.7.2
AOO 4.1.3
jdk 1.8.0_333 (??)
- Dude
- IdOOle de la suite
- Messages : 25143
- Inscription : 03 mars 2006 08:45
- Localisation : 127.0.0.1
- Contact :
Re: Clé Primaire : INTEGER obligatoire ?
Je complétais celle de jf.l
Qu'est ce que tu n'as pas compris jusque là ?
Qu'est ce que tu n'as pas compris jusque là ?
Poser une question, c'est bien. Répondre aux autres, c'est encore mieux.
Améliorez AOO et votez pour les issues
Améliorez AOO et votez pour les issues
-
- NéOOphyte
- Messages : 243
- Inscription : 13 juil. 2022 19:13
Re: Clé Primaire : INTEGER obligatoire ?
Bonjour Jean,
Il doit sûrement y avoir un qui pro quo car l'affaire commence à courir sur le fil à M. Dude. Revenons donc à nos "moutons".
La relation clé primaire-clé étrangère est en quelque sorte le premier pilier sur lequel est fondé le DataBaseRelationalManagementSystem
Si vous souhaitez donc utiliser ce système, il faudra bien en quelque sorte appliquer sa théorie....
Si vous me le permettez, ne vous laissez pas turlupiner par des soi-disant GOUROUS du programme Filemaker...
Bien à vous
Il doit sûrement y avoir un qui pro quo car l'affaire commence à courir sur le fil à M. Dude. Revenons donc à nos "moutons".
La relation clé primaire-clé étrangère est en quelque sorte le premier pilier sur lequel est fondé le DataBaseRelationalManagementSystem
Si vous souhaitez donc utiliser ce système, il faudra bien en quelque sorte appliquer sa théorie....
Si vous me le permettez, ne vous laissez pas turlupiner par des soi-disant GOUROUS du programme Filemaker...
Bien à vous
Libre Office 6.0.4 sur Ubuntu 18.04
Re: Clé Primaire : INTEGER obligatoire ?
Ce que je ne comprends pas à présent, c'est comment j'ai fait pour croire qu'une clé primaire ne put être autre chose qu' INTEGER...
Dernière modification par jean83fun le 05 août 2022 10:17, modifié 1 fois.
Jean
"Donne un poisson à un homme, il mangera un jour, apprends-lui à pêcher, il mangera tous les jours."
MacOS X 12.4 M1
LO 7.2.7.2
AOO 4.1.10
temurin-8.jdk
MacOS X 12.6.7 Intel
LO 7.2.7.2
AOO 4.1.3
jdk 1.8.0_333 (??)
"Donne un poisson à un homme, il mangera un jour, apprends-lui à pêcher, il mangera tous les jours."
MacOS X 12.4 M1
LO 7.2.7.2
AOO 4.1.10
temurin-8.jdk
MacOS X 12.6.7 Intel
LO 7.2.7.2
AOO 4.1.3
jdk 1.8.0_333 (??)
-
- NéOOphyte
- Messages : 243
- Inscription : 13 juil. 2022 19:13
Re: [Résolu] Clé Primaire : INTEGER obligatoire ?
Jean, mon cher ami,
Votre question a déjà été satisfaite plus haut. Il est donc clair qu'un champ VARCHAR ne peut PAS ETRE AUTOMATIQUE.
Bien à vous
Votre question a déjà été satisfaite plus haut. Il est donc clair qu'un champ VARCHAR ne peut PAS ETRE AUTOMATIQUE.
Bien à vous
La modération vous a écrit: Il est inutile de surenchérir sur un sujet déclaré résolu.
Sujet verrouillé.
Libre Office 6.0.4 sur Ubuntu 18.04