PostgreSQL Operation with Node.js

Previously we have discussed Node.js Database connectivity with PostgreSQL.Today I have a prepared a complete tutorial of Basic SQL Operations like Creation,Insertion and Selection.We have discussed these Operations in different three  cases.

Case 1: for creating a table
Case 2: for Inserting values
Case 3: for Selection Operation


const readline = require('readline');

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});
console.log("Press 1 for create new table");
console.log("Press 2 for insert Operation");
console.log("Press 3 for fetch Data from Database");
rl.question('Enter your choice? ', (choice) => {
    var inputChoice = parseInt(choice);
    var pg = require("pg");
    var connectStr = "pg://postgres:root_123@localhost:5432/NewDatabase";
    var client = new pg.Client(connectStr);
 
    client.connect();

    switch (inputChoice) {
        case 1:
            // Create table 
            var executeQuery = client.query("CREATE TABLE IF NOT EXISTS empDetail(firstname varchar(64), lastname varchar(64))");
            executeQuery.on("end", () => {
                client.end();
            });
              console.log("Your table has been created ...");
            break;
        case 2:
             // Insert details inside table 
            var executeQuery = client.query("Insert Into empDetail(firstname, lastname) values('Ronald', 'McDonal')");
            executeQuery.on("row", function(row, result) {
                result.addRow(row);
            });
            console.log("Your Insert Operation has been Completed");
            break;
        case 3:
            // Select details from table
            console.log("You wnat to retreive Data");
            var executeQuery = client.query("SELECT * From empDetail");
            executeQuery.on("end", function(result) {
                var empDetail = JSON.parse(JSON.stringify(result.rows, null, " "));
                console.log(empDetail.length);
                for (var i = 0; i < empDetail.length; i++) {
                    console.log("Details ::" + empDetail[i].firstname + " ********* " + empDetail[i].lastname);

                }
            });

            break;
        default:
            console.log("Wrong Choice ");
            break;
    }
    rl.close();
});

OutPut :