SQL CE 4.0的限制

20

我打算在一个小型但需要生产的网站中使用 SQL CE 4.0,并想了解 SQL CE 4.0 可以处理多大的负载:

  1. 同时连接数,
  2. 每个表的行数,和
  3. 整个数据库的大小。

它将非常慢。我强烈建议您至少使用SQLExpress。 - leppie
5
我想知道在保持良好性能的情况下我可以扩展到多少规模,这就是我提出这个问题的原因 :) 我并不期望支持1000个同时用户,但也不希望只支持一个用户。 - TheBlueSky
1
微软似乎在几年前就放弃了对CE的支持(没有新版本、没有新闻发布,什么都没有……),所以如果你考虑到至少半步的话,这将是一个不好的想法;) - user3382570
1
@SitnTheShade,同意,但我是在3年前问这个问题的,当时SQL CE 4.0还很新 :) - TheBlueSky
1
我知道这已经过时了,但是可以在这里找到一张好的比较表:http://erikej.blogspot.co.uk/2011/01/comparison-of-sql-server-compact-4-and.html - tinmac
4个回答

13

这里有一篇Scott Guthrie在2011年1月12日发布的关于最新版SQL CE及其VS2010集成的博客文章,可能对你有用:VS 2010 SP1 and SQL CE

以下是两个引语:

  • SQL CE可用于开发方案、测试方案和轻量级生产使用方案。
  • 从SQL CE4开始,您也可以在Web服务器上使用它。
  • 对于高流量的站点和应用程序,您可能需要将数据库迁移到使用SQL Server Express、SQL Server或SQL Azure。

就个人而言,尽管SQL CE的限制是4GB和256个并发连接的内存数据库可在Web服务器上使用,但我认为这已经开始变得有点大了,我会在那之前进行迁移。它更适用于特定的场景,如果你的应用程序不适合这种情况,那么你应该考虑像Leppie提到的那样使用SQL Express;即如果你可以在你的Web服务器上安装SQL Express,或者在可访问你的Web服务器的机器上安装SQL Express,那么你应该这样做。

编辑:
作为后续,人们应该注意,必须使用VS2012来使用SQL CE 4.0。SSMS 2008可用于使用SQL CE 3.5(但不能使用4.0),而SSMS 2012中已删除了SQL CE功能。这意味着如果您正在使用SQL CE 4.0进行开发,则必须使用Visual Studio或第三方工具来完成开发工作(表创建等)。


2
当您处于共享托管环境中时,您并不总是拥有 SQL Express 的“奢侈”,而且当您拥有它时,您很可能仅限于一个数据库 :) 简而言之,我正在尝试找出在另一个应用程序使用我的唯一数据库的情况下,我可以将 SQL CE 4.0 推到何种程度 :) - TheBlueSky
2
@TheBlueSky - 共享托管环境恰好是 SQL CE 目标之一的情况之一。 - slugster
1
这是正确的,也正是我所说的。我已经有一个SQL Express数据库,被托管在共享托管环境中的一个应用程序中使用。现在我想托管另一个应用程序,但这次将使用SQL CE。我的问题是我能推动这个应用程序多少。 - TheBlueSky

3

2
这是SQL CE 3.5的限制:http://msdn.microsoft.com/en-us/library/ms172451.aspx
我找不到关于SQL CE 4.0的限制的信息,但根据您的要求,在3.5中:
1.同时连接数:256 2.每个表的行数:无限制 3.总数据库大小:最大4 Gbs。
我猜想它会更或多或少相同。

1
我也找不到关于SQL CE 4.0的任何信息,希望这里有人知道些什么 :) - TheBlueSky
如果你有两个4GB的数据库,这是否会被支持?还是它会被视为一个8GB的数据库? - VoidKing

1

我只知道3.5版本,

我发现的一个问题是不支持COUNT_BIG函数,因此在查询中使用COUNT函数返回Int类型时,无法计算超过2,147,483,647条记录。

此外,也没有全文搜索功能。


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