Şu anda çevrimdışısınız; İnternet'in yeniden bağlanması bekleniyor

.NET Framework 2.0 veri bir tabloda bir kaynaktan veri kopyalamak için SqlBulkCopy sınıfı'nı kullandığınızda hata iletisi: "iletisi: Hedef tablo için sütun alfabe düzeni bilgisi alınamadı"

ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.

Makalenin İngilizcesi aşağıdaki gibidir:944389
Belirtiler
Bir Microsoft .NET Framework 2.0 uygulamasında SqlBulkCopy sınıfı bir System.Data.DataTable verileri bir Microsoft SQL Server tablosuna kopyalamak için kullanın. Tablo adı nokta (.) karakterinin değerini içeriyorsa, aşağıdaki hata iletisini alırsınız:
Iletisi işlenmemiş
Iletinin "Hedef tablo için sütun alfabe düzeni bilgisi elde etmek başarısız = Tablo adı veritabanı adıyla belirtilmiş gerekir geçerli veritabanında ise (örneğin [mydb]...[Tablom](örneğin [mydb]...[Tablom]); bu da (örneğin #mytable tempdb belirtilmesi.. geçici tablolar uygulanır#myTable). "
Source="System.Data"
Neden
Bu sorun bir System.Data.dll sorunu nedeniyle dosya.
Pratik Çözüm
Bu soruna geçici bir çözüm bulmak için nokta önlemek için (.) karakter. Tablo adlarında.

Bilgisayarınızda bir nokta (.) karakterinin bir tablo adını kullanmak, nokta karakteri (.) kullanın... SQL adlandırma bir parçası olarak. Örneğin, aşağıdakine benzer bir tablo adı'nı kullanın:
tablename Server.Database.Schema.
Durum
Microsoft, "Geçerli Olduğu Ürünler" bölümünde listelenen Microsoft ürünlerinde bu sorunun olduğunu onaylamıştır.
Daha fazla bilgi

Davranışı Yeniden Oluşturma Adımları

  1. Northwind veritabanına aşağıdaki SQL deyimini çalıştırın:
    select * into [test.33] where 1 = 0--Create a table named [test.33].
  2. Bir Visual C# uygulaması oluşturun ve aşağıdaki kodu çalıştırın:
    static void Main(string[] args)        {            SqlConnection con = new SqlConnection("Integrated Security=SSPI;Initial Catalog=Northwind;Data Source=.");            con.Open();            SqlConnection dst = new SqlConnection("Integrated Security=SSPI;Initial Catalog=Northwind;Data Source=.");            dst.Open();            SqlCommand com = new SqlCommand("select * from customers", con);            SqlDataReader dr = com.ExecuteReader();            SqlBulkCopy sbc = new SqlBulkCopy(dst);            sbc.DestinationTableName = "Northwind.dbo.[Test.33]";            sbc.WriteToServer(dr); // The failure occurs here.            dst.Close();            con.Close();        }

Çağrı yığını bilgileri

at System.Data.SqlClient.SqlBulkCopy.AnalyzeTargetAndCreateUpdateBulkCommand(BulkCopySimpleResultSet internalResults)       at System.Data.SqlClient.SqlBulkCopy.WriteToServerInternal()       at System.Data.SqlClient.SqlBulkCopy.WriteRowSourceToServer(Int32 columnCount)       at System.Data.SqlClient.SqlBulkCopy.WriteToServer(IDataReader reader)

Uyarı: Bu makalenin çevirisi otomatik olarak yapılmıştır

Özellikler

Makale No: 944389 - Son İnceleme: 01/03/2008 16:28:59 - Düzeltme: 2.1

Microsoft .NET Framework 2.0, Microsoft .NET Framework 3.0, Microsoft .NET Framework 3.5

  • kbmt kbexpertiseadvanced kbtshoot kbprb KB944389 KbMttr
Geri bildirim