|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : janvier 2011 Messages : 5 ![]() |
Bonjour,
Je galère depuis quelques jours concernant des identifiants de lignes sur SQL server. Sur cette partie de ma base j'ai 2 tables : - une table concernant des dossiers - une table concernant des lignes de commandes associées à ces dossiers contenant en clé étrangère id_dossier Je cherche à faire la chose suivante sans succès dans ma table des lignes : id_dossier # id_ligne article 1 10.000 crayon bleu 1 20.000 crayon rouge 2 10.000 crayon bleu Le but étant pour chaque numéro de dossier, que le numéro de ligne commence a 10.000 et s'incrémente automatiquement de 10.000 pour chaque nouvelle ligne mais il ne doit pas être unique, c'est la combinaison id_dossier + id_ligne qui doit l'être. L'id ligne doit repartir a 10.000 pour chaque première ligne d'un nouveau dossier. Avez-vous une solution ? j'imagine que ce n'est pas très compliqué mais je ne trouve aucun cas similaire malgré plusieurs heures de recherche sur Google... Merci par avance |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() |
Cela ne vous sers que pour l'affichage si je ne m'abuse?
Si tel est le cas inutile de le stocker dans une colonne, créez une vue qui vous fera ce 'calcul' car c'est bien un calcul dont il s'agit.
__________________
Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir. |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : janvier 2011 Messages : 5 ![]() |
Merci pour votre commentaire,
Cela me sert comme identifiant de ligne en réalité pour injection dans l'ERP qui a besoin de numeros de ligne en 10.000. Le seul souci est qu'il faut impérativement que chaque ligne de commande pour toute nouvelle commande recommence bien a 10.000. En fait la ligne est identifiée par son numero de commande et son numero de ligne en 10.000 Une idée ? |
|
|
00
|
|
|
#4 | |
|
Membre Expert
![]() |
Citation:
__________________
Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir. |
|
|
|
00
|
|
|
#5 |
![]() ![]() ![]() Frédéric BROUARDExpert SGBDR & SQL Inscription : mai 2002 Messages : 10 953 ![]() |
Non, ibersek pas bonne idée. Utilisez une table de compteur et une proc pour ce faire comme je l'ais dit ici :
http://sqlpro.developpez.com/cours/clefs/ En faisant des compteurs relatifs... A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/ Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp. Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * * |
|
00
|
|
|
#6 | ||
|
Membre Expert
![]() |
Citation:
Citation:
__________________
Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir. |
||
|
|
00
|
|
|
#7 |
|
Membre Expert
![]() |
Le doute m'habite
![]() Confirmez vous que c'est ce fonctionnement que vous voulez: Premiere ligne d'un dossier: id=10000 Deuxième ligne d'un dossier: id=20000 Troisième ligne d'un dossier: id=30000 etc... Si c'est le cas inutile de stocker cette information... sauf si vous pouvez supprimer des lignes vous pouvez les récuperer à la volée via un simple requète.
__________________
Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com