REVISIÓN: Dividiendo 0 un resultados de número decimal negativo o numérico en - 0

IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.

Haga clic aquí para ver el artículo original (en inglés): 285544
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Error nº: 203148 (SHILOH_bugs)
Síntomas
Si utiliza tipos de datos decimal o numeric, dividir 0 por un negativo número, un 0 negativo (- 0) se devuelve.
Solución
Para resolver este problema, consiga el Service Pack más reciente para SQL Server 2000. Para obtener información adicional, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
290211INF: Cómo obtener el Service Pack más reciente de SQL Server 2000
Solución
Busca 0 antes de realizar la división y evitar la división si está involucrado 0; por ejemplo:
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				
Estado
Microsoft ha confirmado que este es un problema de SQL Server 2000. Este problema se corrigió por primera vez en SQL Server 2000 Service Pack 1.
Más información
SQL Server no tiene en cuenta el valor calculado (- 0) es igual a 0, por lo tanto, la comparación del valor calculado (- 0) con 0 se produce un error. Por ejemplo, el código siguiente
   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'				
ofrece el siguiente resultado:
   not equal zero 				
Para obtener información adicional acerca de errores relacionados en SQL Server 7.0, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
275608REVISIÓN: Operaciones matemáticas en numérico o decimal columnas con números negativos pueden devolver resultados inesperados

Advertencia: este artículo se tradujo automáticamente

Propiedades

Id. de artículo: 285544 - Última revisión: 01/16/2015 21:25:15 - Revisión: 3.2

Microsoft SQL Server 2000 Standard Edition

  • kbnosurvey kbarchive kbmt kbbug kbfix kbsqlserv2000sp1fix KB285544 KbMtes
Comentarios