2012-11-20 68 views

回答

11

有很多原因。

  1. 安全性 - 如果用户有直接访问权限,他们可以从您的数据库中获得任何东西。另外他们将在你的数据库中有一个密码。因此,如果您使用的SQL服务器存在缺陷,那么他们可以利用它。另外,如果您的权限设置错误,则可能会擦除数据库。
  2. 速度 - 如果用户经常使用大型查询,那么它可能会让您的系统快速无用地陷入困境。如果你通过网络界面,你可以调节它。
  3. 辅助功能 - 几乎所有的网络查询都支持。它需要特殊的客户端直接访问SQL数据库。

但是,如果你完全信任你的用户,拥有合适的库/驱动程序,那么你可以允许直接查询,甚至可以更快一点。

+2

也增加phohe内存大小,是我们在移动 –

+0

真正的问题保存的数据库对我来说是:是不是一样用,例如在Windows上运行的C#应用​​程序。由于绝对相同的原因,最好使用Web服务,而不是使用直接连接。但它不应该是,一定有一些区别。在此,作为使用直接连接的软件开发人员,无论是我做错了或有这我还不注意到差别。 – ErTR

0

的原因是连接

你不知道你有多少时间来保持连接,如果它是稳定的,如果你不打算失去了它

其次,网络 - 服务进行了优化,以检索信息,并与standarts美丽地服务。您还可以缓存信息以备用您的数据库

3

如果您的应用程序直接连接到数据库服务器,则必须硬编码非常不安全的用户名/密码。使用某些工具,攻击者可以反编译apk,并以此方式访问用户名/密码,并且可以在不使用应用程序的情况下通过读取(+写入)访问连接到数据库。

0

另一个理由不如果您更改数据库架构访问数据库直接

问题。 你有两个解决方案。

1-在直接访问中,您需要更新每个客户端应用程序
2-使用服务您只需升级服务。