![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 31.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Proszę o pomoc. Próbowałem juz kilkoma sposobami i cały czas mi nie wychodzi. A mianowicie mam taką procedurę:
Probując zmodyfikować jakiś rekord np:
otrzymuję komunikat: Msg 8114, Level 16, State 1, Procedure AktualizujTowar, Line 0 Error converting data type numeric to decimal. Nie wiem jak sobie z tym poradzić. Fukncja CONVERT() nie pomaga. Z góry dzieki. |
|
|
![]() ![]()
Post
#2
|
|
Administrator serwera Grupa: Developerzy Postów: 521 Pomógł: 13 Dołączył: 2.04.2004 Skąd: 52°24' N 16°56' E Ostrzeżenie: (0%) ![]() ![]() |
Odpowiedź znajdziesz tutaj. Zerknij na tabelę konwersji i wykorzystaj poradę pod tabelą (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) .
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 31.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
To już wcześniej widziałem i albo cos do końca nie rozumiem albo już sam nie wiem.
Zmieniłem Procedurę na taką:
i jak daję takie wywołanie:
to jest dobrze. Natomiast, gdy zamienię na to:
to pojawia sie komunikat:
co jest nie tak? Ten post edytował neon85 1.04.2009, 07:39:20 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 171 Pomógł: 18 Dołączył: 13.03.2009 Skąd: lublin Ostrzeżenie: (0%) ![]() ![]() |
To już wcześniej widziałem i albo cos do końca nie rozumiem albo już sam nie wiem. Zmieniłem Procedurę na taką:
i jak daję takie wywołanie:
to jest dobrze. Natomiast, gdy zamienię na to:
to pojawia sie komunikat:
co jest nie tak? jaki typ danych masz w tabeli Towary dla pola Waga? jest coś takiego jak convert(float,@liczba) |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 31.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 171 Pomógł: 18 Dołączył: 13.03.2009 Skąd: lublin Ostrzeżenie: (0%) ![]() ![]() |
Mam tak jak w pierwszym poście w deklaracjach czyli decimal(3,3). convert nie pomaga:/ pomoże za to zmiana typu z decimal (3,3) an decimal(4,3) lub decimal(3,2) nie wiem dlaczego ale jak tak zmienisz to ma ochotę działać przykład: select convert(decimal(4,3),cast(3.303 as float)) |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 31.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
pomoże za to zmiana typu z decimal (3,3) an decimal(4,3) lub decimal(3,2) nie wiem dlaczego ale jak tak zmienisz to ma ochotę działać przykład: select convert(decimal(4,3),cast(3.303 as float)) Na to wygląda, że pierwsza wartość określa całkowitą długość liczby, a druga tylko jej część dziesiętną, a ja cały czas myślałem, że pierwsza ilość znaków przed przecinkiem a druga za nim. W każdym bądź razie wielkie dzięki, gdyż DZIAŁA:) Pozdrawiam |
|
|
![]() ![]() |
![]() |
Aktualny czas: 16.09.2025 - 21:17 |