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