Condividi tramite


Proprietà SqlCeConnection.ConnectionString

Ottiene o imposta la stringa utilizzata per aprire un database.

Spazio dei nomi  System.Data.SqlServerCe
Assembly:  System.Data.SqlServerCe (in System.Data.SqlServerCe.dll)

Sintassi

'Dichiarazione
Public Overrides Property ConnectionString As String
    Get
    Set
'Utilizzo
Dim instance As SqlCeConnection
Dim value As String

value = instance.ConnectionString

instance.ConnectionString = value
public override string ConnectionString { get; set; }
public:
virtual property String^ ConnectionString {
    String^ get () override;
    void set (String^ value) override;
}
abstract ConnectionString : string with get, set
override ConnectionString : string with get, set
override function get ConnectionString () : String
override function set ConnectionString (value : String)

Valore proprietà

Tipo: System.String
Stringa di connessione del provider di dati .NET Compact Framework per SQL Server Compact che contiene il nome dell'origine dati e altri parametri necessari per stabilire la connessione iniziale. Il valore predefinito è una stringa vuota.

Implementa

IDbConnection.ConnectionString

Eccezioni

Eccezione Condizione
ArgumentException

È stato fornito un argomento non valido della stringa di connessione.

Osservazioni

La proprietà ConnectionString può essere impostata solo quando la connessione è chiusa. Molti valori della stringa di connessione dispongono delle proprietà in sola lettura corrispondenti. Quando viene impostata la stringa di connessione, queste proprietà vengono aggiornate, tranne in caso di rilevamento di un errore. In questo caso, non viene aggiornata alcuna proprietà. Le proprietà SqlCeConnection restituiscono solo le impostazioni contenute nella proprietà ConnectionString.

Reimpostando la proprietà ConnectionString su una connessione chiusa, vengono reimpostati tutti i valori della stringa di connessione e le proprietà correlate, compresa la password.

Nella tabella seguente vengono elencate le proprietà ConnectionString supportate in SQL Server Compact.

Proprietà

Descrizione

data source -o-datasource

Percorso e nome file del database di SQL Server Compact. Per indicare un percorso relativo del database dalla directory dell'applicazione, utilizzare la stringa di sostituzione Data Source = |DataDirectory| racchiusa tra due barre verticali. Utilizzare il metodo SetData() sulla classe AppDomain per impostare la directory dei dati dell'applicazione. L'elemento DataDirectory non è supportato per i dispositivi. Per ulteriori informazioni, vedere Installazione e distribuzione in un computer desktop (SQL Server Compact)".

Password-or-Pwd-or-database password-or-ssce:database password

Password del database con una lunghezza massima di 40 caratteri. Se non viene specificata, l'impostazione predefinita è nessuna password. Questa proprietà è obbligatoria se si abilita la crittografia nel database. Se si specifica una password, la crittografia viene abilitata automaticamente. Se si specifica una password vuota, il database non verrà crittografato.

ssce:enlist

oppure

enlist

Per impostazione predefinita, il valore enlist è false, Questo può essere impostato su true. Se il collegamento al database di SQL Server Compact viene aperto utilizzando Enlist impostato su true, il collegamento viene promosso al livello di una transazione.

ssce:encryption mode

oppure

encryption mode

I valori per questa proprietà sono i seguenti:

engine default

oppure

platform default

L'impostazione predefinita è platform default.

NotaNota
Questa proprietà è un'opzione relativa alla data e all'ora di creazione del database e viene ignorata in caso di connessione a un database esistente.

Encrypt-or-encrypt database -or-ssce: encrypt database

Un valore Booleano che determina se il database è crittografato. Deve essere impostato su true per abilitare la crittografia, su false per disabilitarla. Se non viene specificato alcun valore, il valore predefinito è false. Se si abilita la crittografia, è necessario specificare anche una password con la proprietà password. Se si specifica una password, la crittografia viene abilitata indipendentemente dall'impostazione di questa proprietà.

NotaNota
Questa proprietà è un'opzione relativa alla data e all'ora di creazione del database e viene ignorata in caso di connessione a un database esistente. Se si specifica SSCE:Database password, il database viene crittografato indipendentemente dalla specifica o meno di SSCE:Encrypt Database.

max buffer size-or-ssce:max buffer size

La quantità massima di memoria, espressa in kilobyte, che SQL Server Compact può utilizzare prima di iniziare a trasferire modifiche su disco. Se non viene specificato alcun valore, il valore predefinito è 640.

max database size-or-ssce:max database size

Dimensioni massime del database espresse in megabyte. Se non viene specificato alcun valore, il valore predefinito è 128.

Mode-or-file mode-or-ssce:mode

Modalità da utilizzare per aprire il file di database. Per i valori validi, consultare la tabella riportata di seguito. Se non viene specificato alcun valore, il valore predefinito è 'Read Write'.

default lock timeout-or-ssce: default lock timeout

Numero predefinito di millisecondi in cui una transazione dovrà attendere prima del blocco. Se non viene specificato alcun valore, il valore predefinito è 2000.

default lock escalation-or-ssce:default lock escalation

Numero di blocchi acquisiti da una transazione prima che venga eseguito un tentativo di escalation da riga a pagina o da pagina a tabella. Se non viene specificato alcun valore, il valore predefinito è 100.

flush interval-or-ssce:flush interval

Specifica l'intervallo di tempo, in secondi, che deve intercorrere prima che tutte le transazioni sottoposte a commit vengano scaricate su disco. Se non specificato, il valore predefinito è 10.

autoshrink threshold-or-ssce:autoshrink threshold

Percentuale di spazio disponibile nel file di database consentita prima di iniziare la compattazione automatica Un valore pari a 100 disabilita la compattazione automatica. Se non specificato, il valore predefinito è 60.

temp path-or-temp file directory-or-ssce:temp file directory

Percorso del database temporaneo. Se non viene specificato alcun percorso, per impostazione predefinita verrà utilizzato il database specificato nella proprietà dell'origine dati per la memorizzazione temporanea.

temp file max size

Dimensioni massime del file di database temporaneo espresse in megabyte. Se non viene specificato alcun valore, il valore predefinito è 128.

persist security info

Se l'impostazione è false (consigliata), le informazioni basate sulla sicurezza, ad esempio la password, non saranno restituite nell'ambito della connessione se quest'ultima è aperta o se in precedenza si è trovata in uno stato aperto. Se si reimposta la stringa di connessione, verranno reimpostati tutti i valori della stringa compresa la password. Il valore predefinito è false.

locale identifier-or-Lcid-or-initial lcid

Identificatore delle impostazioni locali (LCID) da utilizzare con il database. I valori validi di LCID sono elencati nella classe CultureInfo.

NotaNota
Questa proprietà è un'opzione relativa alla data e all'ora di creazione del database e viene ignorata in caso di connessione a un database esistente.

Case Sensitive-or-CaseSensitive

Valore booleano che determina se le regole di confronto del database rispettano la distinzione tra maiuscole e minuscole. La proprietà deve essere impostata su true per abilitare le regole di confronto con distinzione tra maiuscole e minuscole. In caso contrario, la proprietà deve essere impostata su false. Se non viene specificato alcun valore, il valore predefinito è false. Se si stabilisce una connessione a un database di SQL Server Compact esistente con una proprietà relativa alla distinzione tra maiuscole e minuscole nella stringa di connessione, in SQL Server Compact 3.5 SP1 tale impostazione viene ignorata.

NotaNota
Questa proprietà è un'opzione relativa alla data e all'ora di creazione del database e viene ignorata in caso di connessione a un database esistente.

Nella tabella seguente vengono elencati i valori valido per la proprietà mode della stringa di connessione.

Valore

Definizione

Read Write

Consente l'apertura e la modifica del database da parte di più processi. Questa è l'impostazione predefinita se la proprietà mode non è specificata.

Read Only

Consente di aprire una copia in sola lettura del database.

Exclusive

Non consente ad altri processi di aprire o modificare il database.

Shared Read

Consente ad altri processi di leggere, ma non di modificare, il database mentre è aperto.

Quando la proprietà è impostata, viene eseguita una convalida preliminare della stringa di connessione. Quando un'applicazione chiama il metodo Open, la stringa di connessione viene convalidata in maniera completa. Se la stringa di connessione contiene proprietà non supportate o non valide, verrà generata un'eccezione di runtime quale ArgumentException.

Le regole seguenti valgono per le stringhe di connessione:

  1. Tutti i caratteri vuoti, tranne quelli all'interno di un valore o racchiusi tra virgolette, sono ignorati.

  2. Le coppie valore-parola chiave devono essere separate da un punto e virgola (;). Se un punto e virgola è parte di un valore, è necessario delimitarlo da virgolette.

  3. Non sono supportate sequenze di escape.

  4. Il tipo di valore è irrilevante.

  5. Per i nomi non è prevista distinzione tra maiuscole e minuscole.

  6. Se un nome di proprietà ricorre più di una volta nella stringa di connessione, viene utilizzato il valore associato all'ultima occorrenza.

  7. I valori possono essere delimitati da virgolette singole o doppie, ad esempio name='value' o name="value". Se si utilizza l'altro delimitatore, è possibile utilizzare all'interno di una stringa di connessione le virgolette singole o doppie. Di seguito, ad esempio, sono riportati alcuni utilizzi validi delle virgolette in una stringa di connessione:

    "data source='MyDb.sdf'; mode=Exclusive;"
    'data source="MyDb.sdf"; mode=Exclusive;'
    

    Questi esempi invece non sono validi:

    "data source="MyDb.sdf"; mode=Exclusive;"
    'data source='MyDb.sdf'; mode=Exclusive;'
    

Esempi

Nell'esempio che segue viene creato un oggetto SqlCeConnection e ne vengono impostate alcune proprietà nella stringa di connessione.

Dim conn As New SqlCeConnection()

' Set some connection string properties e.g.:
' 
conn.ConnectionString = _
    "Persist Security Info = False; Data Source = 'SalesData.sdf';" & _
    "Password = '<password>'; File Mode = 'shared read'; " & _
    "Max Database Size = 256; Max Buffer Size = 1024"

conn.Open()

' You can change the database while preserving 
' the orignal connection options
'
conn.ChangeDatabase("SupportData.sdf")
SqlCeConnection conn = new SqlCeConnection();

// Set some connection string properties e.g.:
// 
conn.ConnectionString = 
    "Persist Security Info = False; Data Source = 'SalesData.sdf';" +
    "Password = '<password>'; File Mode = 'shared read'; " +
    "Max Database Size = 256; Max Buffer Size = 1024";

conn.Open();

// You can change the database while preserving 
// the orignal connection options
//
conn.ChangeDatabase("SupportData.sdf");

Vedere anche

Riferimento

SqlCeConnection Classe

Spazio dei nomi System.Data.SqlServerCe

Altre risorse

Aggiornamento dalle versioni precedenti (SQL Server Compact)