Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1530 connectés 

 

Sujet(s) à lire :
    - Who's who@Programmation
 

 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  17531  17532  17533  ..  27160  27161  27162  27163  27164  27165
Auteur Sujet :

[blabla@olympe] Le topic du modo, dieu de la fibre et du monde

n°1987863
skeye
Posté le 27-04-2010 à 10:42:31  profilanswer
 

Reprise du message précédent :
Je dois générer pour un paquet d'utilisateurs un nombre aléatoire sur 3 chiffres, sans doublons sur (nom, prenom, ombre aléatoire).
Une idée d'algo qui m'éviterait des boucles à la con pour vérifier que ça existe pas déjà en base?[:joce]


---------------
Can't buy what I want because it's free -
mood
Publicité
Posté le 27-04-2010 à 10:42:31  profilanswer
 

n°1987868
R3g
fonctionnaire certifié ITIL
Posté le 27-04-2010 à 10:46:16  profilanswer
 

skeye a écrit :

Je dois générer pour un paquet d'utilisateurs un nombre aléatoire sur 3 chiffres, sans doublons sur (nom, prenom, ombre aléatoire).
Une idée d'algo qui m'éviterait des boucles à la con pour vérifier que ça existe pas déjà en base?[:joce]


Tu as combien d'utilisateurs ?


---------------
Au royaume des sourds, les borgnes sont sourds.
n°1987869
flo850
moi je
Posté le 27-04-2010 à 10:46:34  profilanswer
 

ton paquet fait il  plus de 999  ?  
si oui ,tu es fucké
si non, les boucles ne vont pas être si couteuses

n°1987870
skeye
Posté le 27-04-2010 à 10:46:51  profilanswer
 

R3g a écrit :


Tu as combien d'utilisateurs ?


potentiellement quelques dizaines de milliers.[:petrus75]


---------------
Can't buy what I want because it's free -
n°1987872
skeye
Posté le 27-04-2010 à 10:48:22  profilanswer
 

flo850 a écrit :

ton paquet fait il  plus de 999  ?  
si oui ,tu es fucké


wut?[:pingouino dei]


---------------
Can't buy what I want because it's free -
n°1987873
Shinuza
This is unexecpected
Posté le 27-04-2010 à 10:48:43  profilanswer
 

Prems.


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1987874
flo850
moi je
Posté le 27-04-2010 à 10:49:52  profilanswer
 

skeye a écrit :


potentiellement quelques dizaines de milliers.[:petrus75]


nombre sur 3 chiffres  ?  
 
J'ai cru comprendre que nom et autres douceurs, ce sont les graines pour générer ton chiffre. Si non, tu as une partie alpha en plus ? de quelle longueur ?

n°1987875
skeye
Posté le 27-04-2010 à 10:51:05  profilanswer
 

flo850 a écrit :


nombre sur 3 chiffres  ?

 

J'ai cru comprendre que nom et autres douceurs, ce sont les graines pour générer ton chiffre. Si non, tu as une partie alpha en plus ? de quelle longueur ?


Sur mais quelques dizaines de milliers si j'en ai plus de 999 avec mêmes nom/prénom c'est pas de bol, quand même.:o
Le but du jeu c'est de générer des logins du type prenom.nom.clé.
Il a été explicitement demandé que clé soit un nombre aléatoire sur 3 chiffres, et qu'il soit obligatoire.

Message cité 3 fois
Message édité par skeye le 27-04-2010 à 10:51:51

---------------
Can't buy what I want because it's free -
n°1987877
drasche
Posté le 27-04-2010 à 10:54:25  profilanswer
 

skeye a écrit :

Sur mais quelques dizaines de milliers si j'en ai plus de 999 avec mêmes nom/prénom c'est pas de bol, quand même.:o
Le but du jeu c'est de générer des logins du type prenom.nom.clé.
Il a été explicitement demandé que clé soit un nombre aléatoire sur 3 chiffres, et qu'il soit obligatoire.


Ca aurait été plus chaud en Angleterre avec tous ces John Smith [:petrus75]


---------------
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)
n°1987878
flo850
moi je
Posté le 27-04-2010 à 10:54:47  profilanswer
 

tu ne dois pas avoir tant de collisions que ça  
 
ici avec 2500 agents, mais seulement premiereletreduprenom.nom il y a moins d'une centaines de collisions

mood
Publicité
Posté le 27-04-2010 à 10:54:47  profilanswer
 

n°1987880
FlorentG
Posté le 27-04-2010 à 10:54:59  profilanswer
 
n°1987881
R3g
fonctionnaire certifié ITIL
Posté le 27-04-2010 à 10:56:20  profilanswer
 

skeye a écrit :


Sur mais quelques dizaines de milliers si j'en ai plus de 999 avec mêmes nom/prénom c'est pas de bol, quand même.:o
Le but du jeu c'est de générer des logins du type prenom.nom.clé.
Il a été explicitement demandé que clé soit un nombre aléatoire sur 3 chiffres, et qu'il soit obligatoire.


si la clé est vraiment aléatoire (et ne dépend pas de nom et prenom), tu ne peux pas être sur à l'avance que le triplet n'existe pas déjà, donc je vois pas comment tu peux faire l'économie d'une requête sur la base pour vérifier. Ou alors tu fais de nom+prenom+clé la clé primaire de la table, et tu laisse l'insert te péter à la gueule en cas de doublon


---------------
Au royaume des sourds, les borgnes sont sourds.
n°1987883
skeye
Posté le 27-04-2010 à 10:56:41  profilanswer
 

flo850 a écrit :

tu ne dois pas avoir tant de collisions que ça  
 
ici avec 2500 agents, mais seulement premiereletreduprenom.nom il y a moins d'une centaines de collisions


 
J'ai commencé avec un panel de 600 personnes, j'ai déjà 1 collision sur prenom/nom/annee de naissance...[:doc petrus]


---------------
Can't buy what I want because it's free -
n°1987884
R3g
fonctionnaire certifié ITIL
Posté le 27-04-2010 à 10:57:50  profilanswer
 

skeye a écrit :


 
J'ai commencé avec un panel de 600 personnes, j'ai déjà 1 collision sur prenom/nom/annee de naissance...[:doc petrus]


tu fais la somme des chiffres de la date de naissance ? c'est pas vraiment aléatoire mais ça peut le faire...


---------------
Au royaume des sourds, les borgnes sont sourds.
n°1987887
skeye
Posté le 27-04-2010 à 10:59:22  profilanswer
 

R3g a écrit :

Ou alors tu fais de nom+prenom+clé la clé primaire de la table,


 
C'est déjà le cas - la clé primaire est le login.
 

R3g a écrit :

et tu laisse l'insert te péter à la gueule en cas de doublon


 
Je sens que ça va être la solution, oui...catcher l'explosion de l'insert et recommencer en générant une nouvelle clé.:o


---------------
Can't buy what I want because it's free -
n°1987889
flo850
moi je
Posté le 27-04-2010 à 11:00:50  profilanswer
 

skeye a écrit :


 
Je sens que ça va être la solution, oui...catcher l'explosion de l'insert et recommencer en générant une nouvelle clé.:o


Ca dépend, est ce que tu teste l'existence d'un fichier avant de l'ouvrir , ou est ce que tu catches l'exeption ?

n°1987890
skeye
Posté le 27-04-2010 à 11:02:07  profilanswer
 

R3g a écrit :


tu fais la somme des chiffres de la date de naissance ? c'est pas vraiment aléatoire mais ça peut le faire...


ça restreint mon "aléatoire sur 3 chiffres" à peu près entre (1+1+1+9+8+0) = 20 et (3+0+9+1+9+9+9) = 40.
Pas terrible pour éviter les collisions.[:joce]


---------------
Can't buy what I want because it's free -
n°1987891
R3g
fonctionnaire certifié ITIL
Posté le 27-04-2010 à 11:02:20  profilanswer
 


skeye a écrit :


 
Je sens que ça va être la solution, oui...catcher l'explosion de l'insert et recommencer en générant une nouvelle clé.:o


Note qu'en terme de perfs ça doit pas être très différent de faire un select avant, c'est juste plus crade.


---------------
Au royaume des sourds, les borgnes sont sourds.
n°1987892
skeye
Posté le 27-04-2010 à 11:02:22  profilanswer
 

flo850 a écrit :


Ca dépend, est ce que tu teste l'existence d'un fichier avant de l'ouvrir , ou est ce que tu catches l'exeption ?


[:ddr555]


---------------
Can't buy what I want because it's free -
n°1987894
flo850
moi je
Posté le 27-04-2010 à 11:04:22  profilanswer
 


cc'est la même problématique,non ?  
 
par contre je trouve ça space d'imposer 3 chiffres, mas pas de contraintes sur les caractè-res alpha ( tu gère les accents , les apostrophes ? )

n°1987895
leo++
Chef de file indienne
Posté le 27-04-2010 à 11:04:36  profilanswer
 

skeye a écrit :


Il a été explicitement demandé que clé soit un nombre aléatoire sur 3 chiffres, et qu'il soit obligatoire.


 
Dans un but de sécurité ? Si oui c'est idiot, si non c'est pas un vrai probleme [:leo++]
 
Tu peux générer ton "aléatoire" avec les ticks courants mod 1000, en faisant gaffe à chaque fois d'éviter les doublon (tu traites par lot de prénoms et noms identiques)

n°1987897
skeye
Posté le 27-04-2010 à 11:05:12  profilanswer
 

R3g a écrit :


Note qu'en terme de perfs ça doit pas être très différent de faire un select avant, c'est juste plus crade.


Bof.
Si je fais un select avant je m'expose à un insert qui explose sur des accès concurrents (bon ok, là ce serait vraiment pas de bol...mêmes nom/prénom/clé aléatoire et qui valident en même temps), donc il faut le gérer quand même, et si on veut éviter de faire chier l'utilisateur avec des trucs dont il se branle ça revient à ce que je disais plus haut.[:dawao]


---------------
Can't buy what I want because it's free -
n°1987898
erulio
Posté le 27-04-2010 à 11:05:15  profilanswer
 

R3g a écrit :

Note qu'en terme de perfs ça doit pas être très différent de faire un select avant, c'est juste plus crade.


Seulement dans le cas où un doublon existe :o

n°1987902
skeye
Posté le 27-04-2010 à 11:08:27  profilanswer
 

leo++ a écrit :

Dans un but de sécurité ? Si oui c'est idiot, si non c'est pas un vrai probleme [:leo++]


Plus ou moins.
Il y a des adresses emails derrière, et ils espèrent limiter les envois de mails au pif à-partir de nom/prenom comme ça.[:moule_bite]
 

leo++ a écrit :

(tu traites par lot de prénoms et noms identiques)


Je sais pas faire, ça - il y a bien une pré-initialisation dela base de ma part, mais derrière les utilisateurs s'inscriront eux-mêmes.


---------------
Can't buy what I want because it's free -
n°1987906
nraynaud
lol
Posté le 27-04-2010 à 11:11:18  profilanswer
 

flo850 a écrit :


Ca dépend, est ce que tu teste l'existence d'un fichier avant de l'ouvrir , ou est ce que tu catches l'exeption ?


[:bien] that's the spirit !


---------------
trainoo.com, c'est fini
n°1987908
nraynaud
lol
Posté le 27-04-2010 à 11:12:56  profilanswer
 

R3g a écrit :


Note qu'en terme de perfs ça doit pas être très différent de faire un select avant, c'est juste plus crade.


[:pingouino] c'est le seul système qui ne dépend pas du degré l'isolation des transactions


---------------
trainoo.com, c'est fini
n°1987910
skeye
Posté le 27-04-2010 à 11:13:37  profilanswer
 

...et sinon, mon collègue insiste pour utiliser un max de fonctions de ZF, ce qui transforme un truc tout simple en méchante usine à gaz.[:petrus75]
...ce que l'ancienne version de l'appli faisait avec 4 pages et 3 classes devient un putain de projet bloaté.[:moule_bite]


---------------
Can't buy what I want because it's free -
n°1987917
black_lord
Truth speaks from peacefulness
Posté le 27-04-2010 à 11:20:27  profilanswer
 

skeye a écrit :

...et sinon, mon collègue insiste pour utiliser un max de fonctions de ZF, ce qui transforme un truc tout simple en méchante usine à gaz.[:petrus75]
...ce que l'ancienne version de l'appli faisait avec 4 pages et 3 classes devient un putain de projet bloaté.[:moule_bite]


 
c'est le principe de zend framework : faire du bloat.


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
n°1987919
skeye
Posté le 27-04-2010 à 11:26:06  profilanswer
 

black_lord a écrit :

c'est le principe de zend framework : faire du bloat.


 
...moi qui croyais que le but du jeu c'était de gagner du temps, au final...[:petrus75]


---------------
Can't buy what I want because it's free -
n°1987926
leo++
Chef de file indienne
Posté le 27-04-2010 à 11:32:34  profilanswer
 

skeye a écrit :


Plus ou moins.
Il y a des adresses emails derrière, et ils espèrent limiter les envois de mails au pif à-partir de nom/prenom comme ça.[:moule_bite]
 


 

skeye a écrit :


Je sais pas faire, ça - il y a bien une pré-initialisation dela base de ma part, mais derrière les utilisateurs s'inscriront eux-mêmes.


 
Et en prenant alors comme graine le  
 

Code :
  1. SELECT Count(*) + 1 AS cntSeed
  2. FROM Users
  3. WHERE nom = lenom
  4. AND prenom  = leprenom


 
en levant une erreur si cntSeed > 999 puis en y ajoutant la somme de chaque lettre du nom et du prénom (donc suite d'identifiants uniques facile à calculer et checkant les cas d'erreur).
 
Enfin, il faut réussir à rapporter cette valeur à 1000 valeurs différentes,mais les seuls solutions auxquelles je pense sont crado :(  

n°1987929
Moktar1er
No one replies...
Posté le 27-04-2010 à 11:37:08  profilanswer
 

Code :
  1. INSERT INTO maTable(nom,prenom,id) VALUES(n, p, (SELECT COUNT(nom,prenom) FROM maTable WHERE nom=n AND prenom=p))


[:tinostar]

n°1987932
R3g
fonctionnaire certifié ITIL
Posté le 27-04-2010 à 11:41:58  profilanswer
 

erulio a écrit :


Seulement dans le cas où un doublon existe :o


ben non dans le cas d'un insert la vérification sera faite de manière transparente par la bdd, mais elle sera faite quand même...


---------------
Au royaume des sourds, les borgnes sont sourds.
n°1987934
skeye
Posté le 27-04-2010 à 11:42:35  profilanswer
 

Moktar1er a écrit :

Code :
  1. INSERT INTO maTable(nom,prenom,id) VALUES(n, p, (SELECT COUNT(nom,prenom) FROM maTable WHERE nom=n AND prenom=p))


[:tinostar]


le +1 ils en veulent pas, c'est ce que ça fait dans la version actuelle et qu'ils ont demandé de changer.[:petrus75]


---------------
Can't buy what I want because it's free -
n°1987935
leo++
Chef de file indienne
Posté le 27-04-2010 à 11:42:38  profilanswer
 

Moktar1er a écrit :

Code :
  1. INSERT INTO maTable(nom,prenom,id) VALUES(n, p, (SELECT COUNT(nom,prenom) FROM maTable WHERE nom=n AND prenom=p))


[:tinostar]


 
C'est ce que je faisais mais ca donne des identifiants qui se suivent de manière non aléatoire, et prenom.nom.000 marche toujours donc ca répond pas au problème :(

n°1987938
R3g
fonctionnaire certifié ITIL
Posté le 27-04-2010 à 11:43:43  profilanswer
 

nraynaud a écrit :


[:pingouino] c'est le seul système qui ne dépend pas du degré l'isolation des transactions


hein ? si il fait le select avant pour vérifier a priori l'insert se fera dans la même transaction ??


---------------
Au royaume des sourds, les borgnes sont sourds.
n°1987942
masklinn
í dag viðrar vel til loftárása
Posté le 27-04-2010 à 11:47:15  profilanswer
 

Citation :

Goodness knows why anyone would want to shoot an animal as harmless and retiring as the moose, but thousands do – so many, in fact, that states now hold lotteries to decide who gets a license. Hunters will tell you that a moose is a wily and ferocious forest creature. In fact, a moose is a cow drawn by a three-year-old. That's all there is to it. Without doubt, the moose is the most improbable, endearingly helpless creature ever to live in the wilds. It is huge – as big as a horse – but magnificently ungainly. A moose runs as it its legs have never been introduced to each other. Other creatures grow antlers with sharp points that look wonderful in profile and command the respect of adversaries. Moose grow antlers that look like oven gloves. Above all what distinguishes the moose is its almost boundless lack of intelligence, if you are driving down a highway and a moose steps from the woods ahead of you, he will squint at you for a long minute, then abruptly hie off down the road away from you, legs flailing in eight directions at once. Never mind that there are perhaps 10 000 square miles of safe, dense forest on either side of the highway. Clueless as to where he is and what exactly is going on, the moose doggedly follows the highway halfway to New Brunswick before his peculiar gait inadvertently steers him back into the woods, where he immediately stops and takes on a perplexed expression that says, "Hey – woods. Now how the heck did I get here?" It is amazing, given the moose's lack of cunning and curiously blunted survival instincts, that the moose is one of the longest-surviving creatures in North America. Woolly mammoths, saber-toothed tigers, mountain lions, wolves, caribou, wild horses and even camels all once thrived in the Eastern United States but gradually stumbled into extinction, while the moose just plodded on, untroubled by ice ages, meteor impacts, volcanic eruptions and shifting continents. Here is just something wrong about hunting and killing an animal as dopily unassuming as a moose. Shooting a moose is not an achievement. I have encountered moose in the wild and can tell you that you could just about go up and kill one with a folded newspaper. The fact that over 900 percent of hunters manage to bag a moose in a season that lasts only a week is testament to the ease with which they can be hunted down.


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1987943
skeye
Posté le 27-04-2010 à 11:47:18  profilanswer
 

R3g a écrit :


hein ? si il fait le select avant pour vérifier a priori l'insert se fera dans la même transaction ??


Euh, pas forcément, ça, il faut le demander explicitement.:D


---------------
Can't buy what I want because it's free -
n°1987946
nraynaud
lol
Posté le 27-04-2010 à 11:51:59  profilanswer
 

R3g a écrit :


hein ? si il fait le select avant pour vérifier a priori l'insert se fera dans la même transaction ??


même dans un begin/commit c'est pas gagné :  
http://en.wikipedia.org/wiki/Isola [...] ion_levels
 
('tain mais vous vous renseignez un peu sur vous outils ? [:pingouino] )


---------------
trainoo.com, c'est fini
n°1987948
Shinuza
This is unexecpected
Posté le 27-04-2010 à 11:52:55  profilanswer
 

http://www.youtube.com/watch?v=OWDEYpqS0yw

 

Je savais que c'était pas long à décoller, mais alors là.


Message édité par Shinuza le 27-04-2010 à 11:53:28

---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1987949
boulax
Inserer phrase hype en anglais
Posté le 27-04-2010 à 11:54:44  profilanswer
 

Putain sfr [:natas]
 
Y'en a qui n'ont pas l'option business mail (de merde) et qui utilisent l'appli gmail (symbian) à la place ? (qui doit faire du http-pour-pas-etre-bloquée)
 
Parce que CA MARCHE PLUS /FOU//NATAS/SFRTAMEREENCULAY§§§


---------------
Posté depuis des chiottes, sales. Me gusta.
n°1987950
R3g
fonctionnaire certifié ITIL
Posté le 27-04-2010 à 11:55:28  profilanswer
 

nraynaud a écrit :


('tain mais vous vous renseignez un peu sur vous outils ? [:pingouino] )


[:pingouino] c'est pas mes outils :o


---------------
Au royaume des sourds, les borgnes sont sourds.
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  17531  17532  17533  ..  27160  27161  27162  27163  27164  27165

Aller à :
Ajouter une réponse
 

Sujets relatifs
Plus de sujets relatifs à : [blabla@olympe] Le topic du modo, dieu de la fibre et du monde


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)