【问题标题】:can i connect to mysql database from sails without defining models?我可以在不定义模型的情况下从 Sails 连接到 mysql 数据库吗?
【发布时间】:2018-04-08 04:40:55
【问题描述】:

我正在使用sails.js 和sails-MySQL,我想连接到MySQL 数据库。我的工作台中有表格、函数和过程。现在我想知道是否有必要创建模型文件并再次定义我的架构?

【问题讨论】:

    标签: mysql sails.js schema models


    【解决方案1】:

    是的,您可以在不定义模型的情况下连接到您的数据库。但是请记住,您每次都必须编写原始查询。因此,首先您需要在 datastores.js 文件中定义数据库连接。然后,当您想从数据库中获取某些东西时,您可以在某些控制器中执行以下操作(假设您有一个表 users 并且您想要获取所有这些用户):

      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 在“使用没有模型的数据存储”部分中

    【讨论】:

      猜你喜欢
      • 2020-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-09
      • 2020-08-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多