【问题标题】:CSV Table Upload for Article文章的 CSV 表格上传
【发布时间】:2011-04-29 14:22:58
【问题描述】:

我有一个 PHP/MySQL 的文章网站。我想让某人做的是上传一个 CSV 文件并将其显示为文章本身中的表格。我想避免每次都创建一个表,因为我很容易得到数千个表。

考虑以最佳方式有效且永久地存储此类表信息?

【问题讨论】:

    标签: php mysql create-table import-from-csv


    【解决方案1】:

    除非您以后要操作数据,否则将 CSV 文件内容转换为 HTML 表格并将其存储为文章 html 的一部分可能会容易得多。对csv to html table 的简单搜索会返回很多很多预先编写的函数,其中一些在php 中;检查出来。

    【讨论】:

      【解决方案2】:

      考虑将 csv 数据简单地存储为文件。呈现页面时,将 csv 文件的内容显示为表格。应用 JavaScript/jQuery 逻辑以获得更好的用户体验(例如排序、过滤)。

      如果您不想处理或加入 csv 文件中的信息,则无需将其存储在关系 mysql 表中。

      【讨论】:

        【解决方案3】:

        为每个 CSV 创建一个新的数据库表听起来有点矫枉过正。您永远不必以这种方式修改您的数据库模式。相反,请以允许插入此类数据的方式设计您的架构。

        这是一种可能的解决方案:您可以有一个包含以下内容的表:

        1. 唯一标识表的 ID
        2. 唯一标识该表中一行的 ID
        3. 列的名称
        4. 单元格的值

        SQL:

        CREATE TABLE tables(
          table_id int,
          row_number int,
          column_name varchar(50),
          cell_value varchar(50) 
        )
        
        --row 1
        INSERT INTO tables VALUES (1, 1, 'name', 'George Washington');
        INSERT INTO tables VALUES (1, 1, 'dob', 'April 30, 1789');
        
        --row 2
        INSERT INTO tables VALUES (1, 2, 'name', 'John Adams');
        INSERT INTO tables VALUES (1, 2, 'dob', 'March 4, 1797');
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-07-07
          • 2019-03-24
          • 2021-09-23
          • 1970-01-01
          • 2011-01-31
          • 2017-07-26
          相关资源
          最近更新 更多