[resolu]Renumeroter dans la BBD

Renumeroter dans la BBD [resolu] - ASP - Programmation

Marsh Posté le 17-06-2004 à 14:29:18    

Bon dernier petit soucis.
J'ai une base de donnée avec un champ ID.Disons par exemple que dans ce champ ID j'ai  les valeurs 1,2 et 3.
Lorsque je supprime la valeur 2 je voudrais que le 3 devienne 2, comment faire?
Merci


Message édité par fr0ggy le 17-06-2004 à 14:57:24
Reply

Marsh Posté le 17-06-2004 à 14:29:18   

Reply

Marsh Posté le 17-06-2004 à 14:38:57    

Quelle est l'utilité de vouloir décrémenter tes ID ? Surtout que c'est un peu dangeureux si c'est une clé primaire.


Message édité par DVDAI le 17-06-2004 à 14:39:18
Reply

Marsh Posté le 17-06-2004 à 14:42:08    

pour que ca reste dans le bon ordre et pour d'autre chose aussi, enfin en clair j'en ai besoin

Reply

Marsh Posté le 17-06-2004 à 14:42:28    

et d'ailleurs impossible s'il est de type clé primaire (enfin, sans magouiller)
 
enfin dis-toi qu'on ne devrait jamais savoir ce que contient une clé primaire!


Message édité par urd-sama le 17-06-2004 à 14:43:01
Reply

Marsh Posté le 17-06-2004 à 14:44:23    

fr0ggy a écrit :

pour que ca reste dans le bon ordre et pour d'autre chose aussi, enfin en clair j'en ai besoin


 
Bin de toute façon, ça reste toujours dans le bon ordre d'une certainne façon. Exemple, tu as 3 lignes avec l'ID 1,2 et3. Tu supprimes 2, il te reste 1 et 3. Tu en insère une nouvelle, tu auras 1,3 et 4. Donc c'est toujours dans l'ordre. Je comprend pas le problème donc.  :??:

Reply

Marsh Posté le 17-06-2004 à 14:46:29    

bah le probleme et que si j'ai a l'origine 1,2,3 et que je supprime le 2 j'aurais 1,3 et moi c pas ce que je veux, moi je veux que ca me fasse 1,2!

Reply

Marsh Posté le 17-06-2004 à 14:47:08    

ta base de données est mal schématisée [:spamafote]

Reply

Marsh Posté le 17-06-2004 à 14:47:22    

comment ca?

Reply

Marsh Posté le 17-06-2004 à 14:48:15    

dixit mon message + haut

Reply

Marsh Posté le 17-06-2004 à 14:49:47    

urd-sama a écrit :

dis-toi qu'on ne devrait jamais savoir ce que contient une clé primaire!


Pas tjrs vrai ça!:o

Reply

Marsh Posté le 17-06-2004 à 14:49:47   

Reply

Marsh Posté le 17-06-2004 à 14:50:57    

skeye a écrit :

Pas tjrs vrai ça!:o


c'est pour ca que j'ai mis un conditionnel :o
par contre je veux bien un contre-exemple pour ma gouverne [:cupra]

Reply

Marsh Posté le 17-06-2004 à 14:51:00    

ah ok bon alors voila je vais tout expliquer ce sera plus simple.
Ma base de donnée contien 3 champs:
ID | titre | news
 
je suis en train de faire un outil d'admin pour gerer ces news. Donc quand je supprime la news n°2 (ID=2) je voudrais que la news n°3(ID=3) prenne l'ID 2. Car apres quand lorsque je vais ajouter une news avec l'outil d'admin je voudrais que la nouvelle news prenne l'ID 3.
Voila je pense avoir ete clair mais si qq un a une autre solution je suis preneur.


Message édité par fr0ggy le 17-06-2004 à 14:53:03
Reply

Marsh Posté le 17-06-2004 à 14:51:25    

fr0ggy a écrit :

ah ok bon alors voila je vais tout expliquer ce sera plus simple.
Ma base de donnée contien 3 champs:
ID | titre | news
 
je suis en train de faire un outil d'admin pour gerer ces news. Donc quand je supprime la news n°2 donc avec l'id 2 je voudrais que la news n°3 prenne la place de la 2. Car apres quand je vais ajouter une nouvelle news je veux qu'elle prenne l'id 3.
Voila je pense avoir ete clair mais si qq un a une autre solution je suis preneur.


pourquoi?

Reply

Marsh Posté le 17-06-2004 à 14:51:47    

urd-sama a écrit :

c'est pour ca que j'ai mis un conditionnel :o
par contre je veux bien un contre-exemple pour ma gouverne [:cupra]


bah une table d'individus avec le numéro de sécu comme clé primaire...:??:

Reply

Marsh Posté le 17-06-2004 à 14:52:20    

skeye a écrit :

bah une table d'individus avec le numéro de sécu comme clé primaire...:??:


perso je trouve que c'est caca de faire ca, mais ca reste de l'appréciation personnelle

Reply

Marsh Posté le 17-06-2004 à 14:53:02    

urd-sama a écrit :

perso je trouve que c'est caca de faire ca, mais ca reste de l'appréciation personnelle


Je vois pas le pb...la clé sert d'identifiant unique, si tu en as déjà un je vois pas l'intérêt d'en générer un artificiel qui ne signifie rien.

Reply

Marsh Posté le 17-06-2004 à 14:53:06    

Comme urd-sama donc, ta base est mal défini au départ. Tu devrais dans ce cas définir un 4° champ qui serait l'ordre de tes news...

Reply

Marsh Posté le 17-06-2004 à 14:54:17    

urd-sama : je veux qu'elle prenne l'id 3.  
 
pour qu'apres elles s'affiche dans l'ordre

Reply

Marsh Posté le 17-06-2004 à 14:55:23    

fr0ggy a écrit :

urd-sama : je veux qu'elle prenne l'id 3.  
 
pour qu'apres elles s'affiche dans l'ordre


mauvaise conception, on te dit. Rajoute un champ date ou ordre, 'fin une connerie de ce style/

Reply

Marsh Posté le 17-06-2004 à 14:55:24    

skeye a écrit :

Je vois pas le pb...la clé sert d'identifiant unique, si tu en as déjà un je vois pas l'intérêt d'en générer un artificiel qui ne signifie rien.


un exemple débile, tu entre un gars et t'as pas son no... ben mairde
mais bon, comme je te disais, c'est après une question d'interprétation perso. pour moi la clé primaire ne doit pas être une information à proprement parler.

Reply

Marsh Posté le 17-06-2004 à 14:56:33    

ok vous avez raison ca va etre plus simple avec un autre champ

Reply

Marsh Posté le 17-06-2004 à 15:00:34    

j'ai fait un system de gestion de news justement l'autre jour frOggy, en gros le "concept" :
 
pour chaque news un fichier est créé (dans un rep "news/" par exemple) sous le nom : aammjjhhmmss (année/mois/jour/...)
 
avec dedans par exemple :  
 
ligne 1 : auteur
ligne 2 : titre
ligne 3 : date
ligne 3 : le contenu de la new
...
 
 
apres t'as juste à les afficher par ordre de nom de fichier, ca simplifie vachement la gestion ! bon jte dis ça comme ca hein...

Reply

Marsh Posté le 17-06-2004 à 15:06:29    

super idée ca...merci c cool, comment on fait pour recuprer la date en asp?

Reply

Marsh Posté le 17-06-2004 à 15:06:48    

fr0ggy a écrit :

super idée ca...merci c cool, comment on fait pour recuprer la date en asp?


select sysdate from dual

Reply

Marsh Posté le 17-06-2004 à 15:08:14    

fr0ggy a écrit :

Bon dernier petit soucis.
J'ai une base de donnée avec un champ ID.Disons par exemple que dans ce champ ID j'ai  les valeurs 1,2 et 3.
Lorsque je supprime la valeur 2 je voudrais que le 3 devienne 2, comment faire?
Merci


De manière automatique, tu ne peux pas. Il faudrait qu'à chaque fois que tu lances un DELETE, tu fasses ensuite un update sur toute ta table pour tous les enregistrements plus grands que l'ID que tu viens d'effacer.
 
Voilà, t'as plus qu'à traduire ça en SQL [:icon12]


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 17-06-2004 à 15:08:30    

heu skeye est ce que tu peut preciser un petit peu stp, quel est le code?

Reply

Marsh Posté le 17-06-2004 à 15:09:22    

fr0ggy a écrit :

urd-sama : je veux qu'elle prenne l'id 3.  
 
pour qu'apres elles s'affiche dans l'ordre


pour s'afficher dans l'ordre, tu fais un ORDER BY, sinon t'as pas de garantie que ça s'affichera dans l'ordre (parce que ça ne s'affiche pas forcément dans l'ordre d'insertion dans ta table).


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 17-06-2004 à 15:09:37    

fr0ggy a écrit :

heu skeye est ce que tu peut preciser un petit peu stp, quel est le code?


Je peux pas faire plus précis, je te file une requête SQL qui retourne la date, tu veux quoi de plus?

Reply

Marsh Posté le 17-06-2004 à 15:13:51    

skeye a écrit :

bah une table d'individus avec le numéro de sécu comme clé primaire...:??:

la cnil, tu connais ?
ici on est obligé d'utiliser des identifiants a la con

Reply

Marsh Posté le 17-06-2004 à 15:14:24    

urd-sama a écrit :

un exemple débile, tu entre un gars et t'as pas son no... ben mairde
mais bon, comme je te disais, c'est après une question d'interprétation perso. pour moi la clé primaire ne doit pas être une information à proprement parler.


+1 [:cupra]


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 17-06-2004 à 15:14:25    

lorill a écrit :

la cnil, tu connais ?
ici on est obligé d'utiliser des identifiants a la con


On en apprend tous les jours...[:skeye]
Cf blabla, c'était qu'un exemple...

Reply

Marsh Posté le 17-06-2004 à 15:20:40    

heu pour la date tu peux prendre celle du server ASP direct
 
<% = date %>
 
moi perso pour créer le nom du fichier en forcant aammjj... (parce que sinon il mettait 6 à la place de 06 par exemple) :
 

Code :
  1. DateTxt = cstr(Date)
  2. TimeTxt = cstr(time)
  3. right(DateTxt,2) & mid(DateTxt, 4,2) & left(DateTxt,2) & left(TimeTxt,2) & mid(TimeTxt, 4,2) & right(TimeTxt,2)


 
mais bon va falloir que tu cherche aussi un peu hein...  :o


Message édité par Dr Raf le 17-06-2004 à 15:21:28
Reply

Marsh Posté le 17-06-2004 à 15:28:07    

en fait je crois que j'ai peut etre une solution plus simple mais je ne sais pas si ca existe en asp.
Je crois qu'en C y'a une fonction de temps qui permet d'avoir un numero qui augmente depuis genre 1970, est ce qu'il existe de mm en asp? ou comment puis-je recuperer ce nombre

Reply

Marsh Posté le 17-06-2004 à 15:29:55    

fr0ggy a écrit :

en fait je crois que j'ai peut etre une solution plus simple


Non.
On t'a déjà donné 2 solutions simples.

Reply

Marsh Posté le 17-06-2004 à 15:31:26    

skeye en fait mon probleme est de faire le code avec la requette que tu m'as passé pour afficher cette requette.

Reply

Marsh Posté le 17-06-2004 à 15:32:51    

fr0ggy a écrit :

skeye en fait mon probleme est de faire le code avec la requette que tu m'as passé pour afficher cette requette.


et? Qu'est-ce qui te pose pb???

Reply

Marsh Posté le 17-06-2004 à 15:33:27    

comment afficher le resultat d'une requette sql

Reply

Marsh Posté le 17-06-2004 à 15:35:00    

Ah ouais. Bon ben là tu vas commencer par apprendre les bases en asp, on va pas te pondre tout ton code tout fait hein...[:itm]

Reply

Marsh Posté le 17-06-2004 à 15:36:39    

=) ok deja merci pour m'avoir ouvert les yeux sur comment faire mon truc

Reply

Marsh Posté le 17-06-2004 à 15:37:12    

ouais faudrait que tu trouves un tuto ou un bouquin pour les bases

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed