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 :

[MS-SQL] Clé primaire personnalisable


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    183
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 183
    Par défaut [MS-SQL] Clé primaire personnalisable
    Bonjour à tous

    Voilà j'ai un petit problème, j'aimerai savoir comment je pourrais créer une clé primaire personnalisable, par exemple chaque enregistrements devrais avoir une clé primaire commençant par B1 suivis de chiffre ou de lettre peut importe c'est uniquement le début qui importe.


    Merci à ceux qui prendront le temps de me répondre, bonne journée.

    pitipilot

  2. #2
    Membre Expert Avatar de iberserk
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Novembre 2004
    Messages
    1 795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 795
    Par défaut
    Et quel est le problème (a part que c'est idiot bien sûr...) que vous rencontrez?

    Créez la table avec la colonne, définissez la comme clé primaire puis ajoutz vos données avec INSERT?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    183
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 183
    Par défaut
    Bonjour, mon problème est que j'envoie depuis plusieurs BDD plusieurs enregistrement dans une même Bdd via des jobs. Je verifie le bon fonctionnement des jobs en regardant la concordance des clés primaires. Sauf qu'il faudrait des clés primaires associés à chaque BDD émettrice car sinon, on peut imaginer d'avoir des enregistrements contenant la même PK dans la BDD réceptrice.
    Voilà pourquoi il me faudrait un type de clé primaire par BDD émettrice

    Bonne journée

  4. #4
    Membre Expert Avatar de iberserk
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Novembre 2004
    Messages
    1 795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 795
    Par défaut
    Faites une clé composite:

    Une Colonne stockant la provenance des données(nom de la base etc) une autre représentant la clé primaire au sein de la base de données.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    183
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 183
    Par défaut
    Citation Envoyé par iberserk Voir le message
    Faites une clé composite:

    Une Colonne stockant la provenance des données(nom de la base etc) une autre représentant la clé primaire au sein de la base de données.
    Effectivement, c'est ça l'idée mais le truc c'est que mes jobs fonctionne sur une seule colonne contenant la clé primaire, travailler sur deux colonnes reviendrais à changer ma PK sur la première BDD emettrice qui fonctionne déjà.

    Il n'y a pas un moyen d'ajouter le nom de la BDD dans la PK directement ?

    Merci pour vos réponses

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 002
    Billets dans le blog
    6
    Par défaut
    Il suffit de créer deux colonnes, l'une avec ce que vous imposez et l'autre avec un auto incrément par exemple.

    Ensuite vous pouvez concaténer les eux dans une vue !

    A +
    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/ * * * * *

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

Discussions similaires

  1. [AC-2003] Re'quete SQL clé primaire, clé étrangère
    Par titemimine dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 16/02/2010, 13h51
  2. [SQL] Clé primaire dans mon formulaire
    Par solaar dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 15/03/2008, 18h26
  3. clé primaire personnalisée
    Par emmablue dans le forum Access
    Réponses: 2
    Dernier message: 27/07/2006, 11h37
  4. [SQL Server] tri personnalisé
    Par soltani1 dans le forum Langage SQL
    Réponses: 7
    Dernier message: 07/07/2006, 09h54
  5. [TRANSACT-SQL] clé primaire qui s'auto-incrémente
    Par DonJR dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 30/05/2006, 11h16

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