Logga in med Microsoft
Logga in eller skapa ett konto.
Hej,
Välj ett annat konto.
Du har flera konton
Välj det konto som du vill logga in med.

Sammanfattning

Den här artikeln beskrivs följande om den här versionen av snabbkorrigeringen:

  • Problem som korrigeras i snabbkorrigeringspaketet

  • Förutsättningar för installation av snabbkorrigeringspaketet

  • Om du måste starta om datorn efter installation av snabbkorrigeringspaketet

  • Om snabbkorrigeringspaketet ersätts av ett senare snabbkorrigeringspaket

  • Om du måste göra ändringar i registret

  • Filer som ingår i paketet

Symptom

Föreställ dig följande. Ett program använder Microsoft ADO.NET entitet Framework som ingår i Microsoft.NET Framework 3.5 servicepack 1 för åtkomst till en databas i Microsoft SQL Server Compact 3.5. I programmet kör du en fråga "LINQ enheter" som använder strängparametern en eller en binär parameter mot databasen. I det här fallet visas följande felmeddelande när du kör programmet:

Datatyperna ntext och bild kan inte användas i där, HAVING, GROUP BY, på eller i satser, förutom när dessa datatyper används med liknande eller är NULL predikat.

Orsak

När du använder parametrar för en fråga "LINQ enheter" i ett program, kan du inte ange grundläggande databastyper. SQL Server Compact entiteten Framework-providern försöker skapa en parameter för provider-nivå baserat på entitet-modell (av Data EDM) aspekter av den ursprungliga parametern. SQL Server Compact stöder inte datatypen nvarchar(max) eller datatypen varbinary(max) . När leverantören väljer du datatyp för en parameter av typen Edm.String data eller Edm.Binary datatyp, har därför providern att markera parametern som någon av följande datatyper som baseras på de av EDM aspekter av parametern:

  • För en strängparameter väljer datatypen nvarchar(4000) eller datatypen ntext providern.

  • För en binär parameter väljer datatypen varbinary(4000) eller datatypen bild providern.

Om leverantören anger parametern som datatypen nvarchar(4000) eller datatypen varbinary(4000) , uppstår ett fel när du försöker lägga till värden som är större än 8 000 byte. Dessutom kan uppstår providern anger parametern som datatypen ntext eller image -datatyp, ett fel om alla åtgärder för jämställdhet, gruppering operationer eller sortera operationer utförs på parametern.

Lösning

Information om snabbkorrigeringen

En snabbkorrigering är tillgänglig från Microsoft. Den här snabbkorrigeringen är emellertid avsedd att åtgärda det problem som beskrivs i denna artikel. Använd den här snabbkorrigeringen endast på datorer som har problemet som beskrivs i denna artikel. Snabbkorrigeringen kan komma att testas igen. Om du inte störs alltför mycket av detta problem rekommenderar vi att du väntar på nästa programuppdatering som innehåller den här snabbkorrigeringen.

Om snabbkorrigeringen är tillgänglig för hämtning finns ett avsnitt för "Snabbkorrigeringen är tillgänglig" överst i den här Knowledge Base-artikeln. Om den sektionen saknas, kontakta Microsofts support för att få tag på hotfixen.

Obs! Om det uppstår ytterligare problem eller krävs felsökning, kan du behöva skapa en serviceförfrågan. De vanliga supportkostnaderna gäller för övriga supportfrågor och problem som inte uppfyller kraven för den här snabbkorrigeringen. En fullständig lista över telefonnummer för Microsofts kundtjänst och Support eller skapa en serviceförfrågan finns på följande Microsoft-webbplats:

http://support.microsoft.com/contactus/?ws=supportObs! "Snabbkorrigeringen tillgänglig"-formuläret visar de språk som snabbkorrigeringen är tillgänglig. Om ditt språk inte visas beror det på att ingen snabbkorrigering är tillgänglig för språket.

Förutsättningar

Om du vill installera den här snabbkorrigeringen måste du avinstallera den tidigare installerade SQL Server Compact 3.5 Service Pack 1 om du vill installera den.msi-fil som anges med den här snabbkorrigeringen. Om du inte avinstallerar den tidigare installerade SQL Server Compact 3.5 Service Pack 1, får ett installationsfelmeddelande som säger att en senare version av SQL Server Compact är redan installerad. För mer information om SQL Server Compact 3.5 Service Pack 1 klickar du på följande artikelnummer och läser artikeln i Microsoft Knowledge Base:

955965 beskrivning av SQL Server Compact 3.5 servicepack 1

Information om omstart

Du behöver inte starta om datorn när du har installerat den här snabbkorrigeringen.

Registerinformation

Du behöver inte ändra registret.

Information om snabbkorrigeringen

Snabbkorrigeringen innehåller endast de filer som krävs för att lösa de problem som den här artikeln. Snabbkorrigeringen innehåller kanske inte alla filer som krävs för att fullständigt uppdatera en produkt till den senaste versionen.

Den engelska versionen av den här snabbkorrigeringen har de filattribut (eller senare filattribut) som visas i följande tabell. Datum och tider för dessa filer anges i UTC-tid (UTC). När du visar filinformationen konverteras den till lokal tid. Använd fliken tidszon i datum och tid på Kontrollpanelen om du vill se skillnaden mellan UTC-tid och lokal tid.

Filnamn

Filversion

Storlek

Datum

Tid

Plattform

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

Status

Microsoft har bekräftat att detta är ett problem i Microsoft-produkterna som nämns i avsnittet "Gäller".

Mer Information

När du har installerat den här snabbkorrigeringen kommer providern inte att gissa datatypen för en parameter för av EDM. Strängen datatyp eller av EDM. Binär datatyp. Frågeprocessorn väljer rätt datatyp för parametern baserat på värdet eller kolumnen till parametern som är lika eller med som parametern används.

Till exempel i följande enhet SQL-frågan väljer frågeprocessorn datatypen ntext för parametern namn innan du installerar den här snabbkorrigeringen.

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

När du har installerat den här snabbkorrigeringen markeras datatypen för kolumnen Förnamn för parametern name .

I följande exempel misslyckas frågan "LINQ entitet" dock eftersom parametern name är varken är eller tillsammans med andra värdet eller kolumnen.

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

Den här snabbkorrigeringen löser även ett känt problem som beskrivs i readme-dokumentet för SQL Server Compact 3.5. Mer information finns i avsnittet "SQL Server Compact 3.5 SP1 Runtime problem för den ADO.NET entitet Framework" på följande Microsoft-webbplats:

http://download.microsoft.com/download/2/e/c/2ec70436-aef2-4ccb-93a3-ea2f3e20f77d/ReadmeSSC35.htmDen här snabbkorrigeringen löser problem som är relaterade till felaktiga Transact-SQL-uttryck som genereras när providern konverterar skalära underfrågor gälla konstruktioner.

Obs! Korrelerade underfrågor konverteras till skalära underfrågor internt. Korrelerade underfrågor stöds inte i den här versionen. När du kör dessa frågor, visas följande felmeddelande:

Ett fel uppstod vid körning av kommandodefinition. Se mer information i det interna undantaget.

Det interna undantaget innehåller följande meddelande:

Det uppstod ett fel vid parsning av frågan. [.., Token i fel = AS]

Anledningen är att ADO.NET entitet Framework tolkar indata frågan som en fråga som har kopplingstyp KORSA tillämpas eller kopplingstyp yttre tillämpas. Om den högra sidan av sammanfogningsvillkoret returnerar ett skalärvärde, omvandlas kopplingen till en skalär underfråga. ADO.NET entitet Framework-provider för SQL Server Compact har konvertera den skalära underfrågan till en motsvarande fråga som har typen gäller yttre koppling som stöds av SQL Server Compact. Men i den här versionen görs konverteringen inte på rätt sätt. Exempelvis uppstår ett fel för följande fråga i den här versionen.

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());
}
}

Mer information om namngivning schemat för uppdateringar för SQL Server klickar du på följande artikelnummer och läser artikeln i Microsoft Knowledge Base:

822499 nytt namnge schema för Microsoft SQL Server-programvara för uppdateringspaket

För mer information om terminologin för programuppdateringar klickar du på följande artikelnummer och läser artikeln i Microsoft Knowledge Base:

824684 beskrivning av standardterminologin som används för att beskriva Microsoft-programuppdateringar

Behöver du mer hjälp?

Vill du ha fler alternativ?

Utforska prenumerationsförmåner, bläddra bland utbildningskurser, lär dig hur du skyddar din enhet med mera.

Communities hjälper dig att ställa och svara på frågor, ge feedback och få råd från experter med rika kunskaper.

Hade du nytta av den här informationen?

Hur nöjd är du med språkkvaliteten?
Vad påverkade din upplevelse?
Genom att trycka på skicka, kommer din feedback att användas för att förbättra Microsofts produkter och tjänster. IT-administratören kan samla in denna data. Sekretesspolicy.

Tack för din feedback!

×