DetailPage-MSS-KB

Knowledge Base

Artikel ID: 944389 - Laatste beoordeling: vrijdag 16 januari 2015 - Wijziging: 3.0

 
Dit artikel is gearchiveerd. Het wordt aangeboden in de huidige vorm en wordt niet meer bijgewerkt.

Op deze pagina

Symptomen

In Microsoft.NET Framework 2.0-toepassing die u gebruikt deSqlBulkCopyklasse gegevens kopiëren uit een System.Data.DataTable aan een tabel in Microsoft SQL Server. Als de tabel de naam bevat een teken punt (.) u ontvangt het volgende foutbericht weergegeven:
System.InvalidOperationException is incorrect
Message = "kan verkrijgen kolomgegevens sortering voor de doeltabel. Als de tabel niet in de huidige database de naam moet worden gekwalificeerd met de databasenaam van de (bijvoorbeeld [mijndb]...[MijnTabel](bijvoorbeeld [mijndb]...[MijnTabel]); Dit geldt ook voor tijdelijke-tabellen (bijvoorbeeld #mytable zou worden opgegeven als tempdb..#MyTable). "
Source="System.Data'

Oorzaak

Dit probleem wordt veroorzaakt door een probleem in de System.Data.dll bestand.

Workaround

Om dit probleem vermijden stip tekens (.) in de tabelnamen.

Als u met een teken punt (.) in een tabelnaam Gebruik het teken punt (.) Als onderdeel van de naamgevingsregels van SQL. Bijvoorbeeld een tabel gebruiken die naam lijkt op de volgende:
Server.database.schema.tabelnaam

Status

Microsoft heeft bevestigd dat dit probleem in de Microsoft-producten die worden vermeld is in de sectie 'Van toepassing op'.

Meer informatie

Stappen om het gedrag te reproduceren

  1. Voer de volgende SQL-instructie in de database Noordenwind:
    select * into [test.33] where 1 = 0
    --Create a table named [test.33].
    
  2. Visual C#-toepassing maken en voer de volgende code:
    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();
            }
    

Informatie over de call-stack

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)

De informatie in dit artikel is van toepassing op:
  • Microsoft .NET Framework 2.0
  • Microsoft .NET Framework 3.0
  • Microsoft .NET Framework 3.5
Trefwoorden: 
kbnosurvey kbarchive kbexpertiseadvanced kbtshoot kbprb kbmt KB944389 KbMtnl
Machine-translated ArticleMachine-translated Article
BELANGRIJK: Dit artikel is vertaald door middel van automatische vertalingssoftware van Microsoft en is mogelijk nabewerkt door de Microsoft Community via CTF-technologie (Community Translation Framework) of door een menselijke vertaler. Microsoft biedt zowel automatisch vertaalde, door mensen vertaalde en door de community nabewerkte artikelen aan, zodat er in meerdere talen toegang is tot alle artikelen in onze Knowledge Base. Een vertaald of bewerkt artikel kan fouten bevatten in vocabulaire, syntaxis of grammatica.. Microsoft is niet verantwoordelijk voor eventuele onjuistheden, fouten of schade ten gevolge van een foute vertaling van de inhoud van een bericht of het gebruik van deze vertaalde berichten door onze klanten.
De Engelstalige versie van dit artikel is de volgende: 944389  (http://support.microsoft.com/kb/944389/en-us/ )
Delen
Extra ondersteuningsopties
Microsoft Community Support-forums
Neem rechtstreeks contact met ons op
Een door Microsoft gecertificeerde partner zoeken
Microsoft Store