|
Bas de page | |
---|---|
Auteur | Sujet : Actualisation automatique de lignes avec MySQL |
Publicité | Posté le 18-03-2015 à 05:06:15 |
antac .. | Qu'est ce qui t'empêche d'avoir deux colonnes dans ta table de réponses :
|
flo850 moi je | 1)
--------------- |
saint malo | Okay okay, merci pour vos réponses (je réponds tardivement parce que je plongeais le nez dans les triggers)
Merci pour les triggers, ça a l'air de pouvoir faire une partie de ce que je veux. Ceci dit, cron a l'air beaucoup plus puissant, en termes de choses différentes que je peux faire, non ? Si je me trompe pas, ça a l'air de pouvoir gérer un autre aspect de mon projet pour lequel j'avais aucune idée de comment le gérer, du coup j'ai des questions dessus
J'ai regardé rapidement cron (mais pas en profondeur), du coup deux trois questions sur cron pour être sur que je perdrai pas du temps en me plongeant dedans : Message édité par saint malo le 30-03-2015 à 17:42:25 |
antac .. | Sous Windows tu as les tâches planifiées. MySQL permet aussi l exécution de requêtes planifiées Message édité par antac le 31-03-2015 à 11:04:36 |
saint malo | Wokay, merci pour l'info je vais aller regarder.
|
flo850 moi je | c'est quasi du temps réel avec l'équivalent du trigger. reddit ne stocke pas sans dans une base de données relationnelle --------------- |
deliriumtremens sic transit intestinal... | Tu pourrais aussi tout simplement faire une vue, non ?
Message cité 1 fois Message édité par deliriumtremens le 02-04-2015 à 09:18:09 |
saint malo |
Je suis pas sur d'avoir compris : ils utilisent des triggers (ou un truc équivalent), mais ils utilisent du nosql, c'est ça ?
J'ai survolé un peu les vues ici (http://openclassrooms.com/courses/administrez-vos-bases-de-donnees-avec-mysql/vues), je ne suis pas sur de voir en quoi une vue peut m'aider ici ? - Autre question (dites moi si vous préférez que je créé un nouveau topic) : je suis chez online.net et apparemment j'ai pas le droit de faire de trigger sur mes tables, une idée de pourquoi ? J'ai aussi tenté de faire une procédure stockée, et même chose. Du coup j'ai créé un domaine gratuit sur 000webhost.com pour tester des trucs, j'ai pas l'air d'avoir droit de créer des triggers et des procédures stockées non plus (et sur webhost, quand j'essaie de crééer une procédure stockée, ça me sort cette erreur (même après un REPAIR TABLE) : "#1547 - Column count of mysql.proc is wrong. Expected 20, found 16. The table is probably corrupted."
Message édité par saint malo le 05-04-2015 à 19:31:14 |
rufo Pas me confondre avec Lycos! | Les hébergeurs mutualisés imitent souvent les possibilités, en particulier sur les abonnements les moins chers
--------------- Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta |
Publicité | Posté le 09-04-2015 à 17:13:23 |
saint malo | Ok merci pour la réponse, donc c'est bien ce qu'il me semblait, j'avais peur que ce soit moi qui comprenne rien. A priori cron a l'air d'être inclus donc je vais passer par là, d'autant que si j'ai bien compris ça me permet bien plus de choses que les triggers et procs stockées. Du coup, question code maintenant. Si je veux aller lire, pour chaque ligne, le nombre d'upvote et le nombre de downvote, puis en calculer un score, et inscrire ce score dans un autre champ de cette même ligne. Est-ce que ça, ça fonctionne ?
Il faut quelque chose en particulier derrière le WHERE j'imagine non ? (pour que ça traite la ligne visée) Message édité par saint malo le 13-04-2015 à 09:47:41 |
rufo Pas me confondre avec Lycos! | Attention, si t'as beaucoup d'enregistrements dans ta BD, faire trop de requêtes pourrait poser pb chez certains hébergeurs mutualisés. J'ai eu le cas il y a un an avec OVH : au bout d'un certain nb de requêtes faite dans un court laps de temps dans un même script, la connexion à la BD était coupée. Du coup, mon script php continuait à fonctionner mais les requêtes SQL ne passaient plus. C'était dû à un paramètre de mysql que l'hébergeur mettait pour se protéger du flood.
--------------- Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta |
saint malo | J'ai compris la première partie du message, par contre je suis pas sur d'avoir compris comment tu as résolu le problème ^^
|
rufo Pas me confondre avec Lycos! | Ben au lieu de faire pleins de petites requêtes SQL de type SELECT, j'en fait moins mais des plus grosses.
--------------- Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta |
saint malo | Ooohh okay, je connaissais pas implode, mais j'ai quand même compris le principe, merci pour l'explication ! Dans mon cas, vu que je veux pas seulement lire chaque ligne, mais la lire et la modifier (en fonction de ce que j'y ai lu), c'est possible de faire la même chose non ? Message édité par saint malo le 13-04-2015 à 11:22:32 |
mechkurt | Ben tu peux faire un UPDATE matable SET score = (nombre_upvotes - nombre_downvotes) WHERE 1
--------------- D3 |
saint malo |
Je sais que c'est pas hyper clair ici, mais la réponse c'est que mon calcul (que je simplifie ici en "score = nb_upvote - nb_downvote" ) est pas juste un calcul en fait, mais un algo : je compare certains des paramètres entre eux et selon les cas, j'applique une formule différente pour calculer ce que je veux. Pour donner un exemple simple (qui n'est pas ce que je veux faire, c'est juste histoire de faire comprendre) si nb_upvote-nb_downvote<0, je préfère dire que ça vaut 0 dans mon calcul, plutôt que de prendre le résultat de la soustraction. J'espère que je suis clair ^^... Bref, et à ma connaissance, je peux pas faire ce genre de choses dans une requête... après je me trompe peut être... Accessoirement, même si c'était pas un algo mais juste un calcul (je suis pas sur que je pourrai me passer de l'algo, mais imaginons que je puisse y arriver et tout mettre ça sous la forme d'un seul calcul), ce serait un calcul dans lequel j'ai une 30aine d'inputs (pas seulement un nombre d'upvotes et de downvotes), certains que je somme ou multiplie entre eux, d'autres que je divise entre eux, etc. Je connais pas bien SQL mais du peu que j'en ai vu, mon instinct me dit que mettre un calcul avec une trentaine de paramètres dans une requête, ça doit pas forcément passer super bien... Après j'ai peut être faux sur toute la ligne hein, mais j'apprends encore Message cité 1 fois Message édité par saint malo le 13-04-2015 à 12:09:59 |
mechkurt | Ne pas sous estimer mysql, tu peux faire des calculs assez complexe de façon relativement gratuite, en tout cas pas rapport à un SELECT + traitement php + UPDATE.
--------------- D3 |
rufo Pas me confondre avec Lycos! |
--------------- Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta |
Sujets relatifs | |
---|---|
equivalence mysql_escape_string en PDO | Convertir moteur recherche mysql_ en PDO |
Lecteur Youtube invisible à lancement automatique | Créer une extension avec des actions automatique |
Importation cvs dans mysql | [RESOLU][PHP][MYSQL]requête Mysql (INSERT) |
Mysql exclure double critère | [Mysql] Pertinence des résultats avec MATCH / AGAINST |
Envoi données vers base mysql | [RESOLU] [POWERSHELL] Modifier des lignes précises sur un fichier |
Plus de sujets relatifs à : Actualisation automatique de lignes avec MySQL |