Iniciar sesión con Microsoft
Iniciar sesión o crear una cuenta
Hola:
Seleccione una cuenta diferente.
Tiene varias cuentas
Elija la cuenta con la que desea iniciar sesión.

Resumen

Este artículo describe lo siguiente acerca de esta versión de hotfix:

  • Los problemas corregidos por el paquete de hotfix

  • Los requisitos previos para instalar el paquete de hotfix

  • Si debe reiniciar el equipo después de instalar el paquete de hotfix

  • Si el paquete de revisiones queda reemplazado por otro paquete de hotfix

  • Si debe hacer algún cambio el registro

  • Los archivos que están contenidos en el paquete de hotfix

Síntomas

Considere el siguiente escenario. Una aplicación utiliza Microsoft ADO.NET Entity Framework que se incluye en Microsoft.NET Framework 3.5 Service Pack 1 para tener acceso a una base de datos de Microsoft SQL Server Compact 3.5. En la aplicación, ejecutar una consulta "LINQ to Entities" que utiliza un parámetro de cadena o un parámetro binario contra la base de datos. En este escenario, recibirá el siguiente mensaje de error al ejecutar la aplicación:

Los tipos de datos ntext e image no pueden utilizarse en WHERE, HAVING, GROUP BY, en o en cláusulas, excepto cuando se utilizan estos tipos de datos con similares predicados o IS NULL.

Causa

Al utilizar parámetros para una consulta "LINQ to Entities" en una aplicación, no puede especificar los tipos de base de datos base. El proveedor de SQL Server Compact Entity Framework intenta crear un parámetro de nivel de proveedor basándose en los aspectos de Entity Data Model (EDM) del parámetro original. SQL Server Compact no admite el tipo de datos nvarchar (max) o el tipo de datos varbinary (max) . Por lo tanto, cuando el proveedor selecciona el tipo de datos para un parámetro de tipo de datos Edm.String o el Edm.Binary del tipo de datos, el proveedor tiene que marca el parámetro como uno de los siguientes tipos de datos basados en los aspectos EDM del parámetro:

  • Para un parámetro de cadena, el proveedor selecciona el tipo de datos nvarchar (4000) o el tipo de datos ntext .

  • Para un parámetro binario, el proveedor selecciona el tipo de datos varbinary(4000) o el tipo de datos de imagen .

Si el proveedor marca el parámetro como el tipo de datos nvarchar (4000) o como el tipo de datos de varbinary(4000) , se produce un error cuando se intenta insertar valores mayores de 8.000 bytes. Además, si el proveedor marca el parámetro como el tipo de datos ntext o el tipo de datos image , se produce un error si se han realizado operaciones de igualdad, operaciones de agrupación ni las operaciones de ordenación en el parámetro.

Solución

Información de la revisión

Existe un hotfix disponible desde Microsoft. Sin embargo, esta revisión se diseñó para corregir únicamente el problema que se describe en este artículo. Aplique esta revisión solamente a sistemas que experimenten el problema descripto en este artículo. Esta revisión podría ser sometida a comprobaciones adicionales. Por lo tanto, si no se ve muy afectado por este problema, recomendamos que espere a la próxima actualización de software que contenga este hotfix.

Si la revisión está disponible para su descarga, hay una sección de "Descarga de revisión disponible" en la parte superior de este artículo de Knowledge Base. Si esta sección no aparece, póngase en contacto con el servicio al cliente de Microsoft y soporte técnico para obtener la revisión.

Nota: Si se producen problemas adicionales o si se requiere cualquier otra solución, será necesario crear una solicitud de revisión independiente. Los costos habituales de soporte se aplicarán a las preguntas de soporte técnico adicionales y problemas que no califican para esta revisión específica. Para obtener una lista completa de los números de teléfono de servicio al cliente de Microsoft o para crear una solicitud de servicio independiente, visite el siguiente sitio Web de Microsoft:

http://support.microsoft.com/contactus/?ws=supportNota: El formulario de "Descarga de Hotfix disponible" muestra los idiomas para los que el Hotfix está disponible. Si no ve su idioma, es porque no hay una revisión para ese idioma.

Requisitos previos

Para aplicar este hotfix, debe desinstalar el previamente instalado SQL Server Compact 3.5 Service Pack 1 para instalar el archivo .msi que se proporciona con esta revisión. Si no desinstala el previamente instalado SQL Server Compact 3.5 Service Pack 1, recibirá un mensaje de error de instalación que indica que ya está instalada una versión posterior de SQL Server Compact. Para obtener más información acerca de SQL Server Compact 3.5 Service Pack 1, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

Descripción de 955965 de SQL Server Compact 3.5 Service Pack 1

Información de reinicio

No es necesario que reinicie el equipo después de aplicar este hotfix.

Información del registro

No es necesario cambiar el registro.

Información de archivo de hotfix

Este hotfix contiene sólo los archivos necesarios para corregir los problemas que se enumera en este artículo. Este hotfix no puede contener todos los archivos que debe tener para actualizar plenamente un producto a la compilación más reciente.

La versión en inglés de esta revisión tiene los atributos de archivo (o atributos del archivo más reciente) mostrados en la tabla siguiente. Las fechas y horas de estos archivos se muestran en la hora Universal coordinada (UTC). Al ver la información del archivo, se convierte en hora local. Para encontrar la diferencia entre la hora UTC y la hora local, utilice la ficha Zona horaria en el elemento de Fecha y hora del Panel de control.

Nombre del archivo

Versión del archivo

Tamaño de archivo

Fecha

Hora

Plataforma

System.data.sqlserverce.entity.dll

3.5.5692.1

230,480

24-Sep-2008

06:46

x86/x64/IA-64

System.data.sqlserverce.dll

3.5.5692.1

271,440

24-Sep-2008

06:46

x86/x64

Policy.3.5.system.data.sqlserverce.dll

3.5.5692.1

13,392

24-Sep-2008

06:46

x86/x64

Policy.3.5.system.data.sqlserverce.entity.dll

3.5.5692.1

13,392

24-Sep-2008

06:46

x86/x64

Sqlceca35.dll

3.5.5692.1

343,104

24-Sep-2008

08:07

x86

Sqlcecompact35.dll

3.5.5692.1

84,544

24-Sep-2008

08:07

x86

Sqlceer35en.dll

3.5.5692.1

148,032

24-Sep-2008

08:07

x86

Sqlceme35.dll

3.5.5692.1

65,088

24-Sep-2008

08:07

x86

Sqlceoledb35.dll

3.5.5692.1

172,608

24-Sep-2008

08:07

x86

Sqlceqp35.dll

3.5.5692.1

644,160

24-Sep-2008

08:07

x86

Sqlcese35.dll

3.5.5692.1

348,224

24-Sep-2008

08:07

x86

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft que se enumeran en la sección "Aplicable a".

Más información

Después de aplicar este hotfix, el proveedor no adivinar el tipo de datos para un parámetro de la EDM. Cadena tipo de datos o de la EDM. Binario tipo de datos. El procesador de consultas selecciona el tipo de datos correcto para el parámetro basándose en el valor o en la columna que se equipara el parámetro o con la que se utiliza el parámetro.

Por ejemplo, en la siguiente consulta de Entity SQL, el procesador de consultas selecciona el tipo de datos ntext para el parámetro de nombre antes de aplicar este hotfix.

String name = "XYZ";var q = from e in nwind.Employees
where e.First_Name = name
select e;

Después de aplicar este hotfix, se selecciona el tipo de datos de la columna First_Name para el parámetro de nombre .

Sin embargo, en el ejemplo siguiente, la consulta "LINQ a entidad" produce un error porque el parámetro de nombre no se iguala a ni se utiliza con cualquier otro valor o columna.

String name = "XYZ";var q = from e in nwind.Employees
select name;

Este hotfix también resuelve un problema conocido que se describe en el documento Léame para SQL Server Compact 3.5. Para obtener más información, consulte la sección "SQL Server Compact 3.5 SP1 Runtime problemas para el ADO.NET Entity Framework" del siguiente sitio Web de Microsoft:

http://download.microsoft.com/download/2/e/c/2ec70436-aef2-4ccb-93a3-ea2f3e20f77d/ReadmeSSC35.htmEste hotfix resuelve el problema que está relacionado con incorrectas instrucciones de Transact-SQL que se generaban cuando el proveedor convierte las subconsultas escalares aplicar construcciones.

Nota: Las subconsultas correlacionadas se convierten internamente en subconsultas escalares. Las subconsultas correlacionadas no se admiten en esta versión. Al ejecutar estas consultas, recibirá el siguiente mensaje de error:

Se produjo un error mientras se ejecutaba la definición de comando. Vea la excepción interna para obtener más detalles.

La excepción interna contiene el mensaje siguiente:

Se ha producido un error al analizar la consulta. [.., Símbolo (token) error = AS]

La razón es que ADO.NET Entity Framework interpreta la consulta de entrada como una consulta que tiene el tipo de combinación CROSS APPLY o el tipo de combinación OUTER APPLY. Si el lado derecho de la condición de combinación devuelve un valor escalar, la combinación se convierte en una subconsulta escalar. El proveedor de ADO.NET Entity Framework para SQL Server Compact debe convertir esa subconsulta escalar en una consulta equivalente que tiene el tipo de combinación OUTER APPLY, que es compatible con SQL Server Compact. Sin embargo, en esta versión, esta conversión no se realiza correctamente. Por ejemplo, se produce un error de la consulta siguiente en esta versión.

C# Sample Application:using (NorthwindEntities nwEntities = new NorthwindEntities())
{
var orders = nwEntities.Employees
.Select(employee => employee.Orders.Max(order => order.Order_ID));
foreach (var order in orders)
{
Console.WriteLine(order.ToString());
}
}

Para obtener más información acerca del esquema de nomenclatura para las actualizaciones de SQL Server, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

Paquetes de actualización de 822499 nuevo esquema de nomenclatura para software de Microsoft SQL Server

Para obtener más información acerca de la terminología de la actualización de software, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

824684 descripción de la terminología estándar que se utiliza para describir las actualizaciones de software de Microsoft

¿Necesita más ayuda?

¿Quiere más opciones?

Explore las ventajas de las suscripciones, examine los cursos de aprendizaje, aprenda a proteger su dispositivo y mucho más.

Las comunidades le ayudan a formular y responder preguntas, enviar comentarios y leer a expertos con conocimientos extensos.

¿Le ha sido útil esta información?

¿Cuál es tu grado de satisfacción con la calidad del lenguaje?
¿Qué ha afectado a su experiencia?
Si presiona Enviar, sus comentarios se usarán para mejorar los productos y servicios de Microsoft. El administrador de TI podrá recopilar estos datos. Declaración de privacidad.

¡Gracias por sus comentarios!

×