Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för:SQL Server
Azure SQL Database
Microsoft SQL Server XML Bulk Load-objektmodellen består av SQLXMLBulkLoad-objektet. Detta objekt stöder följande metoder och egenskaper.
Methods
Execute
Bulkladdar datan genom att använda schemafilen och datafilen (eller strömmen) som tillhandahålls som parametrar.
Egenskaper
BulkLoad
Specificerar om en bulklast ska utföras. Denna egenskap är användbar om du vill generera endast scheman (se SchemaGen, SGDropTables och SGUseID-egenskaperna som följer) och inte utföra en bulk-laddning. Detta är en boolesk egendom. När egenskapen sätts till SANT körs XML Bulk Load. När den är inställd på FALSK körs inte XML Bulk Load.
Standardvärdet är SANT.
CheckConstraints
Specificerar om de begränsningar (såsom begränsningar på grund av primärnyckel/främmande nyckel-relationen mellan kolumnerna) som anges i kolumnen ska kontrolleras när XML Bulk Load infogar data i kolumnerna. Detta är en boolesk egendom.
När egenskapen sätts till SANT kontrollerar XML Bulk Load begränsningarna för varje inlagt värde (vilket innebär att ett begränsningsbrott leder till ett fel).
Anmärkning
För att låta denna egenskap vara FALSK måste du ha behörigheter för ÄNDRA TABELL på måltabeller. Mer information finns i ALTER TABLE (Transact-SQL).
Standardvärdet är FALSE. När den är inställd på FALSK ignorerar XML Bulk Load begränsningarna under en insättningsoperation. I den nuvarande implementationen måste du definiera tabellerna i ordningen primärnyckel- och främmande nyckelrelationer i mappningsschemat. Det vill säga, en tabell med en primärnyckel måste definieras före motsvarande tabell med främmande nyckel; annars misslyckas XML Bulk Load.
Observera att om ID-propagering görs gäller inte detta alternativ och begränsningskontroll kommer att lämnas på. Detta sker när KeepIdentity=False och det finns en relation definierad där föräldern är ett identitetsfält och värdet ges till barnet när det genereras.
ConnectionCommand
Identifierar ett befintligt anslutningsobjekt (till exempel ADO eller ICommand-kommandoobjektet) som XML Bulk Load bör använda. Du kan använda egenskapen ConnectionCommand istället för att specificera en anslutningssträng med egenskapen ConnectionString. Transaktionsegenskapen måste sättas till TRUE om du använder ConnectionCommand.
Om du använder både ConnectionString- och ConnectionCommand-egenskaperna använder XML Bulk Load den senast angivna egenskapen.
Standardvärdet är NULL.
ConnectionString
Identifierar OLE DB-anslutningssträngen som tillhandahåller nödvändig information för att etablera en anslutning till en instans av databasen. Om du använder både ConnectionString- och ConnectionCommand-egenskaperna använder XML Bulk Load den senast angivna egenskapen.
Standardvärdet är NULL.
ErrorLogFile
Specificerar filnamnet där XML Bulk Load loggar fel och meddelanden. Standarden är en tom sträng, i vilket fall ingen loggning sker.
FireTriggers
Specificerar om triggers definierade i måltabeller ska utlösas under Bulk Load-operationen. Standardvärdet är FALSKT.
När den är inställd på TRUE kommer triggers att avfyras som vanligt under insättningsoperationer.
Anmärkning
För att låta denna egenskap vara FALSK måste du ha behörigheter för ÄNDRA TABELL på måltabeller. Mer information finns i ALTER TABLE (Transact-SQL).
Observera att om ID-spridning görs gäller inte detta alternativ och triggers lämnas på. Detta sker när KeepIdentity=False och det finns en relation definierad där föräldern är ett identitetsfält och värdet ges till barnet när det genereras.
ForceTableLock
Specificerar om tabellerna där XML Bulk Load kopierar data ska låsas under hela Bulk Load. Detta är en boolesk egendom. När egenskapen sätts till SANT får XML Bulk Load tabelllås under hela Bulk Load. När den är inställd på FALSK får XML Bulk Load ett tabelllås varje gång den infogar en post i en tabell.
Standardvärdet är FALSE.
IgnoreraDuplicateKeys
Specificerar vad som ska göras om ett försök görs att infoga dubblettvärden i en nyckelkolumn. Om denna egenskap sätts till SANT och ett försök görs att infoga en post med ett duplicert värde i en nyckelkolumn, infogar inte SQL Server den posten. Men den lägger in den efterföljande posten; alltså misslyckas inte Bulk Load-operationen. Om denna egenskap sätts till FALSK misslyckas Bulk Load när ett försök görs att infoga ett duplicerat värde i en nyckelkolumn.
När egenskapen IgnoreDuplicateKeys sätts till TRUE utfärdas en COMMIT-sats för varje post som infogas i tabellen. Detta saktar ner prestationen. Egenskapen kan sättas till SANT endast när Transaktionsegenskapen är satt till FALSK, eftersom transaktionsbeteendet implementeras med filer.
Standardvärdet är FALSE.
KeepIdentity
Specificerar hur värdena för en Identity-typkolumn i källfilen ska hanteras. Detta är en boolesk egendom. När egenskapen är satt till SANT tilldelar XML Bulk Load de värden som anges i källfilen till identitetskolumnen. När egenskapen sätts till FALSK ignorerar bulk-load-operationen de identitetskolumnvärden som anges i källkoden. I detta fall tilldelar SQL Server ett värde till identitetskolumnen.
Om Bulk Load involverar en kolumn som är en främmande nyckel och syftar på en identitetskolumn där SQL Server-genererade värden lagras, sprider Bulk Load dessa identitetsvärden lämpligt till kolumnen för främmande nyckel.
Värdet av denna egenskap gäller för alla kolumner som ingår i bulklasten. Standardvärdet är SANT.
Anmärkning
För att låta denna egenskap vara SANT måste du ha behörigheter för ÄNDRA TABELL på måltabeller. Annars måste den sättas till värdet FALSKT. Mer information finns i ALTER TABLE (Transact-SQL).
KeepNulls
Specificerar vilket värde som ska användas för en kolumn som saknar ett motsvarande attribut eller barnelement i XML-dokumentet. Detta är en boolesk egendom. När egenskapen är satt till SANT tilldelar XML Bulk Load ett nollvärde till kolumnen. Den tilldelar inte kolumnens standardvärde, om det finns något, som det är inställt på servern. Värdet av denna egenskap gäller för alla kolumner som ingår i bulklasten.
Standardvärdet är FALSE.
SchemaGen
Specificerar om de nödvändiga tabellerna ska skapas innan en Bulk Load-operation utförs. Detta är en boolesk egendom. Om denna egenskap sätts till SANT skapas tabellerna som identifieras i mappningsschemat (databasen måste finnas). Om en eller flera av tabellerna redan finns i databasen avgör egenskapen SGDropTables om dessa redan existerande tabeller ska tas bort och återskapas.
Standardvärdet för egenskapen SchemaGen är FALSKT. SchemaGen skapar inte PRIMARY KEY-begränsningar på de nyskapade tabellerna. SchemaGen skapar dock FOREIGN KEY-begränsningar i databasen om den kan hitta matchande sql:relationship - och sql:key-fields-annotationer i mappningsschemat och om nyckelfältet består av en enda kolumn.
Observera att om du sätter egenskapen SchemaGen till TRUE gör XML Bulk Load följande:
Skapar nödvändiga tabeller från element- och attributnamnen. Därför är det viktigt att du inte använder SQL Server-reserverade ord för element- och attributnamn i schemat.
Returnerar överflödesdata för varje kolumn som är utpekad med sql:overflow-fältet i xml-datatypformat .
SGDropTables
Specificerar om befintliga tabeller ska tas bort och återskapas. Du använder denna egenskap när SchemaGen-egenskapen är satt till TRUE. Om SGDropTables är FALSKT behålls de befintliga tabellerna. När denna egenskap är SANT tas de befintliga tabellerna bort och återskapas.
Standardvärdet är FALSE.
SGUseID
Specificerar om attributet i mappningsschemat som identifieras som id-typ kan användas för att skapa en PRIMARY KEY-begränsning när tabellen skapas. Använd denna egenskap när SchemaGen-egenskapen är satt till TRUE. Om SGUseID är SANT använder SchemaGen-verktyget ett attribut för vilket dt:type="id" anges som primärnyckelkolumn och lägger till lämplig PRIMARY KEY-begränsning när tabellen skapas.
Standardvärdet är FALSE.
TempFilePath
Specificerar filvägen där XML Bulk Load skapar de tillfälliga filerna för en transakterad bulk-last. (Denna egenskap är endast användbar när Transaktionsegenskapen är satt till SANT.) Du måste säkerställa att SQL Server-kontot som används för XML Bulk Load har tillgång till denna sökväg. Om denna egenskap inte är satt, lagrar XML Bulk Load de tillfälliga filerna på den plats som anges i TEMP-miljövariabeln.
Transaktion
Specificerar om Bulk Load ska göras som en transaktion, i vilket fall rollback är garanterad om Bulk Load misslyckas. Detta är en boolesk egendom. Om egenskapen är satt till SANT sker Bulk Load i en transaktionell kontext. Egenskapen TempFilePath är användbar endast när Transaktion är satt till TRUE.
Anmärkning
Om du laddar binär data (såsom bin.hex, bin.base64 XML-datatyper till binära bild-SQL Server-datatyper) måste Transaktionsegenskapen sättas till FALSE.
Standardvärdet är FALSE.
XMLFragment
Specificerar om källdatan är ett XML-fragment. Ett XML-fragment är ett XML-dokument utan ett enda toppnivåelement (rot-)element. Detta är en boolesk egendom. Denna egenskap måste sättas till SANT om källfilen består av ett XML-fragment.
Standardvärdet är FALSE.