19

C# .NET の DB として Sql Compact3.5 を使用していますが、指定できる sdf の最大サイズはどれくらいですか? プログラムで sdf ファイルの最大サイズを増やす方法はありますか? もしそうなら、どのように?

4

5 に答える 5

27

データベースの最大サイズは、デフォルトで 128 MB です。次の接続文字列を使用して、これをオーバーライドします。

Data Source=MyData.sdf;Max Database Size=256;Persist Security Info=False;

(から: http://www.connectionstrings.com/sql-server-2005-ce ) および (から: http://msdn.microsoft.com/... )

データベースの絶対最大サイズは 4 GB です。

于 2010-03-09T11:14:37.157 に答える
7

実際には、Max Database Sizeは、 Microsoft SQL CE 4.0で 16 から 4091 として指定する必要があります。デフォルト値は 257 (Mb) です。4096 (正確には 4Gb) を使用しようとしましたが、エラーが発生しました。4091 は有効な値で、接続文字列は次のようになります。

Data Source=file.sdf; Max Database Size=4091

Microsoft SQL Compact EditionをEntity Frameworkと共に使用する場合(私は使用しています)、EF の接続文字列は次のようになります。

string template = "metadata=res://*/Model.csdl|res://*/Model.ssdl|res://*/Model.msl;provider=System.Data.SqlServerCe.4.0;"
                + "provider connection string=\";Data Source={0}; Max Database Size=4091 \";";
string s1 = string.Format(template, SdfFilePath);

ここで、Model は edmx ファイルの名前です。

于 2015-12-16T08:09:22.113 に答える
6

Benny Jobiganが言ったように、接続文字列を介して最大サイズを指定できます。

ただし、指定するサイズは16〜4091である必要があります。これ以外のサイズを指定すると、次の例外がスローされます(C#SQL Server Compact 3.5ライブラリから)。

System.ArgumentException:ssce:maxデータベースサイズトークンの値が、許可された値(16,4091)の範囲外です。

于 2012-12-13T18:51:29.367 に答える
6

探している人のためだけに...

SQL CE データベースが公開され、使用されている場合でも、接続文字列の [データベースの最大サイズ] を変更することでサイズを増やすことができます (上記のとおり)。最初に選択した値に固執していません。

http://blogs.msdn.com/b/sqlservercompact/archive/2007/06/13/the-story-of-max-database-size-connection-string-parameter.aspx

于 2011-09-13T14:55:20.330 に答える
0

サーバー エクスプローラーでデータベース名を右クリックし、[接続の変更] を選択します。詳細ボタンをクリックします。データベースのデフォルト サイズを変更できます。

于 2012-07-08T06:14:13.270 に答える