Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
sql database v Microsoft Fabric
Chcete-li poskytnout nejkomprimovanější úložiště souborů pro hromadný export dat v nativním formátu do datového souboru, příkaz bcp předchází každému poli jeden nebo více znaků, které označují délku pole. Tyto znaky se nazývají znaky předpony délky.
Výzva bcp k zadání délky předpony
Pokud interaktivní příkaz bcp obsahuje možnost in nebo out bez přepínače formátového souboru (-f) nebo přepínače formátu dat (-n, -c, -w nebo -N), příkazový řádek zobrazí délku předpony každého datového pole následujícím způsobem:
Enter prefix length of field <field_name> [<default>]:
Pokud zadáte hodnotu 0, bcp vás vyzve k zadání délky pole (pro datový typ znaků) nebo terminátoru pole (pro nativní neznakový typ).
Poznámka:
Jakmile interaktivně zadáte všechna pole v příkazu bcp, příkazový řádek uloží odpovědi pro každé pole v souboru bez formátu XML. Další informace o formátových souborech jiných než XML naleznete v tématu
Přehled délky předpony
Pokud chcete uložit délku předpony pole, potřebujete dostatek bajtů, které představují maximální délku pole. Počet požadovaných bajtů také závisí na typu úložiště souborů, na hodnotě null sloupce a na tom, jestli jsou data uložená v datovém souboru v nativním formátu nebo ve formátu znaků. Například datový typ textu nebo obrázku vyžaduje k uložení délky pole čtyři znaky předpony, ale datový typ varchar vyžaduje dva znaky. V datovém souboru jsou tyto znaky s délkou předpony uloženy ve vnitřním binárním datovém formátu SQL Serveru.
Důležité
Pokud používáte nativní formát, používejte místo ukončovačů polí délkové předpony. Data nativního formátu můžou být v konfliktu s ukončovacími moduly, protože datový soubor nativního formátu je uložený v interním binárním datovém formátu SQL Serveru.
Délky předpon pro hromadný export
Poznámka:
Výchozí hodnota, která je k dispozici na příkazovém řádku pro délku předpony při exportu pole, označuje nejúčinnější délku předpony pole.
Hodnoty Null jsou reprezentovány jako prázdné pole. Chcete-li označit, že pole je prázdné (představuje NULL), předpona pole obsahuje hodnotu -1; to znamená, že vyžaduje alespoň 1 bajt. Pokud sloupec tabulky SQL Serveru umožňuje hodnoty null, sloupec vyžaduje délku předpony 1 nebo vyšší v závislosti na typu úložiště souborů.
Při hromadném exportu dat a jejich uložení v nativních datových typech nebo ve formátu znaků použijte délky předpony uvedené v následující tabulce.
| SQL Server datový typ |
Nativní formátNOT NULL |
Nativní formátNULL |
Formát znakůNOT NULL |
Formát znakůNULL |
|---|---|---|---|---|
| znak | 2 | 2 | 2 | 2 |
| varchar | 2 | 2 | 2 | 2 |
| nchar | 2 | 2 | 2 | 2 |
| nvarchar | 2 | 2 | 2 | 2 |
| Text* | 4 | 4 | 4 | 4 |
| Ntext* | 4 | 4 | 4 | 4 |
| binary | 2 | 2 | 2 | 2 |
| varbinary | 2 | 2 | 2 | 2 |
| Obrázek* | 4 | 4 | 4 | 4 |
| datetime | 0 | 1 | 0 | 1 |
| smalldatetime | 0 | 1 | 0 | 1 |
| decimal | 1 | 1 | 1 | 1 |
| číselný | 1 | 1 | 1 | 1 |
| float | 0 | 1 | 0 | 1 |
| skutečné | 0 | 1 | 0 | 1 |
| int | 0 | 1 | 0 | 1 |
| bigint | 0 | 1 | 0 | 1 |
| smallint | 0 | 1 | 0 | 1 |
| tinyint | 0 | 1 | 0 | 1 |
| peníze | 0 | 1 | 0 | 1 |
| málo peněz | 0 | 1 | 0 | 1 |
| bit | 0 | 1 | 0 | 1 |
| uniqueidentifier | 1 | 1 | 0 | 1 |
| časová značka | 1 | 1 | 1 | 1 |
| varchar(max) | 8 | 8 | 8 | 8 |
| varbinary(max) | 8 | 8 | 8 | 8 |
| UDT (uživatelem definovaný datový typ) | 8 | 8 | 8 | 8 |
| XML | 8 | 8 | 8 | 8 |
| sql_variant | 8 | 8 | 8 | 8 |
| vector | 2 | 2 | N/A | N/A |
- ntext, text a image datové typy se odeberou v budoucí verzi SQL Serveru. Vyhněte se používání těchto datových typů v nové vývojové práci a naplánujte úpravu aplikací, které je aktuálně používají. Místo toho použijte nvarchar(max), varchar(max)a varbinary(max).
Délky předpon pro hromadný import
Při hromadném importu dat je délka předpony hodnotou, která byla zadána při původním vytvoření datového souboru. Pokud nebyl datový soubor vytvořen příkazem bcp , znaky předpony délky pravděpodobně neexistují. V tomto případě zadejte hodnotu 0 pro délku předpony.
Poznámka:
Pokud chcete zadat délku předpony v datovém souboru, který nebyl vytvořen pomocí nástroje bcp, použijte délky uvedené v části Délky předpon pro hromadný export, dříve v tomto tématu.