Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Veritabanı
Azure SQL Yönetilen Örneği
Analytics Platform Sistemi (PDW)
Verileri bir SQL Server tablosuna toplu içeri aktardığınızda veya bir tablodan toplu dışarı aktardığınızda, verileri toplu dışarı veya toplu içeri aktarmak için gereken tüm biçim bilgilerini depolamak için biçim dosyası kullanabilirsiniz. Bu tabloya göre bir veri dosyasındaki her alan için biçim bilgilerini içerir.
SQL Server iki tür biçim dosyasını destekler: XML biçimleri ve XML olmayan biçim dosyaları. Hem XML olmayan biçim dosyaları hem de XML biçim dosyaları bir veri dosyasındaki her alanın açıklamalarını, XML biçim dosyaları da ilgili tablo sütunlarının açıklamalarını içerir. Genellikle, XML ve XML olmayan biçim dosyaları değiştirilebilir. Ancak, XML olmayan biçim dosyalarına göre çeşitli avantajlar sağladığından, yeni biçim dosyaları için XML söz dizimini kullanmanızı öneririz. Daha fazla bilgi için bkz. XML Biçim Dosyaları (SQL Server).
Not
Toplu ekleme de dahil olmak üzere bu söz dizimi Azure Synapse Analytics'te desteklenmez. Azure Synapse Analytics ve diğer bulut veritabanı platformu tümleştirmelerinde, veri aktarımını Azure Data Factory 'da COPY deyiminikullanarak veya COPY INTO ve PolyBase gibiT-SQL deyimlerini kullanarak gerçekleştirin.
Biçim dosyalarının avantajları
Biçim dosyaları, diğer veri biçimlerine uymak veya diğer yazılımlardan veri dosyalarını okumak için çok az düzenleme gerektiren veya hiç düzenleme gerektirmeyen veri dosyaları yazmak için esnek bir sistem sağlar.
Gereksiz verileri eklemek veya silmek ya da veri dosyasındaki mevcut verileri yeniden sıralamak zorunda kalmadan verileri toplu içeri aktarabilirsiniz. Biçim dosyaları, veri dosyasındaki alanlarla tablodaki sütunlar arasında uyuşmazlık olduğunda yararlı olabilir.
Biçim dosyaları örnekleri
Aşağıdaki örneklerde XML olmayan bir biçim dosyasının ve XML biçim dosyasının düzeni gösterilmektedir. Bu biçim dosyaları, HumanResources.myTeam örnek veritabanındaki AdventureWorks2025 tablosuna karşılık gelir. Bu tablo dört sütun içerir: EmployeeID, Name, Titleve ModifiedDate.
Not
Bu tablo ve nasıl oluşturulduğu hakkında bilgi için bkz. HumanResources.myTeam örnek tablosu (SQL Server).
A. XML olmayan bir biçim dosyası kullanma
Aşağıdaki XML olmayan biçim dosyası, HumanResources.myTeam tablosu için SQL Server yerel veri biçimini kullanır. Bu biçim dosyası aşağıdaki bcp komutu kullanılarak oluşturulmuştur.
bcp AdventureWorks2022.HumanResources.myTeam format nul -f myTeam.Fmt -n -T
bcp komutu varsayılan olarak Windows Kimlik Doğrulaması ile SQL Server'ın yerel, varsayılan bir örneğini kullanır. diğer örnek ve oturum açma bilgilerini istediğiniz gibi belirtebilirsiniz. Daha fazla bilgi için bkz. bcp Yardımcı Programı. Örneğin, Windows Kimlik Doğrulaması ile örnek adlı bir uzak sunucu belirtmek için şunu kullanın:
bcp AdventureWorks2022.HumanResources.myTeam format nul -f myTeam.Fmt -n -T -S servername/instancename
Bu biçim dosyasının içeriği, SQL Server'ın ana sürüm numarasından ve tablo meta veri bilgilerinden başlayarak aşağıdaki gibidir.
14.0
4
1 SQLSMALLINT 0 2 "" 1 EmployeeID ""
2 SQLNCHAR 2 100 "" 2 Name SQL_Latin1_General_CP1_CI_AS
3 SQLNCHAR 2 100 "" 3 Title SQL_Latin1_General_CP1_CI_AS
4 SQLNCHAR 2 100 "" 4 Background SQL_Latin1_General_CP1_CI_AS
Daha fazla bilgi için bkz. XML dışı biçimli dosyaları kullanma (SQL Server).
B. XML biçim dosyası kullanma
Aşağıdaki XML biçim dosyası, HumanResources.myTeam tablosu için SQL Server yerel veri biçimini kullanır. Bu biçim dosyası aşağıdaki bcp komutu kullanılarak oluşturulmuştur.
bcp AdventureWorks2022.HumanResources.myTeam format nul -f myTeam.xml -x -n -T
Biçim dosyası aşağıdakileri içerir:
<?xml version="1.0"?>
<BCPFORMAT xmlns="http://schemas.microsoft.com/sqlserver/2004/bulkload/format" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<RECORD>
<FIELD ID="1" xsi:type="NativePrefix" LENGTH="1"/>
<FIELD ID="2" xsi:type="NCharPrefix" PREFIX_LENGTH="2" MAX_LENGTH="100" COLLATION="SQL_Latin1_General_CP1_CI_AS"/>
<FIELD ID="3" xsi:type="NCharPrefix" PREFIX_LENGTH="2" MAX_LENGTH="100" COLLATION="SQL_Latin1_General_CP1_CI_AS"/>
<FIELD ID="4" xsi:type="NCharPrefix" PREFIX_LENGTH="2" MAX_LENGTH="100" COLLATION="SQL_Latin1_General_CP1_CI_AS"/>
</RECORD>
<ROW>
<COLUMN SOURCE="1" NAME="EmployeeID" xsi:type="SQLSMALLINT"/>
<COLUMN SOURCE="2" NAME="Name" xsi:type="SQLNVARCHAR"/>
<COLUMN SOURCE="3" NAME="Title" xsi:type="SQLNVARCHAR"/>
<COLUMN SOURCE="4" NAME="Background" xsi:type="SQLNVARCHAR"/>
</ROW>
</BCPFORMAT>
Daha fazla bilgi için bkz. XML Biçim Dosyaları (SQL Server).
Biçim dosyası ne zaman gereklidir?
Biçim dosyaları genellikle aşağıdaki durumlarda gereklidir:
INSERT ... SELECT * FROM OPENROWSET(BULK...)deyimini kullandığınızda.bcp veya
BULK INSERTkullanan karmaşık toplu veri aktarma durumlarında.Aynı veri dosyası, farklı şemalara sahip birden çok tablo için kaynak olarak kullanılır.
Veri dosyasında hedef tablonun sütunları olan farklı sayıda alan vardır; mesela:
- Hedef tabloda, varsayılan bir değerin tanımlandığı veya
NULL'ın izin verildiği en az bir sütun bulunmaktadır. - Kullanıcıların tablodaki bir veya daha fazla sütunda
SELECT/INSERTizinleri yoktur. - Tek bir veri dosyası, farklı şemalara sahip iki veya daha fazla tabloyla birlikte kullanılır.
- Hedef tabloda, varsayılan bir değerin tanımlandığı veya
Veri dosyası ve tablo için sütun sırası farklıdır.
Sonlandırıcı karakterler veya ön ek uzunlukları veri dosyasının sütunları arasında farklılık gösterir.
Not
Biçim dosyasının olmaması durumunda, bcp komutu bir veri biçimi anahtarı (-n, -c, -wveya -N) veya BULK INSERT işlemi DATAFILETYPE seçeneğini belirtirse, belirtilen veri biçimi veri dosyasının alanlarını yorumlamak için varsayılan yöntem olarak kullanılır.
İlgili görevler
- BCP yerel/biçim dosyasını ve metin dosyasını ve BOM kullanma
- XML olmayan biçimli dosyaları (SQL Server) kullanma
- XML Biçim Dosyaları (SQL Server)
- Toplu içeri veya toplu dışarı aktarma (SQL Server) için Veri biçimleri
- bcp (SQL Server) ile biçim dosyası oluşturma
İlgili içerik
- bcp Yardımcı Programı
- Verileri toplu içeri aktarmak için biçim dosyası kullanma (SQL Server)
- Tablo sütununu (SQL Server) atlamak için Biçim dosyası kullanma
- Bir veri alanını atlamak için biçim dosyası kullanma (SQL Server)
- Tablo sütunlarını veri dosyası alanlarına (SQL Server) eşlemek için biçim dosyası kullanma