2013-06-20 4 views
1

Я пытаюсь экспортировать данные из базы данных в Excel, когда пользователь нажимает на значок excel на экране следующим образом. Это на самом деле отлично работает, но просто хотел получить более полное представление об этом, а не читать буферизованные данные.экспортировать данные в excel из базы данных

private void exportLayout(String date, 
     PrintWriter prn, 
     BufferedReader in) throws Exception 
    { 
     String line = null; // Indicates current line 
     boolean isNotEndofBuffer = true; // boolean to indicate if the end of buffer is reached 
     boolean skip = false; // boolean to indicate if we can skip reading the current line 

     try 
     { 
      while (isNotEndofBuffer) 
      { 
       if (!skip) 
       { 
        line = in.readLine();     
       } 
       if (line != null) 
       { 
        ... 

        ExportUtil.outputLine(prn, TEXT1 + 
       TEXT2 + TAB + 
      TEXT3 + TAB); 


catch(IOException ioe) 
     { 
      ioe.printStackTrace(); 
      throw ioe; 
     } 
     catch(Exception ex) 
     { 
      ex.printStackTrace(); 
      throw ex; 

     } 
+0

Вывод базы данных, очевидно, записывается как строки (BufferedReader), а затем преобразовывается в поля и записывается в текстовый файл, разделенный вкладкой, подходящий для Excel. Немного переработано. –

ответ

1

Не нужно никакого кода, С помощью этого запроса можно экспортировать таблицу базы данных, чтобы преуспеть

Экспорт данных из MySQL в файл CSV, его просто с помощью этого запроса.

SELECT * INTO OUTFILE '/tmp/name.csv' 
    FIELDS TERMINATED BY ',' 
    OPTIONALLY ENCLOSED BY '"' 
    ESCAPED BY '\\' 
    LINES TERMINATED BY '\n' 
    FROM [tablename] 
Смежные вопросы