REVISIÓN: Error ODBC cuando usa funciones escalares para insertar la marca de hora con un valor fraccional

Seleccione idioma Seleccione idioma
Id. de artículo: 259287 - Ver los productos a los que se aplica este artículo
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Expandir todo | Contraer todo

Síntomas

Al utilizar funciones escalares ODBC con el proveedor OLE DB de Microsoft Jet 4.0 para insertar una marca de hora que contiene un valor fraccionario (milisegundos), el controlador ODBC de Jet (Odbcjt32.dll) puede devolver el mensaje de error siguientes:
Devolución: SQL_ERROR =-1
[Microsoft][Controlador ODBC para Microsoft Access] Error reservado (|); no hay ningún mensaje para este error.
Nota El controlador ODBC de Jet 3.51 permite la instrucción se realice correctamente y devuelve SQL_SUCCESS_WITH_INFO y un mensaje "Datos truncaron (timestamp)".

Causa

El controlador OLE DB de Jet no admite el almacenamiento de valores de milisegundo.

Solución

Para resolver este problema, instale el service pack más reciente de Microsoft Jet 4.0. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
239114Cómo obtener el Service Pack más reciente para el motor de base de datos Microsoft Jet 4.0

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados al principio de este artículo. Este problema se ha corregido en Service Pack 6 (SP6) de Jet 4.0.

Más información

Funciones escalares son inherentes a ODBC y se utilizan cuando necesita sintaxis o funcionalidad que no puede ser específico del controlador. ODBC proporciona un gran número de funciones escalares para operaciones como la conversión de cadenas, operaciones de fecha y hora, funciones matemáticas y así sucesivamente.

En este caso, se genera el error cuando utiliza la sintaxis ODBC escalar para insertar una marca de hora que contiene un valor fraccionario (milisegundos). Por ejemplo:
Insert into Table1 values (10, {ts '1999-09-02 12:12:12.121000'})
				
Si utiliza la función SQLBindParameter en lugar de la sintaxis escalar, la instrucción se realiza correctamente y devuelve SQL_SUCCESS_WITH_INFO y un mensaje de truncamiento fraccionario.

Propiedades

Id. de artículo: 259287 - Última revisión: domingo, 23 de febrero de 2014 - Versión: 3.6
La información de este artículo se refiere a:
  • Microsoft Data Access Components 2.1
  • Microsoft Data Access Components 2.1 Service Pack 2
  • Microsoft Data Access Components 2.1 Service Pack 1
  • Microsoft Data Access Components 2.1 Service Pack 2
  • Microsoft Data Access Components 2.5
Palabras clave: 
kbnosurvey kbarchive kbmt kbhotfixserver kbbug kbfix kbjet kbmdac210sp2fix kbmdac250fix kbqfe KB259287 KbMtes
Traducción automática
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): 259287

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com