Dengan SQL Server 2008 R2, ketika saya menyimpan hasilnya sebagai CSV tidak ada header. Saya dapat mengatasi ini dengan menyalin dan menempel dengan "Salin dengan Header", atau hanya mengambil header dan menempelkannya di CSV dll, tetapi apakah ada cara yang lebih baik untuk melakukan ini?
sql-server
sql-server-2008-r2
ssms
csv
Kyle Brandt
sumber
sumber
Jawaban:
Di SSMS Anda perlu mengubah beberapa opsi:
Alat - Opsi - Hasil kueri - sql server - hasil ke kisi (atau teks) -> Sertakan tajuk kolom saat menyalin atau menyimpan hasil .
Pengaturan yang diubah diterapkan ke jendela permintaan baru, tetapi tidak ada.
sumber
Saya melihat bahwa Anda dengan jelas menyatakan Anda sedang mencari solusi di SSMS tapi saya pikir saya akan memberikan solusi PowerShell jika itu membantu (SQLPS dapat diakses dari dalam SSMS 2008 & 2008 R2).
Anda dapat menggunakan SQLPS (atau PowerShell biasa dengan SQL cmdlet snapin) untuk menjalankan sesuatu seperti ini:
Saya dapat terus menggunakan contoh ini jika Anda tertarik.
sumber
Jika Anda menyukai pendekatan skrip PowerShell, saya memiliki skrip yang mengekspor ke CSV dari SSMS melalui PowerShell . Saya suka sejauh ini Anda dapat memiliki SQL Script dinamis, heck Anda dapat memilih teks apa pun dan SSMS meneruskannya ke skrip sebagai argumen.
Satunya downside adalah saya belum menemukan cara cerdas untuk meneruskan koneksi jendela saat ini. Solusi saya saat ini adalah menyiapkan alat yang berbeda yang hanya bervariasi dalam string koneksi mereka yaitu PROD_DW, PROD_DB, TEST_DW ...
sumber
Anda dapat melakukan gabungan semua bergabung untuk secara eksplisit menambahkan header kolom sebagai satu baris pilih yang disatukan terhadap baris nyata, misalnya:
Rasa sakit terbesar dengan pendekatan ini adalah pemeran paksa ke tipe data karakter pada pemilihan kedua.
sumber
SSMS bukan alat pengekspor data. Gunakan wizard Impor / Ekspor atau BCP yang keduanya dirancang sebagai alat ekspor data dan akan melakukan apa yang ingin Anda lakukan.
sumber