Oprava: Vydělením hodnotou negativní Decimal nebo numeric číslo výsledků v - 0 0

Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.

285544
Tento článek byl archivován. Je nabízen v takovém stavu, v jakém je, a nebude již nadále aktualizován.
Chyba #: 203148 (SHILOH_bugs)
Příznaky
Pokud používáte vydělte 0 negativ desetinný nebo číselný datové typy číslo, záporné 0 (- 0) je vrácena.
Řešení
Tento problém vyřešíte pomocí nejnovější aktualizace service pack pro SQL Server 2000. Další informace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
290211INF: Jak získat nejnovější aktualizaci Service Pack pro SQL Server 2000
Jak potíže obejít
Kontrola 0 před provádět divize a vyhnout rozdělení, pokud je zapojen 0; například:
declare @v1 dec(10, 2), @v2 dec(2, 1), @v3 dec (10,2) -- @v3 is the result of @v1/@v2select @v1 = 0.0, @v2 = -1.0if @v1 = 0     select @v3 = 0.0else   select @v3 = @v1 / @v2				
Prohlášení
Společnost Microsoft potvrzuje, že se jedná o problém v SQL Server 2000. Tento problém byl poprvé opraven v SQL Server 2000 Service Pack 1.
Další informace
SQL Server zvažte vypočítaná hodnota (- 0) rovna 0, takže porovnání vypočítaná hodnota (- 0) s 0 nezdaří. Například následující kód
   declare @v1 dec(10, 2), @v2 dec(2, 1)   select @v1 = 0.0, @v2 = -1.0   if @v1 / @v2 = 0        print 'equals zero'   else      print 'not equal zero'				
poskytuje následující výsledek:
   not equal zero 				
Další informace o souvisejících chyb opravených aktualizací SQL Server 7.0 klepněte na článek číslo článku databáze Microsoft Knowledge Base:
275608Oprava: Matematických operací na Decimal nebo numeric s záporná čísla sloupce může vrátit neočekávané výsledky

Upozornění: Tento článek byl přeložen automaticky

Vlastnosti

ID článku: 285544 - Poslední kontrola: 01/16/2015 21:25:12 - Revize: 3.2

  • Microsoft SQL Server 2000 Standard Edition
  • kbnosurvey kbarchive kbmt kbbug kbfix kbsqlserv2000sp1fix KB285544 KbMtcs
Váš názor