SQL’den Excel’e, Excel’den SQL’e Aktarım
SQL Server sahip olduğu Export/Import aracıyla diğer veritabanlarına göre bir adım önde diyebiliriz. SQL Server üzerinde çalışırken sorgu sonucunu Excel formatında dışarı çıkarmak her zaman ihtiyaç duyulan bir durum olmuştur. Excel’de SQL Server’e import veya ters yönde export işlemi için en çok kullanılan yöntemler SQL 2000′de Data Transformation Services (DTS), SQL 2005′te SQL Server Integration Services (SSIS) ve her iki sürümde Bulk Copy (BCP) araçlardır. Bu araçların özelliği grafiksel ortam sunmaları ve genellikle Job’lar aracılığıyla çalıştırılıyor olmasıdır. DTS, SSIS ile nasıl yapılacağı kolay bir işlemdir. Bu yazıda BCP ve farklı T-SQL alternatiflerini inceleyeceğiz.
Excel’den SQL Server’e Veri Aktarımı
Excel’den SQL Server’e programatik olarak veri aktarmanın Linked Server veya Distributed Query olmak üzere iki yolu mevcuttur. SQL Server, Linked Server aracılığıyla diğer OLE DB tabanlı veri kaynaklarıyla iletişim kurabilme yeteneğine sahiptir. Microsoft Excel workbookları da OLE DB tabanlıp olup uzatkan SQL diliyle sorgulanabilir yapıya sahiptir. SQL Server Management Studio, Enterprise Manager, SQL-DMO (Distributed Management Objects) veya SMO (SQL Server Management Objects) araç ve bileşenleri kullanarak bir Excel kaynağını bir SQL Server linked server olarak tanımlayabiliriz. Linked server tanımlanırken öncelikle linked server adı tanımlanır ardından bağlantıya uygun OLE DB Provider seçimi yapılır ve provider string düzenlenir. Provider string, erişilecek veri kaynağı hakkında bilgi içerir. Linked server oluşturmak