Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 10 odgovora
  • 3.155 pregleda

Najnovija ↓

Da li može brojac u SQL REPLACE? 25.11.2018. u 12:01 · pre 96 meseci #1
Povremeno imam potrebu da ispravim neku opetovanu (obično pravopisnu) grešku u nekom SQL polju.
Koristim naredbu tipa:

Code:
$unos="UPDATE `$tabela` SET `$polje` = replace(`$polje`,'$nadji', '$zamenisa')";


Bio bi mi od koristi pokazivač broja izmena, ali ne vidim da ovaj SQL-ov "replace" ima $count, kao, na primer, str_replace(find,replace,string,count) ili preg_replace.
Pitanje: el stvarno nema, ili ima ali mi sluhisti ne možemo da ga nađemo bez pomoći gurua sa ES-a?
Re: Da li može brojac u SQL REPLACE? 25.11.2018. u 15:44 · pre 96 meseci #2
Nisam siguran sta je potrebno, ali ako je pitanje "kako da vidim koliko redova je zamenjeno", sama SQL komanda ce to uredno da vrati. Tipa
Code:
20 rows affected

s'tim da MySQL za affected rows ne broji one gde je bila ista vrednost.

Ako treba iz stored procedure, ima affected rows .
Potpis
Please do not feed the Trolls!

Blasphemy? How can I blaspheme? I'm a god!'
Re: Da li može brojac u SQL REPLACE? 25.11.2018. u 17:51 · pre 96 meseci #3
Tačnije, može li nešto da se uradi sa ovim primerom, pa da mi se dojavi koliko je narečenih izmena izvršeno:

Code:
$unos="UPDATE `$tabela` SET `$polje` = replace(`$polje`,'$nadji', '$zamenisa')";


Napominjem da sam programer sluhista, a takvima mora sve da se dadne okrunjeno, inače slaba vajda! :)
Re: Da li može brojac u SQL REPLACE? 25.11.2018. u 19:02 · pre 96 meseci #4
Pa kad to posaljes na izvrsavanje, trebalo bi da kao odgovor dobijes bas ono sto sam gore napisao. Broj affected rows.
Potpis
Please do not feed the Trolls!

Blasphemy? How can I blaspheme? I'm a god!'
Re: Da li može brojac u SQL REPLACE? 25.11.2018. u 22:55 · pre 96 meseci #8
E, hvala ti onoliko.
Zadatak rešen evo ovako:

Code:

$unos="UPDATE `$tabela` SET `$polje` = replace(`$polje`,'$nadji', '$zamenisa')";
$uspelo=mysql_query($unos, $link);
if(! $uspelo )
{
  die('Zamena neuspela! : ' . mysql_error());
} else {
  echo "Izmene uspesne!\n";
  echo "Broj izmena " . mysql_affected_rows($link);
}

Re: Da li može brojac u SQL REPLACE? 26.11.2018. u 10:34 · pre 96 meseci #9
mysql_* funkcije za rad sa mysql-om su pravljene za mysql 3.0 i rade ok
zavrsno sa 4.1, svi mysql serveri posle 4.1 ne rade ok sa mysql_
funkcijama i neophodno je da predjas na neki noviji sistem ... mysqli_*
ti je najlaksi, skoro 1:1 mozes da predjes na njega
Potpis
arhimed
http://www.mysql.rs/ | http://elco.crsndoo.com/
Re: Da li može brojac u SQL REPLACE? 26.11.2018. u 11:34 · pre 96 meseci #10
PRVO: Kad napišem mysqli_* dobijem poruku o grešci:
Warning: mysqli_affected_rows() expects parameter 1 to be mysqli, resource given in ...
Sa mysql_* sve radi bez greške.

DRUGO: Kako da saznam koja mi je verzija MySQL? Evo šta nalazim na cPanelu servera:
• Server: Localhost via UNIX socket
• Server type: MySQL
• Server connection: SSL is not being used
• Server version: 5.6.41 - MySQL Community Server (GPL)
• Protocol version: 10
• User: paund@localhost
• Server charset: UTF-8 Unicode (utf8)
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme