Applies ToMicrosoft SQL Server Compact 3.5

Ringkasan

Artikel ini menjelaskan berikut ini tentang rilis perbaikan terbaru ini:

  • Masalah yang diperbaiki oleh paket hotfix

  • Prasyarat untuk menginstal paket hotfix

  • Apakah Anda harus me-restart komputer setelah Anda menginstal paket hotfix

  • Apakah paket hotfix digantikan oleh paket hotfix lainnya

  • Apakah Anda harus membuat perubahan registri

  • Berkas yang disertakan dalam paket hotfix

Gejala

Pertimbangkan skenario berikut ini. Aplikasi menggunakan kerangka Entity ADO.NET Microsoft yang disertakan dalam Microsoft .NET Framework 3.5 Paket Layanan 1 untuk mengakses database Microsoft SQL Server Compact 3.5. Dalam aplikasi, Anda menjalankan kueri "LINQ untuk entitas" yang menggunakan string parameter atau parameter biner terhadap database. Dalam skenario ini, Anda menerima pesan galat ketika Anda menjalankan aplikasi:

Jenis data ntext dan gambar tidak dapat digunakan di mana, HAVING, grup, pada, atau dalam klausa, kecuali jika jenis data ini digunakan dengan seperti atau NULL predikat.

Penyebab

Ketika Anda menggunakan parameter untuk permintaan "LINQ untuk entitas" pada aplikasi, Anda tidak dapat menentukan jenis basis data. Penyedia SQL Server Compact kerangka kerja entitas berusaha membuat parameter penyedia tingkat berdasarkan aspek entitas Data Model (EDM) parameter asli. SQL Server Compact tidak mendukung jenis data nvarchar(max) atau jenis data varbinary(max) . Oleh karena itu, ketika penyedia memilih jenis data untuk parameter jenis data Edm.String atau jenis data Edm.Binary , penyedia memiliki untuk menandai parameter sebagai salah satu dari jenis data di bawah ini berdasarkan aspek EDM parameter:

  • Untuk string parameter, penyedia memilih jenis data nvarchar(4000) atau jenis data ntext .

  • Untuk parameter biner, penyedia memilih jenis data varbinary(4000) atau jenis data gambar .

Jika penyedia menandai parameter sebagai jenis data nvarchar(4000) atau jenis data varbinary(4000) , terjadi galat saat Anda mencoba memasukkan nilai yang lebih dari 8000 byte. Selain itu, jika penyedia menandai parameter sebagai jenis data ntext atau jenis data gambar , terjadi galat jika persamaan operasi, operasi pengelompokan atau operasi penyortiran sedang dijalankan pada parameter.

Pemecahan masalah

Informasi Hotfix

Tersedia hotfix yang didukung dari Microsoft. Namun, hotfix ini ditujukan untuk memperbaiki masalah yang dijelaskan di artikel ini. Hotfix ini hanya berlaku untuk sistem yang mengalami masalah yang dijelaskan di artikel ini. Hotfix ini mungkin akan menerima pengujian tambahan. Oleh karena itu, jika Anda tidak terlalu dipengaruhi oleh masalah ini, kami sarankan Anda menunggu pemutakhiran perangkat lunak berikutnya yang berisi perbaikan terbaru ini.Apabila hotfix tersedia untuk diunduh, ada bagian "Tersedia unduhan Hotfix" di bagian atas artikel Pangkalan Pengetahuan ini. Jika bagian ini tidak muncul, hubungi layanan pelanggan Microsoft dan dukungan untuk mendapatkan hotfix.Catatan Jika terjadi masalah tambahan atau apabila pemecahan masalah apa pun diperlukan, Anda mungkin harus membuat permintaan layanan secara terpisah. Biaya dukungan biasa akan berlaku untuk dukungan tambahan pertanyaan dan masalah yang tidak memenuhi syarat untuk hotfix ini. Untuk daftar lengkap nomor telepon layanan pelanggan Microsoft dan dukungan atau untuk membuat permintaan layanan terpisah, kunjungi situs Web Microsoft berikut ini:

http://support.microsoft.com/contactus/?ws=supportCatatan Formulir "Tersedia Unduhan Hotfix" menampilkan bahasa hotfix tersedia. Jika Anda tidak melihat bahasa Anda, hal ini karena hotfix tidak tersedia untuk bahasa tersebut.

Prasyarat

Untuk menerapkan hotfix ini, Anda harus membongkar diinstal sebelumnya SQL Server Compact 3.5 Paket Layanan 1 untuk menginstal file .msi yang disediakan dengan perbaikan terbaru ini. Jika Anda tidak dapat dibongkar diinstal sebelumnya SQL Server Compact 3.5 Paket Layanan 1, Anda menerima pesan galat penginstalan yang menyatakan bahwa versi SQL Server Compact sudah diinstal. Untuk informasi lebih lanjut tentang SQL Server Compact 3.5 Paket Layanan 1, klik nomor artikel berikut ini untuk melihat artikel di Pangkalan Pengetahuan Microsoft:

955965 Deskripsi SQL Server Compact 3.5 Paket Layanan 1

Informasi menghidupkan ulang

Anda tidak harus menghidupkan ulang komputer setelah menerapkan hotfix ini.

Informasi registri

Anda tidak harus mengubah registri.

Informasi berkas perbaikan terbaru

Perbaikan terbaru ini berisi hanya file yang diperlukan untuk memperbaiki masalah yang artikel ini berisi daftar. Hotfix ini mungkin tidak berisi semua berkas yang harus Anda miliki untuk memperbarui produk ke edisi terbaru.Versi bahasa Inggris dari hotfix ini memiliki atribut berkas (atau atribut berkas yang lebih baru) yang tercantum dalam tabel berikut. Tanggal dan waktu untuk berkas-berkas tersebut dicantumkan dalam Waktu Universal Terkoordinasi (UTC). Ketika Anda melihat informasi berkas, akan diubah ke waktu lokal. Untuk menemukan perbedaan antara waktu UTC dan waktu lokal, gunakan tab Zona Waktu di item Tanggal dan Waktu di Panel Kontrol.

Nama file

Versi file

Ukuran file

Tanggal

Waktu

Platform

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 telah memastikan bahwa ini merupakan masalah di dalam produk Microsoft sebagaimana tercantum di bagian "Berlaku untuk".

Informasi lebih lanjut

Setelah Anda menerapkan perbaikan terbaru ini, penyedia tidak kira jenis data untuk parameter EDM. String jenis data atau EDM. Biner jenis data. Permintaan prosesor memilih jenis data yang benar untuk parameter didasarkan pada nilai atau pada kolom yang parameter ini bersamaan atau dengan parameter yang akan digunakan.Misalnya, dalam kueri entitas SQL berikut ini, permintaan prosesor memilih jenis data ntext untuk parameter nama sebelum menerapkan hotfix ini.

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

Setelah Anda menerapkan perbaikan terbaru ini, jenis data First_Name kolom yang dipilih untuk parameter nama .Namun, dalam contoh berikut, "LINQ untuk entitas" permintaan gagal karena nama parameter tidak bersamaan atau digunakan dengan nilai atau kolom.

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

Hotfix ini juga mengatasi masalah yang diketahui yang dijelaskan dalam dokumen ' Baca saya ' untuk SQL Server Compact 3.5. Untuk informasi selengkapnya, lihat bagian "SQL Server Compact 3.5 SP1 Runtime masalah untuk ADO.NET kerangka kerja entitas" dari situs Web Microsoft berikut:

http://download.microsoft.com/download/2/e/c/2ec70436-aef2-4ccb-93a3-ea2f3e20f77d/ReadmeSSC35.htmPerbaikan terbaru ini memecahkan masalah yang berkaitan dengan pernyataan Transact-SQL yang dihasilkan ketika penyedia mengkonversi scalar subqueries untuk menerapkan konstruksi.Catatan Subqueries berkorelasi dikonversi ke scalar subqueries internal. Subqueries berkorelasi tidak didukung dalam rilis ini. Ketika Anda menjalankan kueri ini, Anda menerima pesan galat berikut:

Terjadi galat saat menjalankan perintah definisi. Lihat bagian pengecualian untuk rincian.

Pengecualian dalam berisi pesan berikut ini:

Ada kesalahan parsing permintaan. [.., Token error = AS]

Alasan adalah bahwa kerangka kerja entitas ADO.NET sabagai permintaan input permintaan yang memiliki jenis Gabung lintas menerapkan atau jenis gabungan luar berlaku. Apabila di sebelah kanan kondisi Gabung mengembalikan nilai scalar, bergabung dikonversi ke subpermintaan scalar. Kerangka kerja entitas ADO.NET penyedia untuk SQL Server Compact telah mengubah subpermintaan yang scalar permintaan setara yang telah menerapkan luar Gabung jenis, yang didukung oleh SQL Server Compact. Namun, dalam versi ini, konversi ini tidak dilakukan dengan benar. Sebagai contoh, terjadi galat untuk kueri berikut ini dalam rilis ini.

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

Untuk informasi selengkapnya tentang skema penamaan untuk pemutakhiran SQL Server, klik nomor artikel berikut ini untuk melihat artikel di Pangkalan Pengetahuan Microsoft:

Paket pemutakhiran 822499 Skema penamaan baru untuk perangkat lunak Microsoft SQL ServerUntuk informasi selengkapnya tentang peristilahan pemutakhiran perangkat lunak, klik nomor artikel berikut ini untuk melihat artikel di Pangkalan Pengetahuan Microsoft:

824684 Deskripsi tentang terminologi standar yang digunakan untuk menjelaskan pembaruan perangkat lunak Microsoft

Perlu bantuan lainnya?

Ingin opsi lainnya?

Jelajahi manfaat langganan, telusuri kursus pelatihan, pelajari cara mengamankan perangkat Anda, dan banyak lagi.

Komunitas membantu Anda bertanya dan menjawab pertanyaan, memberikan umpan balik, dan mendengar dari para ahli yang memiliki pengetahuan yang luas.