могу ли я подключиться к базе данных mysql из парусов без определения моделей?

avatar
fariba.j
8 апреля 2018 в 04:40
727
1
0

Я использую паруса.js и паруса-MySQL и хочу подключиться к базе данных MySQL. У меня есть таблицы, функции и процедуры на рабочем месте. теперь я хочу знать, нужно ли создавать файлы модели и снова определять мою схему?

Источник

Ответы (1)

avatar
logout
10 апреля 2018 в 11:09
1

Да, вы можете подключиться к своей БД без определения моделей. Однако не забывайте, что вам придется каждый раз писать необработанные запросы. Итак, сначала вам нужно определить подключение к БД в файле datastores.js. Затем вы можете сделать следующее в некоторых из ваших контроллеров, когда вы хотите получить что-то из своей БД (скажем, у вас есть пользователи таблицы, и вы хотите получить их всех):

  var myDBStore = sails.getDatastore(); //gets the default datastore.
  var query = "SELECT * FROM users;";

  myDBStore.sendNativeQuery(query).exec(function (err, nativeResult) {
    if (err) {
       return res.send(err);
    }
    return res.send(nativeResult.rows);
  });

или используя современный способ в асинхронной функции:

  var myDBStore = sails.getDatastore(); //gets the default datastore.
  var query = "SELECT * FROM users;";
  var nativeResult;

  try {
    nativeResult = await myDBStore.sendNativeQuery(query);
  } catch (err) {
    return res.send(err);
  }

  return res.send(nativeResult.rows);

Подробнее здесь: https://sailsjs.com/documentation/reference/waterline-orm/datastores в разделе "Использование хранилищ данных без модели"