mysql - 现有 mysql 数据库中数据的 meteor 报告。如何?

标签 mysql database meteor reporting

我正在尝试使用 meteor 和 raphael js 制作一些报告。我必须报告来自现有 MySQL 数据库的数据。我不想写入该数据库。我只需要来自 CRUD 的“R”。 我想到了各种手动方法:通过应用程序本身 (Limesurvey) 从 MySQL 数据库导出 .csv 文件并使用 mongoimport 填充 MongoDB 集合,然后执行我的 CollectionName.find () 等 meteor 。 或者可能只是公开 REST 完整端点以使用数据的某种方式,并使用 Meteor 的 http 包。

在 Meteor JS 应用程序中使用现有的 SQL 数据是否有一个好的干净的解决方案? 如何使用预先存在的 SQL 数据?

(请注意,我对 MongoDB 中的复制没问题。但是它必须是...) 谢谢你

最佳答案

可以完全从 Meteor 内部完成它而无需任何重复,但是您将不得不跳过几个环节。

首先,使用 mysql npm package查询 SQL 数据库。尽管 Meteor 为 require 节点包提供了 Npm,但我发现使用 meteor-npm 更容易。然后,为了执行 MySQL 的“R”读取,在您的服务器上创建一个直接查询 MySQL 的 Meteor.method

那么第二个问题就是mysql包是完全异步的。因此,SQL 查询的执行会在回调中返回值,到那时,您的 Meteor.method 调用将返回给客户端留下 undefined。 来解决这个问题问题,我们可以使用 Future

有几种方法可以平滑这一步:

  1. 使用`meteor-sync-methods
  2. 根据 the issue to allow this natively 的建议衍生出您自己的版本
  3. 使用这个易于实现的一次性模式:"fence has already activated -- too late to add writes"

希望对您有所帮助。

关于mysql - 现有 mysql 数据库中数据的 meteor 报告。如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22644008/

相关文章:

mysql - 如何更新MySQL中另一个表的内连接表的字段?

JAVA:如何确保 1 方法在调用下一个方法之前已完成?

javascript - 大卫·特恩 bool (David Turnbull) 将得分字段添加到添加球员表单时排序不正确

mysql - 需要 MySQL 查询从表 2 更新/添加记录到表 1

php - 多级注册/登录系统

database - Oracle 数据库表行数

python - dblite的open中第二个参数是什么意思

meteor 允许规则

javascript - Meteor 上的 "profiling"服务器端 Javascript 代码

mysql - 无法在mysql中创建存储过程