如何在coldfusion中将解析后的html表数据批量插入数据库?

时间:2018-04-14 23:02:04

标签: sql database coldfusion bulkinsert batch-insert

我是编程新手,陷入了将解析后的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以外的建议。

1 个答案:

答案 0 :(得分:0)

最好的办法是使用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