Skip to content

Instantly share code, notes, and snippets.

@ronsims2
Created November 16, 2015 01:52
Show Gist options
  • Select an option

  • Save ronsims2/dff8c237f23e7bac6f78 to your computer and use it in GitHub Desktop.

Select an option

Save ronsims2/dff8c237f23e7bac6f78 to your computer and use it in GitHub Desktop.
A Node script that generates a SQL insert file for the 50 U.S. states.
fs = require('fs');
var states = [['AL', 'Alabama'],
['AK', 'Alaska'],
['AZ', 'Arizona'],
['AR', 'Arkansas'],
['CA', 'California'],
['CO', 'Colorado'],
['CT', 'Connecticut'],
['DE', 'Delaware'],
['FL', 'Florida'],
['GA', 'Georgia'],
['HI', 'Hawaii'],
['ID', 'Idaho'],
['IL', 'Illinois'],
['IN', 'Indiana'],
['IA', 'Iowa'],
['KS', 'Kansas'],
['KY', 'Kentucky'],
['LA', 'Louisiana'],
['ME', 'Maine'],
['MD', 'Maryland'],
['MA', 'Massachusetts'],
['MI', 'Michigan'],
['MN', 'Minnesota'],
['MS', 'Mississippi'],
['MO', 'Missouri'],
['MT', 'Montana'],
['NE', 'Nebraska'],
['NV', 'Nevada'],
['NH', 'New Hampshire'],
['NJ', 'New Jersey'],
['NM', 'New Mexico'],
['NY', 'New York'],
['NC', 'North Carolina'],
['ND', 'North Dakota'],
['OH', 'Ohio'],
['OK', 'Oklahoma'],
['OR', 'Oregon'],
['PA', 'Pennsylvania'],
['RI', 'Rhode Island'],
['SC', 'South Carolina'],
['SD', 'South Dakota'],
['TN', 'Tennessee'],
['TX', 'Texas'],
['UT', 'Utah'],
['VT', 'Vermont'],
['VA', 'Virginia'],
['WA', 'Washington'],
['WV', 'West Virginia'],
['WI', 'Wisconsin'],
['WY', 'Wyoming'],
['BC', 'British Columbia', 2],
['ON', 'Ontario', 2],
['NL', 'Newfoundland and Labrador', 2],
['NS', 'Nova Scotia', 2],
['PE', 'Prince Edward Island', 2],
['NB', 'New Brunswick', 2],
['QC', 'Quebec', 2],
['MB', 'Manitoba', 2],
['SK', 'Saskatchewan', 2],
['AB', 'Alberta', 2],
['NT', 'Northwest Territories', 2],
['NU', 'Nunavut', 2],
['YT', 'Yukon Territory', 2]];
var stmt = '\n([ABBRV], [NAME], [COUNTRY])';
var newStmt = 'INSERT INTO state (state_abbrv, state_name, state_country) VALUES ';
for(var i = 0; i < states.length; i++){
var abbrv = "'" + states[i][0] + "'";
var name = "'" + states[i][1] + "'";
var country = states[i][2] ? "'" + states[i][2] + "'" : "'" + 1 + "'";
newStmt += stmt.replace('[ABBRV]', abbrv).replace('[NAME]', name).replace('[COUNTRY]', country);
if (i < (states.length - 1)) {
newStmt += ',';
}
}
newStmt +=';';
fs.writeFile('states.sql', newStmt, 'utf8', function(){
console.log('Success');
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment