SqlCeConnection.GetDatabaseInfo Method

接続されているデータベースのロケール情報、暗号化モード、および大文字と小文字の区別に関するキーと値のペアを返します。

名前空間: System.Data.SqlServerCe
アセンブリ: System.Data.SqlServerCe (system.data.sqlserverce.dll 内)

構文

'宣言
Public Function GetDatabaseInfo As List(Of KeyValuePair(Of String, String))
public List<KeyValuePair<string,string>> GetDatabaseInfo ()
public:
List<KeyValuePair<String^, String^>>^ GetDatabaseInfo ()
public List<KeyValuePair<String,String>> GetDatabaseInfo ()
public function GetDatabaseInfo () : List<KeyValuePair<String,String>>

戻り値

ロケール、暗号化モード、および大文字と小文字の区別に関する名前と値のペアの並べ替えられたリスト。

解説

暗号化モードの値は、ユーザーが指定したものと異なる可能性があります。PPC2003 デバイスで作成されたデータベースでは、返される暗号化モードは PPC2003 Compatibility です。この場合、ユーザーは、暗号化モードとして Platform default または PPC2003 compatibility を指定した可能性があります。

上記の動作は、Platform default モードが PPC2003 デバイスでは PPC2003 compatibility に割り当てられ、他のデバイスやデスクトップでは Engine Default に割り当てられるためです。

以下の例では、GetDatabaseInfo を使って、Northwind.sdf のデータベース プロパティを取得しています。SqlCeConnection に接続文字列が渡され、データベースへの接続が開かれます。接続が開かれた後は、GetDatabaseInfo の内容は KeyValuePair に格納され、コンソールに表示されます。

Dim connStr As String = Nothing
Dim databasePath As String = Nothing
Dim sqlconn As SqlCeConnection = Nothing

Try
    'Defining database parameters
    databasePath = "C:\Program Files\Microsoft SQL Server Compact Edition\v3.5\Samples\Northwind.sdf"
    'If the database already exists, the existing encryption mode will supercede the supplied mode
    connStr = "Data Source=" & databasePath & ";Encryption Mode = 'ppc2003 compatibility';Password='password'"

    'Connecting to the database and opening the connection
    sqlconn = New SqlCeConnection(connStr)
    sqlconn.Open()

    'Retrieving the database information
    Dim dbinfo As List(Of KeyValuePair(Of String, String)) = sqlconn.GetDatabaseInfo

    Console.WriteLine("GetDatabaseInfo() results:")
    Dim kvp As KeyValuePair(Of String, String)

    For Each kvp In dbinfo
        Console.WriteLine(kvp)
    Next

Catch ex As Exception
    Console.WriteLine(ex.Message)

Finally
    'Dispose the connection's resources
    sqlconn.Dispose()

    Console.WriteLine(vbNewLine & vbNewLine & vbNewLine & "Press any key to continue...")
    Console.Read()
End Try
string connStr = null;
string databasePath = null;
SqlCeConnection sqlconn = null;

try
{
    //Defining database parameters
    databasePath = @"C:\Program Files\Microsoft SQL Server Compact Edition\v3.5\Samples\Northwind.sdf";
    //If the database already exists, the existing encryption mode will supercede the supplied mode
    connStr = "Data Source=" + databasePath + ";Encryption Mode = 'ppc2003 compatibility';Password='sa'";
    
    //Connecting to the database and opening the connection
    sqlconn = new SqlCeConnection(connStr);
    sqlconn.Open();
    
    //Retrieving the database information 
    List<KeyValuePair<string, string>> dbinfo = sqlconn.GetDatabaseInfo();
    
    Console.WriteLine("GetDatabaseInfo() results:");
    
    foreach (KeyValuePair<string, string> kvp in dbinfo)
    {
        Console.WriteLine(kvp);
    }
    
}
catch (Exception ex)
{
    Console.WriteLine(ex.Message);
}
finally
{
    //Dispose the connection's resources
    sqlconn.Dispose();

    Console.WriteLine("\n\n\nPress any key to continue...");
    Console.Read();
}

スレッド セーフ

この型の public static (Visual Basic では Shared ) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。

プラットフォーム

開発プラットフォーム

Windows Vista、Windows Mobile 5.0、Windows XP Professional with Service Pack 2 (SP2)、Windows Server 2003、Windows Mobile 2003 for Pocket PC、Windows CE 5.0
バージョン情報
.NET Framework および .NET Compact Framework
3.5 でサポート
.NET Framework
3.0 でサポート
.NET Compact Framework および .Net Framework
2.0 でサポート

参照

リファレンス

SqlCeConnection Class
SqlCeConnection Members
System.Data.SqlServerCe Namespace