【问题标题】:How to bulk insert the parsed html table data in database in coldfusion?如何在coldfusion中将解析的html表数据批量插入数据库中?
【发布时间】:2018-04-14 23:02:04
【问题描述】:

我是编程新手,被困在将解析的 html 表数据插入数据库的任务中。我试过这个链接bulk insert in coldfusion 但它不起作用。

我认为我的情况不同。这是我的代码。

sql = '';
records = '';
while(i<rows_length){
     // <cfif i NEQ 1 && home_lineup NEQ 1>,</cfif>
     writeoutput('<tr>');
    for(j=1; j<cols_length; j++){
            stat_cell = get_lineup.select('##sl-away-lineup-table tr:eq(#i#) td:eq(#j#)').text();

        //records =records & #stat_cell# & ',';
         // <cfqueryparam cfsqltype="cf_sql_integer" value="#users[u].firstname#">,
         // <cfqueryparam cfsqltype="cf_sql_varchar" value="#users[u].lastname#">,
         // <cfqueryparam cfsqltype="cf_sql_varchar" value="#users[u].email#">,
         // <cfqueryparam cfsqltype="cf_sql_integer" value="#users[u].firstname#">,
         // <cfqueryparam cfsqltype="cf_sql_integer" value="#users[u].firstname#">,
         // <cfqueryparam cfsqltype="cf_sql_integer" value="#users[u].firstname#">,
         // <cfqueryparam cfsqltype="cf_sql_varchar" value="#users[u].lastname#">,
         // <cfqueryparam cfsqltype="cf_sql_varchar" value="#users[u].email#">,
         // <cfqueryparam cfsqltype="cf_sql_varchar" value="#users[u].lastname#">,
         // <cfqueryparam cfsqltype="cf_sql_varchar" value="#users[u].email#">,
        writeoutput('<td>#stat_cell#</td>'); // this is the cell data I want to batch/bulk insert each cell data 
        records = records& #stat_cell# &','; //it is not a good idea i think to concat like this

    }
}

我不知道如何知道哪个单元格属于哪个数据类型,以便我可以传入查询参数,但另一个问题是如何进行查询(concat 或其他任何内容)以便我可以插入数据库?

注意:此代码是用 cfscript 编写的,但您可以提供 cfscript 以外的建议。

【问题讨论】:

  • 当您说parsed html table data 时,您在说什么?通常我们查询数据库以生成 HTML 表,而不是相反。我真的不是建议你使用一个也是有效 XML 的 HTML 表,并且你想将它加载到一个 DB 表中。
  • @JamesAMohler 我不想在数据库中加载任何 html 表。我有一个 html 表,我会废弃 html ,解析它,然后想将该数据存储在数据库中。清楚吗?
  • 您希望从&lt;table&gt; 创建行和列,然后将其批量插入到数据库中?

标签: sql database coldfusion bulkinsert batch-insert


【解决方案1】:

最好的办法是使用 jquery 将表格转换为 JSON 数据。 http://www.github.developerdan.com/table-to-json/

我会按原样将该 JSON 字符串保存到一个字段中。只是因为我不会假设字段名称总是匹配的。但至少您将拥有一个智能对象中的数据,您可以稍后检索,并使用deserializeJSON() 作为自己的查询进行操作: https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-functions/functions-c-d/DeserializeJSON.html

【讨论】:

  • 我不太确定表到 JSON 的方法。我会考虑首先通过parsexml() 运行它并对其进行迭代。当然,假设 HTML 表也是 XML。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-06-06
  • 1970-01-01
  • 2023-03-05
  • 2016-08-24
相关资源
最近更新 更多