一个32位应用程序能够访问64位的SQL服务器数据库吗?

7

正如标题所述,我需要知道32位应用程序是否可以访问64位SQL服务器数据库?


11
不,全世界所有的计算机都必须同时从32位转换为64位。64位时代将以辉煌的大爆炸开始! - Andomar
3
那听起来更像是IPv6。 - vcsjones
2
@vcsjones:那听起来更像是讽刺。 - gbn
2个回答

18

是的

一个应用程序不关心目标数据库服务器是32位还是64位,Windows/Unix,Server/Mainframe,本地或在云端。它只知道发送连接字符串到本地操作系统上的驱动程序。

需要明确的是,本地操作系统和驱动程序并不关心目标系统是否是32位还是64位


1

是的,它们可以,通常没有问题。

一些大型数据集可能会导致问题,但您需要一个超过3GB的记录...


1
请问您能解释一下“大型数据集”是什么意思吗? - gbn
32位系统只能寻址最多4,096 MB。如果您有一个这样大小的数据库结果,您将无法加载它。虽然可能不太可能发生,但限制确实存在。 - Martin Samson
1
我从未尝试在任何系统上加载4GB的结果集。只是想澄清一下你的意思... - gbn
没错。有人可以将大型二进制文件(比如一系列 DVD 镜像)作为二进制 blob 加载。虽然很疯狂,但并没有什么阻止这样做的东西。 - Martin Samson
1
即使是32位客户端,也可以通过流从服务器下载大型BLOB(>4GB)。即使是32位服务器,也可以提供大型BLOB(>4GB)的内容。当然,可以根据数据库能力分块检索内容,因此这里没有4 GB的限制。使用大多数数据库驱动程序,不需要同时将所有结果集加载到内存中:逐行检索行,并且可以使用流式处理逐个检索BLOB。这可能会比较慢,但是大多数严肃的32位数据库都能够处理它。 - Arnaud Bouchez
当然有处理这种情况的技术,但大多数 ORM 还没有准备好处理它。 - Martin Samson

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接