Skip to content

Commit 98a440c

Browse files
authored
Modify insert and update queries to return row (#5)
Fix issues with ID not appearing Add error checking so no undefined null pointer exceptions
1 parent c9b320c commit 98a440c

File tree

1 file changed

+13
-4
lines changed

1 file changed

+13
-4
lines changed

queries.js

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,13 @@ const getUserById = (request, response) => {
3030
const createUser = (request, response) => {
3131
const { name, email } = request.body
3232

33-
pool.query('INSERT INTO users (name, email) VALUES ($1, $2)', [name, email], (error, results) => {
33+
pool.query('INSERT INTO users (name, email) VALUES ($1, $2) RETURNING *', [name, email], (error, results) => {
3434
if (error) {
3535
throw error
36+
} else if (!Array.isArray(results.rows) || results.rows.length < 1) {
37+
throw error
3638
}
37-
response.status(201).send(`User added with ID: ${results.insertId}`)
39+
response.status(201).send(`User added with ID: ${results.rows[0].id}`)
3840
})
3941
}
4042

@@ -43,13 +45,20 @@ const updateUser = (request, response) => {
4345
const { name, email } = request.body
4446

4547
pool.query(
46-
'UPDATE users SET name = $1, email = $2 WHERE id = $3',
48+
'UPDATE users SET name = $1, email = $2 WHERE id = $3 RETURNING *',
4749
[name, email, id],
4850
(error, results) => {
4951
if (error) {
5052
throw error
53+
}
54+
if (typeof results.rows == 'undefined') {
55+
response.status(404).send(`Resource not found`);
56+
} else if (Array.isArray(results.rows) && results.rows.length < 1) {
57+
response.status(404).send(`User not found`);
58+
} else {
59+
response.status(200).send(`User modified with ID: ${results.rows[0].id}`)
5160
}
52-
response.status(200).send(`User modified with ID: ${id}`)
61+
5362
}
5463
)
5564
}

0 commit comments

Comments
 (0)