Scholieren.com forum

Scholieren.com forum (https://forum.scholieren.com/index.php)
-   Software & Hardware (https://forum.scholieren.com/forumdisplay.php?f=20)
-   -   [mysql] updaten van een row.. (https://forum.scholieren.com/showthread.php?t=450318)

Triloxigen 17-04-2003 13:21

[mysql] updaten van een row..
 
Stel ik heb een tabel met:
Code:

id  | action        | count
1    | view        | 5
2    | aksi        | 3
1    | blup        | 8

En de query:
PHP-code:

mysql_query("UPDATE test set count='X??' WHERE id = '$id'")  or die(); 

Wat ik wil is dat in de plaats van X?? de count steeds 1x opgeteld word ZONDER eerst een query te doen om op te vragen wat het getal is en dan +1 te doenn.

Ik dacht wel dat het kon, maar weet niet hoe :/

Enlightenment 17-04-2003 14:00

je wilt eigenlijk een $count++ doen, ik weet niet of dit kan en zo ja hoe dit moet.

Maar kleine noot: voor getallen hoef je geen ' ' te plaatsen, alleen bij strings, chars, etc. Dus je kunt gewoon SET count=15 doen b.v.

Triloxigen 17-04-2003 14:04

Citaat:

Enlightenment schreef op 17-04-2003 @ 15:00:
je wilt eigenlijk een $count++ doen, ik weet niet of dit kan en zo ja hoe dit moet.

Maar kleine noot: voor getallen hoef je geen ' ' te plaatsen, alleen bij strings, chars, etc. Dus je kunt gewoon SET count=15 doen b.v.

ja, dat weet ik, maar dat doe ik om het dezelfde opbouw te laten hebben..


maar het idee is idd $count++ maar dan vanuit de database :)

McMotion 17-04-2003 14:04

volgens mij kan het gewoon zo:

Code:

UPDATE test
SET count=count+1
WHERE id = ...


McMotion 17-04-2003 14:06

enneuh dezelfde opbouw??? het maakt het toch juist veel leesbaarder als je de quotes weghaalt? zeker als je geen prefixes voor je variabelen gebruikt om je datatype aan te geven

Triloxigen 17-04-2003 14:07

Citaat:

McMotion schreef op 17-04-2003 @ 15:04:
volgens mij kan het gewoon zo:

Code:

UPDATE test
SET count=count+1
WHERE id = ...


Zal eens proberen :D
edit: het werkt nog ook :o
:D

Nu moet ie alleen wat anders gaan doen in eht geval dat hij neit geupdate kan worden :/ zodat er een nieuwe row maakt :/

Triloxigen 18-04-2003 11:32

up :p

Koen 18-04-2003 11:37

als je nou iets doet van

PHP-code:


$update 
mysql_query("UPDATE blaat SET blaat=blaat+1 WHERE blabla=bla");

if (!
$update) {
  
$insert mysql_query("INSERT INTO blaat (bla) VALUES ('blaat')");


oid?

Triloxigen 18-04-2003 11:39

of hij 'm kan updaten of niet, $update bevat altijd "1" bij mij..
(had ik nl al geprobeerd)

Het werkt ook niet om 'm in or die(hierdus) te zetten :D

Manuzhai 18-04-2003 11:42

OF je kijkt gewoon even in de MySQL manual, en dan zie je dat er zoiets bestaat als ON DUPLICATE KEY UPDATE.

http://www.mysql.com/doc/en/INSERT.html

Domme lul! :P

Triloxigen 18-04-2003 11:45

Citaat:

Manuzhai schreef op 18-04-2003 @ 12:42:
OF je kijkt gewoon even in de MySQL manual, en dan zie je dat er zoiets bestaat als ON DUPLICATE KEY UPDATE.

http://www.mysql.com/doc/en/INSERT.html

Domme lul! :P

hey, vet :D:D

tnx

(Ik vind die mysql manual eigenlijk maar bagger, die van php werkt veel fijner, jaja appels met peren :D)

Manuzhai 18-04-2003 11:49

Citaat:

McLaren schreef op 18-04-2003 @ 12:45:
hey, vet :D:D

tnx

(Ik vind die mysql manual eigenlijk maar bagger, die van php werkt veel fijner, jaja appels met peren :D)

Die manual werkt best goed als je je weg er een beetje in kent.

Trouwens, die feature zit er pas in vanaf 4.1.0, dus ik ben bang dat je er nu nog niet erg veel aan hebt. :P

Triloxigen 18-04-2003 11:52

Citaat:

Manuzhai schreef op 18-04-2003 @ 12:49:
Die manual werkt best goed als je je weg er een beetje in kent.

Trouwens, die feature zit er pas in vanaf 4.1.0, dus ik ben bang dat je er nu nog niet erg veel aan hebt. :P

Shit, al vraag ik michel mysql te upaten, dan denk ik dat er niet verder komt dan 4.0 :(

Toch even proberen :)

Manuzhai 18-04-2003 12:00

Citaat:

McLaren schreef op 18-04-2003 @ 12:52:
Shit, al vraag ik michel mysql te upaten, dan denk ik dat er niet verder komt dan 4.0 :(
Hij wil zelfs niet naar 4.0, die is nog niet stable genoeg naar zijn zin.

Of naar de zin van de Debian packages, misschien.

Updaten naar 4.1 zou sowieso gestoord zijn, dies in neukende alpha. Ik wil niet eens dat ie dat doet. :D

Enlightenment 18-04-2003 12:23

4.0.12 is production labeled en is stabiel genoeg, ook voor produktieomgevingen.

Meer conservatieve gebruikers blijven nog even bij 3.x, maar ik denk dat nu toch wel de tijd is om te updaten naar 4.0.x. 4.1 duurt nog wel even voordat deze production labeled wordt. Aantal mensen zitten daar wel op te wachten, want deze release brengt support voor nested subqueries en mogelijk ook OpenSSL support, waar ik zelf erg naar uitkijk.

Jon 18-04-2003 12:28

Citaat:

Enlightenment schreef op 18-04-2003 @ 13:23:
Meer conservatieve gebruikers blijven nog even bij 3.x, maar ik denk dat nu toch wel de tijd is om te updaten naar 4.0.x. 4.1 duurt nog wel even voordat deze production labeled wordt. Aantal mensen zitten daar wel op te wachten, want deze release brengt support voor nested subqueries en mogelijk ook OpenSSL support, waar ik zelf erg naar uitkijk.
En niet te vergeten de verbeterde fulltext-index en vooral query cache. Voor de mensen die baat hebben bij performancewinst scheelt dat laatste enorm.

Koen 18-04-2003 12:32

Citaat:

Jon schreef op 18-04-2003 @ 13:28:
En niet te vergeten de verbeterde fulltext-index en vooral query cache. Voor de mensen die baat hebben bij performancewinst scheelt dat laatste enorm.
Hopen dat ze dat ding snel stable maken dan. ;)

McMotion 18-04-2003 12:59

Citaat:

McLaren schreef op 18-04-2003 @ 12:39:
of hij 'm kan updaten of niet, $update bevat altijd "1" bij mij..
(had ik nl al geprobeerd)

Het werkt ook niet om 'm in or die(hierdus) te zetten :D

dan zou ik mysql_affected_rows() gebruiken

Manuzhai 18-04-2003 14:16

Citaat:

Enlightenment schreef op 18-04-2003 @ 13:23:
4.0.12 is production labeled en is stabiel genoeg, ook voor produktieomgevingen.

Meer conservatieve gebruikers blijven nog even bij 3.x, maar ik denk dat nu toch wel de tijd is om te updaten naar 4.0.x. 4.1 duurt nog wel even voordat deze production labeled wordt. Aantal mensen zitten daar wel op te wachten, want deze release brengt support voor nested subqueries en mogelijk ook OpenSSL support, waar ik zelf erg naar uitkijk.

De Debian package managers zijn natuurlijk redelijk conservatief. Ze hebben inmiddels mysql-4.0.12 in sid, maar testing moet het nog doen met 3.23.52, terwijl stable vooralsnog is blijven hangen bij 3.23.49.

Manuzhai 18-04-2003 14:17

Citaat:

Jon schreef op 18-04-2003 @ 13:28:
En niet te vergeten de verbeterde fulltext-index en vooral query cache. Voor de mensen die baat hebben bij performancewinst scheelt dat laatste enorm.
Draai jij al 4.0 dan? Daar zit toch ook al verbeterde indexing in?


Alle tijden zijn GMT +1. Het is nu 01:14.

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.