2012-07-14 98 views
9

如果我们开发C#(或基本.NET)的一些软件,我们不的Visual Studio安装任何客户端。客户端只需安装所需的.Net框架(1.0,1.1,2.0,3.0等),我们就可以走了。同样的道理,如果我们在VC2008中制作应用程序,他只需要有Visual C++ 2008运行时(可从MS站点免费获得,大约4-5Mb)。所以,基本上,我们只需要运行时环境。但没有任何SQL Server 2008运行时(或者我不知道它?)。如果我的软件使用它,我是否必须在每个客户端上安装sql server?

所以,我的问题是,如果我的软件正在使用SQL Server 2008,那么客户端需要什么运行时(或其他)来运行?

此外,还有一件事,我看到有一个SQL Server Express版本,我可以在部署中使用,但它似乎有点沉重,知道如果我的软件,如果只是5,10或20Mb我需要安装一个演出只是让用户可以运行它。最后,如果我使用的是SQL Server 2008 Developer Edition(这是我或企业的某个不确定),并且我在客户端上安装了SQL Server Express,那么如果我的软件使用某些功能是否会导致某些问题,快递版不支持? (比如说数据库的数量,或者并发连接,或者其他任何东西)。

所以呢?它需要什么运行时间?如果安装sql server express是唯一的选择,如果我使用Express版本不支持的某些功能,该怎么办?当然,我不能继续在每个客户端上安装完整的开发者版本!

编辑:如果这是任何帮助,我现在的项目是一个图书馆管理系统,它将被安装在客户端(图书管理员因为我做这个人的电脑),所以没有这里的服务器客户端的情况。那么我应该在他的电脑上安装sql express吗?此外,如在YvesR他的回答中指出,该链接仅显示了三个版本(主要的),但http://msdn.microsoft.com/en-us/library/cc645993%28v=SQL.110%29.aspx显示更详细的比较。那么,在我刚刚描述的这个特定场景中,如果我只是在客户端机器上部署和发布版本就足够了吗?现在

,约我说过不是了一些功能快捷版可用, http://msdn.microsoft.com/en-us/library/cc645993(v=SQL.110).aspx#CrossBoxScale 显示,Express版是仅限于大小为10 GB的数据库,现在我知道那是绰绰有余在我上面描述的场景,但如果在其他一些情况下我需要更多的东西呢?比表达版本不会这样做,比我应该如何部署?

最后,http://www.microsoft.com/sqlserver/en/us/get-sql-server/how-to-buy.aspx显示了另外两个版本,Compact和Developer,我知道关于开发人员,但是这个精简版是什么?更重要的是,为什么这些不会被列为here

编辑2:它的4Gb,极限,而不是10Gb。 10Gb在SQL Server 2008 R2 Express及更高版本中,4Gb在SQL Server 2008 Express中。
marc_s:感谢您的!

+0

的* *开发版 - 顾名思义 - 只允许合法的** **的发展 - 你不允许在生产中使用。 – 2012-07-14 07:15:02

+0

如果是一个只有一个人的系统,那么我相当肯定你将很难超过SQL Server Express到2008版的4 GB数据库大小 - 以及SQL Server 2008 ** R2 **(和2012),该尺寸已升级到** 10 GB ** - 应该足够了! – 2012-07-14 11:20:39

+0

@marc_s 垃圾! SQL 2008中是4Gb?跆拳道?无论如何,我不会在一个用户场景中超出这个范围,但是如果我需要大型的,并且不能拥有客户端 - 服务器设置,那么是什么?这个链接在我给出的链接中提到了什么?仅限于2012年还是2008年? – Razort4x 2012-07-14 11:41:01

回答

6

如果使用SQL Server数据库来坚持你的应用程序的数据,需要

一个。客户端 - 服务器架构,其中客户端通过LAN

B连接到中央的SQL Server。或者使用客户端安装的sql server版本(这是你想要的我猜)。为此,您可以使用SQL Server Express版本或者仅使用MSDE(桌面版)。

详情参见例如这个博客文章http://searchsqlserver.techtarget.com/tip/SQL-Server-2005-Express-vs-Desktop-Engine-MSDE或谷歌为它,MS本身有关MSDE的大量信息。

编辑:自2012年以来就没有更多的MSDE,但SQL Server 2012快速带来一个模式像MSDE一样。在这里看到:http://www.microsoft.com/sqlserver/en/us/editions/2012-editions/express.aspx

正如你可以在这里看到:http://www.microsoft.com/sqlserver/en/us/editions.aspx,不应该有您使用不适用于桌面应用恕我直言功能。

+4

MSDE是“Express”的SQL Server ** 2000 **版本,真的。从2005年起,它被称为* SQL Server xxx Express * – 2012-07-14 07:12:57

+0

@marc_s 有比YvesR更多的版本描述。我已经更新了包括这个问题在内的问题,并添加了一些关于我目前工作的更多细节,看看您是否可以再次看看! – Razort4x 2012-07-14 10:28:39

+1

@ Razort4x 10GB的数据很多。我有4500个用户使用质量管理系统的数据库,经过4年的使用后,它仍然在1GB左右。取决于你的应用程序,但如果你不移动二进制文件到你的应用程序应该没问题。是的,我建议你在你的项目中使用没有GUI设置的sql express版本。 – YvesR 2012-07-14 10:55:39

2

除了安装.NET框架(无论如何您都需要所有.NET可执行文件),数据库访问不需要客户端运行时。

如果您希望数据库驻留在与客户端免费选项相同的机器上,例如SQL Server Express或SQLite。

+0

@Okay,但什么是这个紧凑的版本,为什么不上市http://msdn.microsoft.com/en-us/library/cc645993(v=SQL.110).aspx,但在http:// www.microsoft.com/sqlserver/en/us/get-sql-server/how-to-buy.aspx。 ps:我已经更新了这个问题以反映我目前的需求! – Razort4x 2012-07-14 10:32:06

3

OK,让我们备份了一下。您是否有要求每个软件客户端拥有自己的本地数据库?如果是这种情况,那么在客户端上存储数据的方法就简单得多了(我建议将序列化作为一种​​方法来存档)。

如果您的要求是让每个客户端通过连接到一个中央数据库,那么你不需要比.NET核心库之外的任何运行时组件。

+0

检查问题,我添加了我目前的要求和一些更多的细节。 – Razort4x 2012-07-14 10:29:41

1

下面是Windows应用程序有两种方式:将每个客户端使用单独作为不分配给服务器计算机

  1. 桌面应用程序。您只需要为您的客户安装SSMS和应用程序。更新/删除/插入操作将分开进行。

  2. 客户端 - 服务器的方式,安装SSMS并连接在电脑上的数据库。这台电脑将作为服务器为您的客户提供服务。然后在任何客户端计算机上安装exe文件,确保客户端使用IP连接到服务器。

相关问题