2010-03-09 14 views

Répondre

21

La taille maximale de la base de données est par défaut de 128 Mo. Surchargez ceci en utilisant la chaîne de connexion suivante.

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

(à partir de: http://www.connectionstrings.com/sql-server-2005-ce) et (à partir de: http://msdn.microsoft.com/...)

La taille maximale absolue de la base de données est de 4 Go.

+0

merci pour la réponse. Je vais sûrement essayer ça !!! – Jankhana

5

Juste au profit des personnes à la recherche ...

Si votre base de données SQL C'est publié et utilisé, vous pouvez encore augmenter la taille en changeant la taille de la base de données Max dans la chaîne de connexion (comme ci-dessus). Vous n'êtes pas coincé avec la valeur que vous avez initialement choisie.

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

+1

Merci pour le lien. Notez également que seule la première connexion peut réserver la mémoire partagée. La deuxième connexion ne peut rien y faire, ce qui dans mon scénario est correct. +1 –

0

Clic droit sur le nom de la base de données dans l'Explorateur de serveurs et sélectionnez « Modifier la connexion ». Cliquez sur le bouton Avancé .vous pouvez modifier la taille par défaut de la base de données

5

En tant que Benny Jobigan said, vous pouvez spécifier une taille maximale via la chaîne de connexion.

Cependant, la taille spécifiée doit être compris entre 16 et 4091. Si vous spécifiez une taille à l'extérieur si cela, l'exception suivante est levée (du C# SQL Server Compact 3.5 bibliothèque):

System.ArgumentException: The value of ssce:max database size token is outside of range of allowed values (16,4091). 
+0

Merci pour ce commentaire. J'ai complètement scanné passé les valeurs min/max listées dans le message d'erreur (Je suppose que c'était un code d'erreur) C'était la première chose que j'ai trouvé via google pour signaler que le numéro est 4091. – SvdSinner

+0

Ceci devrait être la réponse acceptée. La réponse acceptée actuelle ne donne pas la valeur maximale réelle que vous pouvez définir. –

4

En fait, La taille maximale de la base de données doit être indiquée entre 16 et 4091 dans Microsoft SQL CE 4.0. La valeur par défaut est 257 (Mb). J'ai essayé d'utiliser 4096 (exactement 4 Go) et une erreur s'est produite. 4091 est valeur valide, et maintenant ma chaîne de connexion ressemble à:

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

Si vous utilisez Microsoft SQL Compact Edition avec Entity Framework (je fais), la chaîne de connexion pour EF ressemble à ceci:

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); 

où Model est le nom de votre fichier edmx.