Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Typ danych - DECIMAL
martela
post 12.08.2013, 12:55:05
Post #1





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.08.2013

Ostrzeżenie: (0%)
-----


Witam ponownie, mam kolejny problem, dla niektórych być może banalny dla mnie jednak nie, bo trochę z tym siedzę.
Wygląda to tak, zastosowałem typ danych DECIMAL(6,2) oraz (5,2) (dla kolumn:pensja, stawka_tyg, stawka_dzienna) i po wpisaniu danych w tych kolumnach na końcu wstawiłem przecinek, lecz liczba zamiast wyglądać: 2523,45 wyglądała tak: 9999,99 tak samo jak wstawię kropkę. Zna ktoś rozwiązanie dla tego problemu ? Jestem nowy w tej grze więc proszę o wyrozumiałość.

kod:
Kod
CREATE TABLE wynagrodzenie(
    pensja decimal( 6, 2 ),
    stawka_tyg decimal( 5, 2 ),
    stawka_dzienna decimal( 5, 2 )
);
INSERT INTO wynagrodzenie (pensja, stawka_tyg, stawka_dzienna) VALUES
('205689.' , '51422.' , '10284.');

INSERT INTO wynagrodzenie (pensja, stawka_tyg, stawka_dzienna) VALUES
('164322.' , '61080.' , '12016.');

INSERT INTO wynagrodzenie (pensja, stawka_tyg, stawka_dzienna) VALUES
('360000.' , '90000.' , '16000.');

INSERT INTO wynagrodzenie (pensja, stawka_tyg, stawka_dzienna) VALUES
('572412.' , '93103.' , '14620.');

INSERT INTO wynagrodzenie (pensja, stawka_tyg, stawka_dzienna) VALUES
('185456.' , '561364.' , '10572.');

INSERT INTO wynagrodzenie (Pensja, stawka_tyg, stawka_dzienna) VALUES
('290924.' , '57731.' , '16546.');

INSERT INTO wynagrodzenie (pensja, stawka_tyg, stawka_dzienna) VALUES
('424556.' , '80802.' , '20227.');

INSERT INTO wynagrodzenie (pensja, stawka_tyg, stawka_dzienna) VALUES
('436667.' , '99166.' , '21833.');

INSERT INTO wynagrodzenie (pensja, stawka_tyg, stawka_dzienna) VALUES
('235432.' , '58858.' , '11771.');

INSERT INTO wynagrodzenie (pensja, stawka_tyg, stawka_dzienna) VALUES
('234598.' , '58649.' , '11729.');


Ten post edytował martela 12.08.2013, 12:57:23
Go to the top of the page
+Quote Post
Crozin
post 12.08.2013, 13:23:00
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Jeżeli typ to DECIMAL(5, 2) to maksymalną wartością jaką może on pomieścić jest 999,99, nie 99999,99.
Go to the top of the page
+Quote Post
martela
post 13.08.2013, 08:21:12
Post #3





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.08.2013

Ostrzeżenie: (0%)
-----


No tak ale dla DECIMAL (5,2) wyskakuje 999,99 a dla DECIMAL (6,2) wyskakuje 9999,99, co zrobić aby wyskakiwała liczba w nawiasie ?
Go to the top of the page
+Quote Post
nospor
post 13.08.2013, 08:26:04
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
lecz liczba zamiast wyglądać: 2523,45 wyglądała tak: 9999,99
yyy...eeee... mowisz ze wstawiasz 2523,45 a ja jak wol w twoim kodzie widze ze wstawiasz liczby typu:
234598.
Naprawde nie odrozniasz jednej od drugiej??

Na dodatek liczba to liczba a nie tekst - nie bierze sie tego w apostrofy.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
martela
post 13.08.2013, 08:32:51
Post #5





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.08.2013

Ostrzeżenie: (0%)
-----


No bo takie wstawiam w kodzie, a po wykonaniu powinna wyglądać tak 2523,45 a nie tak 9999,99 dobrze pisze ?
Go to the top of the page
+Quote Post
nospor
post 13.08.2013, 08:53:48
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Nie, zle piszesz....

2523,45
252345.
Zrozum - to są dwie rozne liczby. PIerwsza jest prawidlowa, druga jest poza zakresem stad masz 9999.99. Tu naprawde nie ma zadnej filozofii :/


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
martela
post 13.08.2013, 09:00:36
Post #7





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.08.2013

Ostrzeżenie: (0%)
-----


Czyli co, to ma wyglądać tak:
Kod
INSERT INTO wynagrodzenie ( pensja , stawka_tyg , stawka_dzienna  ) VALUES
(2354,32 , 588,58 , 117,71);
?

bo nie kminie. ;o
Go to the top of the page
+Quote Post
nospor
post 13.08.2013, 09:07:20
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




zamien przecinek na kropke


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
martela
post 13.08.2013, 09:13:57
Post #9





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.08.2013

Ostrzeżenie: (0%)
-----


Dziękuje bardzo za pomoc, tabela zrobiona. smile.gif
Go to the top of the page
+Quote Post
Crozin
post 13.08.2013, 09:26:09
Post #10





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Od kiedy to przecinek robi za separator dziesiętny w SQL-u?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 05:42