【问题标题】:Query SQL Server Database from native iOS Application从本机 iOS 应用程序查询 SQL Server 数据库
【发布时间】:2011-01-14 13:15:48
【问题描述】:

我正在开发一个内部 iOS 应用程序,该应用程序需要对具有多个数据库的 SQL Server 进行只读访问。我知道这里的常用答案是“编写一些 Web 服务”,但我想要一个独立的解决方案。有没有办法从 iOS 应用程序直接连接到 SQL Server 数据库?我在想一个基本的 ODBC 连接。

我看到很多用户提出这个问题,但除了“编写 Web 服务”之外,几乎没有其他答案。这真的是唯一的方法吗?

【问题讨论】:

  • 继续查询后不要忘记关闭sql连接

标签: sql-server ios


【解决方案1】:

Web 服务确实是唯一的方法,但是 Red Gate 编写的可以重复使用的方法:

http://www.mobilefoo.com/iSqlServerSDK.html

http://labs.red-gate.com/Tools/Details/iSqlSDK

它还没有正式发布,只是处于测试阶段,所以请记住,功能和价格可能会发生变化。

【讨论】:

  • 请务必注意,移动 foo 网站已不再启动。
【解决方案2】:

实际上最简单的方法是创建一个 MVC 3 或 4 asp.net Web 应用程序。调用网络方法。您无需支付任何 API 费用。

我使用 SBJson 序列化域对象,然后将对象作为序列化的 jSOn 发送到 MVC 3。这非常容易做到。我什至使用 base64 发送图像,因此它与 .net 兼容。

请参阅我的博客文章以及示例代码: http://nickturner.wordpress.com/2012/10/09/107/

【讨论】:

  • 嗨尼克,我已经检查了你的博客文章。看起来不错!我想知道您是否有机会添加示例代码?谢谢!
【解决方案3】:

所以,经过大量搜索和反复试验,不幸的是,我发现的最好(唯一?)方法确实是使用 Web 服务。

幸运的是,Linq to SQL 让 WCF 创建端变得异常简单。一旦我让工作人员指导我设置 Windows Web 服务器并添加 Web 服务(并购买对在线 Web 服务器的访问权限),Windows 端就已准备就绪。

我仍在研究 SOAP 交互方面的所有语法内容,但在结构上保持我的不同方法有点相似,这让我可以稍作修改,直到它工作为止。到这个时候,我想我已经让它工作得很好了。

所以,我得到的两个答案都是(令人失望的)正确的。唯一的交互方式是通过 Web 服务。甚至他们提到的第 3 方解决方案实际上也只是对同一类型技术的便捷包装。事实证明,我宁愿更好地控制流程。

一句忠告:获取一个真实的外部网络服务器。我尝试在 iMac/MacBook Pro 上的非服务器 Windows VM 上执行此操作,这就像拔牙一样!一旦我真正能够访问一个外部的、完整的、独立的 Web 服务器,这个过程就会变得更加精简和容易。帮自己一个忙,把头痛的问题排除在外!

【讨论】:

    【解决方案4】:

    作为 SQLXML 的一部分,有一个 SQL ISAPI 扩展,但我认为它已被弃用:http://msdn.microsoft.com/en-us/library/aa226559%28v=SQL.80%29.aspx

    这实际上是一个预先构建的、相对开放的网络服务 - 所以我不确定这是否算作直接连接。

    您也可以查看http://odbcrouter.com/Main

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-25
      • 2016-09-11
      • 2022-08-17
      相关资源
      最近更新 更多