var mysql = require('mysql');
var connection = mysql.createConnection({
host : 'localhost',
user : 'root', // your root username (leave as root)
database : 'join_us', // the name of your db (create this if you haven't already)
password : process.env.MYSQL_PW // your root user's password
});
//If you want to impor password then
export MYSQL_PW='your-password-here'
//INSERT
var person = {
email: faker.internet.email(),
created_at: faker.date.past()
};
var end_result = connection.query('INSERT INTO users SET ?', person, function(err, result) {
if (err) throw err;
console.log(result);
});
console.log(end_result.sql);
connection.end();
//Insert Multiple data
var data = [];
for(var i = 0; i < 500; i++){
data.push([
faker.internet.email(),
faker.date.past()
]);
}
var q = 'INSERT INTO users (email, created_at) VALUES ?';
connection.query(q, [data], function(err, result) {
console.log(err);
console.log(result);
});
connection.end();
//Connect Express and Sql
app.get("/", function(req, res){
var q = 'SELECT COUNT(*) as count FROM users';
connection.query(q, function (error, results) {
if (error) throw error;
var msg = "We have " + results[0].count + " users";
res.send(msg);
});
});
app.post('/register', function(req,res){
var person = {email: req.body.email};
connection.query('INSERT INTO users SET ?', person, function(err, result) {
console.log(err);
console.log(result);
res.redirect("/");
});
});
//Data base Trigger
DELIMITER $$
CREATE TRIGGER must_be_adult
BEFORE INSERT ON users FOR EACH ROW
BEGIN
IF NEW.age < 18
THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'Must be an adult!';
END IF;
END;
$$
DELIMITER ;
DELIMITER $$
CREATE TRIGGER example_cannot_follow_self
BEFORE INSERT ON follows FOR EACH ROW
BEGIN
IF NEW.follower_id = NEW.following_id
THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'Cannot follow yourself, silly';
END IF;
END;
$$
DELIMITER ;
//It happen when we unfollow a user then create a row in unfollows table
DELIMITER $$
CREATE TRIGGER create_unfollow
AFTER DELETE ON follows FOR EACH ROW
BEGIN
INSERT INTO unfollows
SET follower_id = OLD.follower_id,
followee_id = OLD.followee_id;
END$$
DELIMITER ;