MySql Проводка 2 столов - PullRequest
1 голос
/ 17 июня 2020

Я пытаюсь изучить mySql DB, у меня есть 2 таблицы, с которыми я работаю, одна для пользователей и одна для кошек, которые публикуют зарегистрированные пользователи.

USERS:
+----+---------+------------------+----------+--------+
| id | name    | email            | password | cats   |
+----+---------+------------------+----------+--------+
|  3 | omar    | omar@hotmail.com | omar     | []     |
| 14 | dana    | dana@gmail.com   | anad     | []     |
|  7 | mama    | mami@gmail.com   | mama     | []     |
|  9 | tata    | tata@gmail.com   | tata     | []     |
+----+---------+------------------+----------+--------+  

CATS:
+----+---------+----------------+---------+
| id | name    | age    | breed | ownerId |
+----+---------+--------+-------+---------+
|  5 | mimi    |      2 | Grey  |      14 |
| 10 | Negri   |     19 | black |       3 |
+----+---------+----------------+---------+

Я хочу, чтобы каждый раз, когда кошка размещается в базе данных CATS, я хочу, чтобы этот идентификатор catId отображался в базе данных USERS в массиве кошек идентификатора владельца. Например, кошка Мими имеет ID = 5 и ownerID = 14. Если вы посмотрите в таблице пользователей, ID 14 соответствует пользователю Дана. Я хочу, чтобы идентификатор кошек (5) появился в массиве кошек Даны. Это код, который у меня есть: функции, которые отправляют нового кота в базу данных CATS.

function addCat (catsData, connection){
    let {name, age, breed, ownerId} = catsData;
    const mySqlQuerry = `insert into cats(name, age, breed, ownerId) values ('${name}', '${age}', '${breed}', '${ownerId}')`;
    return new Promise ((resolve, reject) => {
        connection.query(mySqlQuerry, 
            function (error, results, fields) {
                if(error){
                    reject(error);
                } else {
                    resolve(results);
                }
            })
    })
};


async function postCatsHandler(req, res, next) {
try {
    let data = req.body;
    const connection = req.app.get("mySqlConnection");
    const addedCatId =  await addCat(data, connection);
      console.log("addedCatId::", addedCatId);
            req.result ='{...data, id : addedCatId}' 
        next();
    }
    catch(error){
        next(error);
    }
};

Any tips or information is greatly valued.

Many thanks.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...