2016-02-04 4 views
2

Мой вопрос касается SQL Server BCP утилиты:SQL Server BCP Утилита

Как экспортировать данные из SQL-сервера в Excel лист со следующими расширениями например xls, xlsx и xlsb, используя инструмент bcp, потому что я могу экспортировать файлы .csv и .txt, но с excel он не может быть открыт после экспорта с помощью bcp.

Любой работник, занимающийся экспортом в лист Excel, будет очень помогать.

Спасибо за помощь заранее

+1

Вы не можете без дополнительной работы. Но Excel должен иметь возможность открывать файлы CSV. –

ответ

2

Прежде всего там BCP не поддерживают XLS или XLSX форматы. BCP поддерживает только xml, txt и csv;

Если вам нужно импортировать данные из excel, у вас есть .net или java или Php, чтобы создать таблицу данных с тем же преимуществом. Затем используйте эту DataTable, чтобы создать соответствующую таблицу в Sql

, если вы используете SQL и C#, то это может помочь вам

string con = 
    @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\temp\test.xls;" + 
    @"Extended Properties='Excel 8.0;HDR=Yes;'";  
using(OleDbConnection connection = new OleDbConnection(con)) 
{ 
    connection.Open(); 
    OleDbCommand command = new OleDbCommand("select * from [Sheet1$]", connection); 
    using(OleDbDataReader dr = command.ExecuteReader()) 
    { 
     while(dr.Read()) 
     { 
      var row1Col0 = dr[0]; 
      Console.WriteLine(row1Col0); 
     } 
    } 
} 

или

private void GetExcel() 
     { 
      string fullPathToExcel = "<Path to Excel file>"; //ie C:\Temp\YourExcel.xls 
      string connString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties='Excel 12.0;HDR=yes'", fullPathToExcel); 
      DataTable dt = Function_Library.DatabaseFunctions.GetDataTable("SELECT * from [SheetName$]", connString);  

     } 
Смежные вопросы