【问题标题】:exporting table structure to Excel files with phpmyadmin使用 phpmyadmin 将表结构导出到 Excel 文件
【发布时间】:2012-09-06 03:24:23
【问题描述】:

我将在 Phpmyadmin(仅限结构)中从我的表结构创建一个 excel 文件。我发现它有一个 CSV 输出,但它只给我数据。
Phpmyadmin 是否有任何功能可以做这样的事情?

编辑: 这是我的 sql:

SELECT * INTO OUTFILE 'c://wamp/my_table_structure.csv'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES  TERMINATED BY '\n'
FROM   INFORMATION_SCHEMA.COLUMNS
WHERE  TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'dt_user'

为什么它返回一个空文件?

【问题讨论】:

  • 您使用的是哪个版本的phpmyadmin?
  • 你的意思是你当前的表格到excel文件(.xls)?

标签: mysql phpmyadmin


【解决方案1】:

eggyal answer 扩展到整个数据库上的所有表

mysql代码:

SELECT * INTO OUTFILE '/path/to/my_table_structure.csv'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES  TERMINATED BY '\n'
FROM   information_schema.COLUMNS 
WHERE TABLE_SCHEMA = 'the_db_to_export' AND TABLE_NAME IN (SELECT DISTINCT TABLE_NAME FROM information_schema.COLUMNS WHERE  TABLE_SCHEMA = 'the_db_to_export')
ORDER BY TABLE_NAME ASC;

注意:information_schema 可以是小写或大写取决于您的安装

【讨论】:

    【解决方案2】:

    在 phpMyAdmin 中找到您的表,然后选择导出选项卡

    为 MS Ecel 选择 CSV 格式

    只需打开一个新的 Excel 文件,然后单击数据选项卡,然后单击从文本/CSV 并找到您在 phpMyAdmin 中创建的文件。然后单击加载。 Excel 将像您数据库中的表一样创建列,您可以根据需要修改分隔符。

    【讨论】:

      【解决方案3】:

      现在,phpmyadmin 有一个名为 CSV for Microsoft Excel 的导出格式,这一切都是自动完成的,您只需在表格视图上单击导出并选择格式。

      【讨论】:

        【解决方案4】:

        您不需要插件即可复制和粘贴到 Excel。

        1. 在 phpmyadmin 中选择要从中导出架构的表
        2. 点击页面底部的打印视图
        3. 选择整个(或部分)表格并点击 ctrl-c 进行复制
        4. 打开一个新的 Excel 工作表并选择第一个单元格
        5. 点击 ctrl-v 粘贴

        【讨论】:

          【解决方案5】:

          我遇到了同样的问题,我通过 PHPMyadmin 和 chrome 插件的组合实现了。这可能不是直接的方法,但它确实有效。 (假设您使用的是谷歌浏览器)

          • 在新选项卡中打开打印视图后,单击地址栏中的插件图标,

          • 单击插件图标,您将看到将表格复制到剪贴板或导出到 Google 文档的选项。

          • 我做了一个复制并将表格粘贴到 Excel 中。您还可以导出到 google 文档。

          注意:这只是一种解决方法,只是想分享一下。请在 cmets 和 TD 上放轻松 :) 反正我喜欢 eggyal 提出的方式!

          【讨论】:

          • 将打印视图直接复制粘贴到 LibreOffice 中,无需 chrome 插件即可为我制作,感谢您的提示!
          【解决方案6】:

          您可以按照以下方式运行SELECT ... INTO OUTFILE 查询:

          SELECT * INTO OUTFILE '/path/to/my_table_structure.csv'
          FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
          LINES  TERMINATED BY '\n'
          FROM   INFORMATION_SCHEMA.COLUMNS
          WHERE  TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'my_table'
          

          【讨论】:

          • 我是否应该指定数据库?只需更改my_table?
          • @hamedkh:DATABASE() 函数返回当前选定数据库的名称。如果您当前选择了包含my_table 的数据库,则可以如上所述使用该功能;否则用字符串文字替换它,例如'my_db'.
          • @hamedkh:您是否也尝试过明确命名数据库?
          • 谢谢它确实有效...有什么方法可以只获得列吗?我只需要它们。
          • @hamedkh: SELECT COLUMN_NAME INTO OUTFILE ...
          猜你喜欢
          • 1970-01-01
          • 2011-03-17
          • 1970-01-01
          • 2017-08-12
          • 1970-01-01
          • 1970-01-01
          • 2011-10-25
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多