我一直在寻找良好的教程和文件,如何在过去3-4个小时的蓝色移动服务工作。我一直在学习教程,这些教程演示如何创建移动服务、连接现有数据库或创建新数据库以及访问存储在移动服务本身中的表中的数据。与移动服务中的存储表不同,我在哪里可以找到访问实际数据库本身的确切方法。我不明白为什么不能直接从数据库访问数据,而不是这种“移动服务”,除非这件事实际上是按照OData服务的工作方式来提供抽象的数据模型来保护底层的数据结构。
,我的问题是:如何才能通过我的蔚蓝移动服务访问我的structure(关系结构)?
发布于 2013-06-25 07:10:47
正如赫夫·罗杰罗已经指出的,流动服务 RESTful API是在SQL中访问表的建议方法。以及移动服务的整个概念,它将承担从应用程序访问和修改数据的负担,并将其置于云托管服务的肩膀上。
但是,如果您希望“直接”访问数据表,则有以下方法:
在服务器脚本中,您可以使用全局mssql对数据库运行mssql查询、检索数据、修改或插入数据。
mssql.query('select top 1 * from statusupdates',
{ success: function(results)
{
console.log(results);
}
}
); 如果您有另一个云托管服务(web或工作人员角色),并且激活了对内部请求的防火墙访问,则可以使用TDS协议访问Server,并根据喜好操作数据。
最后,您可以在SQL上打开防火墙,以便您可以从外部网络连接到它,然后再次在您的客户机上使用TDS协议进行DB通信。
但这三种方法我都不会称之为“通过移动服务”,而是“从内部”(1)和“绕过它们”(2,3)。
发布于 2013-06-25 00:17:21
禤浩焯,
答案在你的问题上。移动服务是一个抽象层,这就是不能直接访问表的原因。来自手机的请求来自移动服务,它允许您运行逻辑,然后转身并代表您访问数据库。最好的方法有很多原因,包括连接池和安全。有关操作如何工作的详细信息,请参阅使该操作工作的流动服务休息协议的MSDN文档。
谢谢赫夫
发布于 2013-06-25 20:24:54
这是博客文章解释从公开现有SQL数据库的过程
您可以从javascript端直接进行SQL查询。
exports.get = function(request, response) {
var id = request.query.id;
request.service.mssql.query(
'select * from Person join Orders on Person.ID = Orders.PersonID where Person.id = ' + id, {
success: function(results) {
response.send(200, results);
}
});
};有关mssql对象的更多文档。
https://stackoverflow.com/questions/17286167
复制相似问题