ConvertNameValuePairsToTableInsertSQL

This is designed to process name value pairs by converting them to JavaScript objects, then generate SQL insert statements from those objects.

by ksevksev

HTML

<div>Output:</div>
<div id="display" style="border: thin red solid;">hey</div>
<div id="max" style="border: thin green solid;">max</div>

JavaScript

var str = "",
    temp = null,
    keys = [],
    values = [],
    keyArray = [],
    objArray = [],
    maxValLength = 0,
    query="";

/*
objArray.push({"BIN":"9364","STREET":"4102 GRENWICH LN","CITY":"MOUNT LAUREL","STATE":"NJ","ZIP":"08054","ERC":"251825.44","PUSHPIN_BLDG_VALUE":"95300","PUSHPIN_CONSTRUCTION_METHOD":"10","PUSHPIN_TAX_YEAR":"2011","XT_BASEMENT_INCLUDED":"0","XT_EWFO_AL":"100","XT_EWF_RMP":"100","XT_EWT_FRW":"100","XT_USER_TOTAL_SF":"1695","XT_YEAR_BUILT":"2001"});
objArray.push({"BIN":"18222","STREET":"47 CHAPEL HILL RD","CITY":"MOUNT LAUREL","STATE":"NJ","ZIP":"08054","ERC":"324096.61","PUSHPIN_BLDG_VALUE":"162700","PUSHPIN_CONSTRUCTION_METHOD":"10","PUSHPIN_TAX_YEAR":"2011","XT_BASEMENT_INCLUDED":"0","XT_EWFO_AL":"100","XT_EWF_RMP":"100","XT_EWT_FRW":"100","XT_PU_1":"100","XT_USER_TOTAL_SF":"2428","XT_YEAR_BUILT":"2001"});
//*/

for (var i = 0; i < objArray.length; i++)
{
    temp = objArray[i];
    keys = [];
    values = [];
    for(var key in temp)
    {
        //    Only put values that exist into the objects
        if (temp[key])
        {
            keys.push(key);
            values.push(temp[key]);
        }
    }
    query += "insert into kms_temp_pushpin_batch_db(";
    for (var j = 0; j < keys.length; j++)
    {
        query += keys[j] + ", ";
    }
    query=query.substr(0, query.length - 2);
    query += ") values (";
    for (var j = 0; j < keys.length; j++)
    {
        var num = keys[j] === 'BIN' || keys[j] === 'ERC';
        if (!num) {query += "'";}
        query += values[j];
        if (!num) {query += "'";}
        query += ", ";
    }
    query=query.substr(0, query.length - 2);
    query += ");<br>";
}

$("#display").html(query);