Как выгрузить базу данных в excel

«Hello, I am new to SQL. We use SQL query in SQL 2016 Server. And then we are exporting the output to excel. Could you please guide me on how to make the process automated for exporting data from SQL to Excel. Since I don’t want to do the task manually any longer. «

If you come across the same problem as mentioned above and want to find a way to export SQL Server data to Excel, don’t fret. This page covers two possible ways to help you export data from SQL Server automatically.

Two Ways to Export Data from SQL Server to Excel

You can use the SQL Server Import and Export Wizard and Data Connection Wizard in Excel to export data from SQL Server to Excel. See the details below. 

Solution 1. Use the SQL Server Import and Export Wizard

1. Open SQL Server Management Studio and connect to the database. 

2. Go to «Object Explorer», find the server database you want to export to Excel. Right-click on it and choose «Tasks» > «Export Data» to export table data in SQL. Then, the SQL Server Import and Export Wizard welcome window pop up. 

export data from SQL Server to Excel - 2

3. Now, you need to click on the Data source drop-down button to choose the data source you want to copy. Here, select «SQL Server Native Client 11.0». In the Server name drop-down box, select a SQL Server instance. In the Authentication section, choose authentication for the data source connection and from the Database drop-down box, select a database from which data will be copied. After everything is set, press the «Next» button. 

export data from SQL Server to Excel - 3

4. On the «Choose a Destination» window, in the Destination box, choose Microsoft Excel item for exporting data from SQL Server to Excel. Choose the Excel file path and version as you need. Then, click the «Next» button to continue.

export data from SQL Server to Excel - 4

5. On the Specify Table Copy or Query screen, you can choose «Copy data from one or more tables or views». Then, click «Next» to go on.

export data from SQL Server to Excel - 5

6. In the «Select Source Table and Views» window, you can choose one or more tables and views from which you want to export SQL Server data to an Excel. Click the «Preview» button to preview which data will be generated to an Excel file. Click the «Next» button to move on. 

export data from SQL Server to Excel - 6

7. Here, on the «Save and Run Package» window, check the «Run immediately» and click the «Next» button.

export data from SQL Server to Excel - 7

8. On the «Complete» Wizard window, you can check all the settings set during of exporting process. If everything is right, click «Finish» to start exporting SQL database to Excel.

export data from SQL Server to Excel - 8

9. You can view the exporting process in this step. When it completes, click on «Report» drop-down button.

export data from SQL Server to Excel - 9

10. You can choose «Save Report to File…» (including Excel, Notepad) to save the report. Here, you need to choose Excel as the target file format. 

export data from SQL Server to Excel - 10

How to Repair SQL Server Database

SQL Server Management Studio (SSMS) offers the Import and Export Wizard feature to export data from one data source to another data source. Namely, you can apply this function to export SQL to Excel. For exporting SQL Server database to CSV, link to check the details.

Step 1. Close the SQL Service in Task Manager or SQL Server Manager Console.

Step 2. Run EaseUS MS SQL Recovery, click «Browse» (the two dots) or «Search» to choose the location where you saved your corrupted database. Afterward, Click «Repair» to start analyzing the specified database.

select the SQL database file

Step 3. When it has done, choose the files you want to repair and click «Export».

Select the database objects

Step 4. Turn on the SQL service, you can choose to export the repaired files to database to export it as SQL scripts.

export the SQL database objects

Solution 2. Using the Data Connection Wizard in Excel

Another way to export data from SQL Server to Excel file is to use the Data Connection Wizard dialog in Excel.

1. Launch Excel, open an Excel file in which you want to export SQL Server data. On the toolbar, click the «Data» tab > select «From Other Sources» > choose «From SQL Server».

export SQL data to Excel - 1

2. The «Data Connection Wizard» window will pop up. Enter the name of the SQL Server instance from which data need to export. In the «Log on credentials» section, choose «Use Windows Authentication» mode for the data source connection and click the «Next» button.

export SQL data to Excel - 2

3. Choose the database from which the data will be exported. And click the «Next» button to proceed. On the next window, leave everything as it is and press the «Finish» button.

export SQL data to Excel - 3

4. In the Import Data dialog, choose «Table» and «Existing worksheet» as the screenshot shows. Press the «OK» button. After this, the SQL Server data will be exported to Excel file. 

export SQL data to Excel - 4

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

В этой статье

  • Экспорт данных в Excel: основы

  • Подготовка к экспорту

  • Выполнение экспорта

  • Что еще важно знать об экспорте

  • Решение проблем, связанных с отсутствующими и неверными значениями

Экспорт данных в Excel: основы

При экспорте данных в Excel приложение Access создает копию выбранных данных, а затем сохраняет их в файле, который можно открыть в Excel. Если данные требуется копировать из Access в Excel достаточно часто, можно сохранить параметры операции экспорта для повторного использования и даже запланировать ее автоматический запуск через определенные интервалы времени.

Стандартные сценарии экспорта данных в Excel

  • В отделе или рабочей группе для работы с данными используется как Access, так и Excel. Данные хранятся в базах данных Access, но для анализа и распространения его результатов используется Excel. Группа выполняет экспорт данных в Excel по мере необходимости, но этот процесс требуется сделать более эффективным.

  • Вы используете Access, но ваш руководитель предпочитает работать с данными в Excel. Вам приходится регулярно копировать данные в Excel, но вам хотелось бы автоматизировать этот процесс ради экономии времени.

Об экспорте данных в Excel

  • В приложении Access нет команды «Сохранить как” с возможностью сохранения данных в формате Excel. Чтобы скопировать данные в Excel, необходимо воспользоваться функций экспорта, описанной в этой статье, либо скопировать данные Access в буфер обмена, а затем вставить их в таблицу Excel.

  • Можно экспортировать таблицу, запрос, форму или отчет, а также отдельные записи в представлении.

  • В приложении Microsoft Excel есть команда импорта данных из базы данных Access. Ее можно использовать вместо команды экспорта Access, однако с помощью команды импорта в Excel можно импортировать только таблицы и запросы. Дополнительные сведения см. в разделе справки Excel Подключение к внешним данных и их импорт.

  • Экспортировать макросы и модули нельзя. При экспорте формы, отчета или таблицы с подчиненными формами, отчетами или таблицами экспортируется только главная форма, отчет или таблица. Все подчиненные формы, отчеты и таблицы следует экспортировать в Excel отдельно.

  • В ходе операции экспорта можно экспортировать лишь один объект базы данных. Однако после нескольких операций экспорта можно выполнить в Excel слияние нескольких листов.

К началу страницы

Подготовка к экспорту

Прежде чем выполнять операцию экспорта, следует проверить данные, которые будут экспортироваться, на предмет сообщений об ошибках и ошибочных значений. Ошибки рекомендуется устранить до экспорта данных в Excel. В противном случае в ходе экспорта могут возникнуть неполадки, а в ячейки листа Excel могут быть вставлены пустые значения. Дополнительные сведения о проблемах, которые могут возникнуть при экспорте данных в Excel, см. в разделе Решение проблем, связанных с отсутствующими и неверными значениями.

Если исходным объектом является таблица или запрос, определите, как требуется экспортировать данные: с сохранением форматирования или без него. Выбранный способ экспорта влияет на два аспекта целевого файла: объем экспортируемых данных и формат их отображения. В приведенной ниже таблице представлены результаты экспорта форматированных и неформатированных данных.

Экспорт

Исходный объект

Поля и записи

Форматирование

Без форматирования

Таблица или запрос

Примечание:  Формы и отчеты невозможно экспортировать без форматирования.

Экспортируются все поля и записи базового объекта.

Параметры свойства «Формат» пропускаются в ходе операции.

Для полей подстановки экспортируются только значения кодов подстановки.

Содержимое полей гиперссылок экспортируется в виде столбца текста, в котором ссылки отображаются в формате отображаемый_текст#адрес#.

С форматированием

Таблица, запрос, отчет или форма

Экспортируются только поля и записи, отображаемые в текущем представлении или объекте. Фильтрованные записи, скрытые столбцы таблицы, а также не отображаемые в форме или отчете поля не экспортируются.

В мастере соблюдаются параметры свойства «Формат».

В случае полей подстановки экспортируются значения подстановки.

При экспорте полей гиперссылок значения экспортируются в виде гиперссылок.

При экспорте полей форматированного текста текст экспортируется без форматирования.

  1. Выберите целевую книгу и ее формат. Имейте в виду, что отчеты можно экспортировать только в более старом формате XLS (но не в формате XLSX).

    В процессе экспорта Access предлагает указать имя конечной книги. В приведенной ниже таблице представлена сводка случаев создания новой книги или перезаписи имеющейся.

Целевая книга

Исходный объект

Экспортируемые данные

Результат

Не существует

Таблица, запрос, отчет или форма

Данные с форматированием или без него

В ходе операции экспорта создается книга.

Существует

Таблица или запрос

Данные без форматирования

Файл не перезаписывается. В книгу добавляется новый лист, которому присваивается имя объекта, из которого экспортируются данные. Если лист с таким именем уже существует, Access предлагает либо заменить содержимое соответствующего листа, либо указать другое имя нового листа.

Существует

Таблица, запрос, отчет или форма

Данные с форматированием

Файл перезаписывается экспортируемыми данными. Все имеющиеся листы удаляются, и создается новый лист с именем экспортируемого объекта. Данные листа Excel наследуют параметры форматирования исходного объекта.

Данные всегда добавляются в новый лист. Невозможно добавить данные в имеющийся лист или именованный диапазон.

К началу страницы

Выполнение экспорта

  1. Если целевая книга Excel открыта, закройте ее перед выполнением операции.

  2. На панели навигации исходной базы данных выберите объект, который требуется экспортировать.

    Экспорт только части данных

    Если объектом является таблица, запрос или форма и требуется экспортировать только часть данных, откройте объект в режиме таблицы и выберите необходимые записи.

    Открытие формы в режиме таблицы    

    1. Чтобы открыть форму, дважды щелкните ее.

    2. Щелкните форму правой кнопкой мыши, а затем щелкните элемент Режим таблицы. Если он недоступен, выполните действия, описанные ниже.

      1. Выберите пункт Режим конструктора.

      2. Нажмите клавишу F4, чтобы отобразить панель задач «Страница свойств».

      3. В раскрывающемся списке в верхней части этой панели выберите пункт Форма.

      4. На вкладке «Формат» панели «Страница свойств» установите значение Да для свойства Режим таблицы.

      5. На вкладке Конструктор в группе Представления выберите пункт Режим таблицы.

        Примечание:  Часть отчета экспортировать нельзя. Однако можно выбрать или открыть таблицу или запрос, на которых основан отчет, и затем экспортировать часть данных в этот объект.

  3. На вкладке Внешние данные в группе Экспорт нажмите кнопку Excel.

  4. В диалоговом окне Экспорт — Электронная таблица Excel просмотрите предлагаемые имена файлов рабочей книги Excel (Access использует имена исходных объектов). При необходимости имя файла можно изменить.

  5. В поле Формат файла выберите нужный формат файла.

  6. Если при экспорте таблицы или запроса требуется сохранить форматирование данных, установите флажок Экспортировать данные с макетом и форматированием. Дополнительные сведения см. в разделе Подготовка к операции экспорта.

    Примечание:  При экспорте формы или отчета этот флажок установлен по умолчанию и недоступен для изменения.

  7. Чтобы просмотреть конечный файл Excel после завершения операции экспорта, установите флажок Открыть целевой файл после завершения операции экспорта.

    Если исходный объект был открыт и одна или несколько записей для экспорта выделены до запуска операции, можно установить флажок Экспортировать только выбранные записи. Если требуется экспортировать все отображаемые записи, этот флажок необходимо снять.

    Примечание:  Если записи не выделены, этот флажок недоступен (неактивен).

  8. Нажмите кнопку ОК.

    Если в ходе экспорта возникает ошибка, в Access отображается сообщение с описанием ее причины. В противном случае приложение Access экспортирует данные и в соответствии с параметрами, выбранными на этапе 7, открывает либо не открывает целевую книгу в Excel. Затем в Access открывается диалоговое окно, в котором можно создать спецификацию со сведениями об экспорте.

К началу страницы

Что еще важно знать об экспорте

  • Сведения о том, как сохранить сведения об экспорте в виде спецификации, которую можно использовать повторно, см. в статье Сохранение параметров операции импорта или экспорта в виде спецификации.

  • Дополнительные сведения о запуске спецификаций см. в статье Выполнение сохраненной операции импорта или экспорта.

  • Дополнительные сведения о запуске спецификаций в определенное время см. в статье Планирование импорта или экспорта.

  • Сведения о том, как изменить имя спецификации, удалить ее или обновить имена исходных файлов, см. в статье Задачи управления данными.

К началу страницы

Решение проблем, связанных с отсутствующими и неверными значениями

В приведенной ниже таблице описаны различные способы устранения типичных ошибок.

Совет:  Если отсутствует всего несколько значений, введите их в книгу Excel самостоятельно, в противном случае исправьте исходный объект в базе данных Access и повторите экспорт.

Источник проблемы

Описание и решение

Вычисляемые поля

Экспортируются результаты вычисляемых полей; выражения, на основе которых производится вычисление, не экспортируются.

Многозначные поля

Многозначные поля экспортируются в виде списка значений, разделенных точками с запятой (;).

Рисунки, объекты и вложения

Графические элементы (например, эмблемы, содержимое полей объектов OLE и вложения, которые содержатся в исходных данных) не экспортируются. Их следует добавить на лист вручную после завершения операции экспорта.

График

При экспорте формы или отчета, содержащих объект Microsoft Graph, он не экспортируется.

Данные в неверном столбце

Значения Null на целевом листе иногда заменяются данными, которые должны находиться в следующем столбце.

Отсутствующие значения даты

Значения дат, предшествующих 1 января 1900 г., не экспортируются. Соответствующие ячейки на листе содержат значения Null.

Отсутствующие выражения

Выражения, которые используются для вычислений, не экспортируются в Excel. Экспортируются только результаты вычислений. Формулу следует добавить в рабочий лист Excel вручную после завершения операции экспорта.

Отсутствующие подчиненные формы, отчеты и таблицы

При экспорте формы, отчета или таблицы экспортируется только главная форма, отчет или таблица. Необходимо повторить операцию экспорта для всех подчиненных форм, отчетов и таблиц, которые требуется экспортировать.

Отсутствующие или неправильно отформатированные столбцы

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

Форматирование столбца в Excel

  1. Откройте целевую книгу Excel и перейдите на лист с экспортированными данными.

  2. Щелкните нужный столбец или выделенный диапазон ячеек правой кнопкой мыши и выберите пункт Формат ячеек.

  3. На вкладке Число в группе Числовые форматы выберите нужный формат, например Текстовый, Числовой, Дата или Время.

  4. Нажмите кнопку ОК.

Значение «#» в столбце

Значение # может содержаться в столбце, который соответствует логическому полю формы. Это может быть результатом запуска операции экспорта из области переходов или режима формы. Чтобы устранить эту ошибку, откройте форму в режиме таблицы, прежде чем экспортировать данные.

Индикаторы или значения ошибки

Проверьте ячейки на наличие индикаторов ошибки (треугольников зеленого цвета в углу ячеек) или значений ошибки (строк, которые начинаются со знака #, а не с нужных данных).

К началу страницы

Время на прочтение
4 мин

Количество просмотров 54K

Приветствую всех.
При автоматизации небольших магазинов для хранения данных часто используют PostgreSQL. И часто возникает потребность экспортировать эти данные в Excel. В этой статье я расскажу вам как я решал эту задачу. Естественно, матерые специалисты вряд ли откроют для себя что-то новое. Однако, материал будет интересен тем кто «плавает» в этой теме.

Итак, естественно, самый просто и банальный способ экспортировать данные результатов запросов в csv-файлы, а затем открыть их в Excel. Это выглядит вот так:

COPY (SELECT * FROM your_table) TO 'C:/temp/123.csv' CSV;

Однажды, ко мне обратился товарищ, которому нужно было получать различные данные из PostgreSQL. Причем, запросы на предоставление данных менялись день ото дня. Казалось бы первым способом можно было бы спокойно пользоваться, но в нем есть существенные недостатки:

  • во-первых, вставка данных из PostgreSQL происходит именно на сервере;
  • во-вторых, можно конечно заморочиться написать batch-скрипт, который будет удаленно вызывать этот запрос на сервере, затем этот файл скопировать на компьютер пользователя и инициировать открытие в Excel.

Но я захотел ускорить процесс как можно быстрее, и я нашел способ.

Шаги:

1. Идем по ссылке и в зависимости от разрядности компьютера скачиваем установщик ODBC драйвера. Установка его проста и не требует особых знаний.

2. Чтобы пользователи могли со своих компьютеров цепляться к БД не забудьте в файле pg_hba.conf установить параметры для IP-адресов, с которых можно производить подключения:

В данном примере, что все рабочие станции смогут подключаться к серверу с БД:

3. Далее через Excel просто генерируем файл динамического запроса к данным *.dqy. Далее этот файл просто можно менять по своему усмотрению. Можно прям ниже следующий текст взять, скопировать в блокнот и там отредактировать, сохранив файл *.dqy. Вводим имя файла и расширение dqy. Выбираем типа файла ВСЕ(All files):

XLODBC
1
DRIVER={PostgreSQL Unicode};DATABASE=your_base;SERVER=192.168.12.12;PORT=5432;UID=postgres;PASSWORD=postgres;SSLmode=disable;ReadOnly=0;Protocol=7.4;FakeOidIndex=0;ShowOidColumn=0;RowVersioning=0;ShowSystemTables=0;ConnSettings=;Fetch=100;Socket=4096;UnknownSizes=0;MaxVarcharSize=255;MaxLongVarcharSize=8190;Debug=0;CommLog=0;Optimizer=0;Ksqo=1;UseDeclareFetch=0;TextAsLongVarchar=1;UnknownsAsLongVarchar=0;BoolsAsChar=1;Parse=0;CancelAsFreeStmt=0;ExtraSysTablePrefixes=dd_;LFConversion=1;UpdatableCursors=1;DisallowPremature=0;TrueIsMinus1=0;BI=0;ByteaAsLongVarBinary=0;UseServerSidePrepare=0;LowerCaseIdentifier=0;GssAuthUseGSS=0;XaOpt=1
select * from your_table

DATABASE – указывается наименование БД к которой будет производиться подключение;
SERVER – адрес сервера;
PASSWORD – пароль на подключение к БД.

Обратите внимание, что в большом тексте указываются параметры подключения к БД и ваша БД. Также можно еще сконфигурировать множество параметров подключения

В последней строке пишется сам запрос. Далее сохраняем файл. Если на компьютере установлен Microsoft Excel, тогда файл сразу же приобретет пиктограмму:

При запуске файла будет выдано диалоговое окно. Смело нажимаем «Включить»:

И получаем результат запроса из БД:

Теперь можно создать несколько таких файлов и спокойно скопировать их на рабочий стол пользователя:

Кстати, я пошел немного дальше. Откопал старый добрый VB6. Можно так сделать с любым языком программирования. Сделал форму, которая по выбранной дате запрашивает данные из БД, путем генерации этого *.dqy файла:

Затем немного покодил (вот часть кода):

sq1 = "your_query"
   
   Open "report.dqy" For Output As #1
   Print #1, "XLODBC"
   Print #1, "1"
   Print #1, "DRIVER={PostgreSQL Unicode};DATABASE=your_db;SERVER=192.168.12.12;PORT=5432;UID=postgres;PASSWORD=postgres;SSLmode=disable;ReadOnly=0;Protocol=7.4;FakeOidIndex=0;ShowOidColumn=0;RowVersioning=0;ShowSystemTables=0;ConnSettings=;Fetch=100;Socket=4096;UnknownSizes=0;MaxVarcharSize=255;MaxLongVarcharSize=8190;Debug=0;CommLog=0;Optimizer=0;Ksqo=1;UseDeclareFetch=0;TextAsLongVarchar=1;UnknownsAsLongVarchar=0;BoolsAsChar=1;Parse=0;CancelAsFreeStmt=0;ExtraSysTablePrefixes=dd_;LFConversion=1;UpdatableCursors=1;DisallowPremature=0;TrueIsMinus1=0;BI=0;ByteaAsLongVarBinary=0;UseServerSidePrepare=0;LowerCaseIdentifier=0;GssAuthUseGSS=0;XaOpt=1"
   Print #1, sq1
   Close #1
   Shell "CMD /c report.dqy"

Результат получился тот же — данные из Excel, и пользователю удобно. Да, кстати, в строке:

DRIVER={PostgreSQL Unicode};

если речь идет о 64-битном процессоре и драйвере ODBC, установленном для 64 бит, то надо писать:

DRIVER={PostgreSQL Unicode(x64)};

Ну, и самое главное, несмотря на всю простоту способа, у него есть конечно недостатки: запрос можно писать только в одну строку, т.е. записать строку вот в таком виде не получиться. Нужно только в одну:

SELECT * FROM
un_cg_product

— Не сможет обрабатывать на изменение данных типа:

UPDATE 

или

INSERT

Ну и может выводить только результат запроса в виде списка, т.е. красивый документ сделать не получиться. На этом все. Надеюсь данный способ кому-нибудь пригодиться. Буду рад получить ваши рекомендации по усовершенствованию моего метода или альтернативного решения данной проблемы.

Если нужно быстро и единоразово выгрузить данные из таблицы MySQL в Exel файл, то помогут следующие способы:

1

Экспорт через PHPMyAdmin

В PHPMyAdmin при экспорте можно выбрать формат «CSV for MS Excel»:

Экспорт через PHPMyAdmin

При открытии полученного файла в Excel будет сбита кодировка:

Excel будет сбита кодировка

Чтобы это исправить, нужно открыть csv файл в редакторе типа Notepad++ и изменить кодировку на ANSI:

Notepad++ изменить кодировку на ANSI:

Результат:

2

Экспорт через HTML таблицу

Смысл метода состоит в том чтобы PHP-скриптом сформировать HTML таблицу:

<?php
$dbh = new PDO('mysql:dbname=db_name;host=localhost', 'логин', 'пароль');
$sth = $dbh->prepare("SELECT * FROM `test`");
$sth->execute();
$items = $sth->fetchAll(PDO::FETCH_ASSOC);
?>
		
<table>
	<tr>
		<td>ID</td>
		<td>Категория</td>
		<td>Название</td>
		<td>Описание</td>
	</tr>
	<?php foreach($items as $row): ?>
	<tr>
		<td><?php echo $row['id']; ?></td>
		<td><?php echo $row['category']; ?></td>
		<td><?php echo $row['name']; ?></td>
		<td><?php echo $row['text']; ?></td>
	</tr>
	<?php endforeach; ?>
</table>

PHP

Результат работы скрипта:

Полученную таблицу копируем и вставляем в чистый лист Microsoft Exel:

3

Экспорт через PHPExcel

Третий метод – сформировать xls-файл в библиотеке PHPExcel (PHPExcel.zip).

//spl_autoload_unregister('autoload');
require_once __DIR__ . '/PHPExcel/Classes/PHPExcel.php';
require_once __DIR__ . '/PHPExcel/Classes/PHPExcel/Writer/Excel2007.php';

$xls = new PHPExcel();
$xls->setActiveSheetIndex(0);
$sheet = $xls->getActiveSheet();

// Шапка
$sheet->getStyle("A1:D1")->getFont()->setBold(true);
$sheet->setCellValue("A1", 'ID');
$sheet->setCellValue("B1", 'Категория');
$sheet->setCellValue("C1", 'Название');
$sheet->setCellValue("D1", 'Описание');

// Выборка из БД
$dbh = new PDO('mysql:dbname=db_name;host=localhost', 'логин', 'пароль');
$sth = $dbh->prepare("SELECT * FROM `test`");
$items = $sth->fetch(PDO::FETCH_ASSOC);

$index = 2;
foreach ($items as $row) {
	$sheet->setCellValue("A" . $index, $row['id']);
	$sheet->setCellValue("B" . $index, $row['category']);
	$sheet->setCellValue("C" . $index, $row['name']);
	$sheet->setCellValue("D" . $index, $row['name']);
	$index++;
}

// Отдача файла в браузер
header("Expires: Mon, 1 Apr 1974 05:00:00 GMT");
header("Last-Modified: " . gmdate("D,d M YH:i:s") . " GMT");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
header("Content-type: application/vnd.ms-excel" );
header("Content-Disposition: attachment; filename=prods.xlsx");
 
$objWriter = new PHPExcel_Writer_Excel2007($xls);
$objWriter->save('php://output'); 

exit(); 

PHP

Результат:

Is there any tool to export a MySQL db structure to an Excel file?
For example:

1   ID  int(10)  not null  pri   0  index   comment

Thanks for any help.

mr.soroush's user avatar

mr.soroush

1,1122 gold badges14 silver badges31 bronze badges

asked Aug 1, 2013 at 8:40

Long Vu's user avatar

3

Here is a much simpler way:

  1. From phpMyAdmin, select your database, then select the Structure tab.
  2. Scroll down to the bottom of the list of tables.
  3. Click on Data Dictionary.
  4. Select all, and then copy/paste into Excel.

This method produces a report listing all tables, plus all fields within each table including the field type, if NULL is allowed, default value, links, comments, and MIME. It also lists all indexes including type, uniqueness, whether the index is packed, and index comments.

answered Nov 20, 2016 at 20:58

Figment's user avatar

FigmentFigment

1791 silver badge4 bronze badges

1

You could query information_schema.columns to obtain the required data:

SELECT * from information_schema.columns
WHERE table_schema = 'db_2_66028'
AND table_name = 'tbl';
  • table_schema is the name of your db
  • table_name the name of the table. If you omit this, you will query column information for all your tables.

See http://sqlfiddle.com/#!2/23f9b/1 for live demo. Here I used SELECT * for simplicity, but you will probably have to select only the require columns for your specific need.


In addition, MySQL is able to export query result as CSV file, a text format that Excel, like any other spreadsheet, might easily read. Something like that might do the trick:

SELECT * from information_schema.columns
WHERE table_schema = 'db_2_66028'
AND table_name = 'tbl'
INTO OUTFILE '/tmp/result.csv'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
ESCAPED BY ‘\’
LINES TERMINATED BY 'n'

answered Aug 1, 2013 at 9:32

Sylvain Leroux's user avatar

Sylvain LerouxSylvain Leroux

49.3k7 gold badges102 silver badges123 bronze badges

This does what you want:

SHOW FULL FIELDS FROM table

answered Aug 1, 2013 at 9:01

Mark's user avatar

MarkMark

2,38211 gold badges29 silver badges49 bronze badges

1

You could export it to a comma seperated file (.csv) using a simple php script. That can be imported in Excel.

For example:

<?php
    $dbc = mysql_connect( $a, $b, $c );
    $q = mysql_query( "SELECT * FROM table", $dbc );
    while( $row = mysql_fetch_array( $q ) ) {
      echo "{$row[0]},{$row[1]},{$row[2]}n";
    }
?>

answered Aug 1, 2013 at 8:48

Sumurai8's user avatar

Sumurai8Sumurai8

20.2k10 gold badges70 silver badges99 bronze badges

Понравилась статья? Поделить с друзьями:
  • Как выделить весь столбец или строку в excel
  • Как выгрузить excel в ворд
  • Как выглядит программа word
  • Как выделить весь столбец значений в excel
  • Как выгрузить dataframe в excel