Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL]Zaokrąglanie liczb w bazie
Forum PHP.pl > Forum > Przedszkole
miras
Witam, mam w bazie pewną kolumnę, w której mam liczby "2344.13123123523224" i chciałbym zrobić tak, żeby po dodaniu takiej liczby do bazy automatycznie mi ją zaokrągliło po stronie bazy danych, nie po stronie php, jest taka możliwość?

Dzięki z góry!
miras
  1. TRUNCATE(1.223,2);


ok, tylko jak to teraz zastosować ?
mortus
TRUNCATE() ucina, natomiast do zaokrąglania służy ROUND(). Użyj TRIGGERA.
miras
no dobrze, ale w tej dokumentacji nie ma nic o tym, jak tego użyć w istniejącej już tabelce... coś ala ALTER table itp..
mortus
Nie no TRIGGER będzie działać w przyszłości przy INSERT-ach. Natomiast istniejące dane możesz zmienić zwykłym UPDATE-em
  1. UPDATE TABLE `nazwa_tabeli` SET `nazwa_kolumny` = ROUND(`nazwa_kolumny`, 2)
miras
no właśnie.. a ja potrzebuję czegoś tylko do bazy danych, a przy insertach już nic grzebać nie mogę..
mortus
No to przecież podpowiedziałem Ci rozwiązanie:
aktualizacja obecnych rekordów - UPDATE
kolejne INSERT-y - TRIGGER

TRIGGER to "działanie" wykonywane przez silnik baz danych w określonym przez użytkownika momencie, np. przed lub po INSERT, przed lub po UPDATE, itp. Taki TRIGGER zadziała niejawnie w momencie, gdy użytkownik/skrypt będzie wstawiał dane do tabeli i po prostu przed wstawieniem danych zaokrągli wartość dla odpowiedniej kolumny.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.