OLE DB を使用したデータベースの作成

OLE DB Provider for SQL Server Compact 3.5 は、SQL Server Compact 3.5 でデータベースの作成と管理に使用する IDBDataSourceAdmin インターフェイスを備えています。

データベースの作成

新しいデータベースを作成するには、DBPROP_INIT_DATASOURCE プロパティにデータベースの名前を指定する必要があります。セキュリティ上の理由から、OLE DB Provider for SQL Server Compact 3.5 では IDBDataSourceAdmin::DestroyDataSource を使用してデータベースを削除することはサポートされていません。データベースを削除するには、コンピュータのファイル システムにアクセス権を持っている必要があります。ファイル システムでのアクセス権がある場合は、不要になったデータベース ファイルを削除してください。

データベースのセキュリティ

SQL Server Compact 3.5 ではセキュリティが強化され、暗号化されたデータベースを作成できるようになりました。暗号化されたデータベースを作成する場合は、必ずパスワードが必要です。暗号化されたデータベースのデータに SQL Server Compact 3.5 からアクセスするには、正しいパスワードを送信する必要があります。

SQL Server Compact 3.5 では、次の 3 つの暗号化モードがサポートされています。

  • DBPROPVAL_SSCE_EM_PLATFORM_DEFAULT (Platform Default)
  • DBPROPVAL_SSCE_EM_ENGINE_DEFAULT (Engine Default)
  • DBPROPVAL_SSCE_EM_PPC2003_COMPAT (PPC2003 Compatibility)

既定の暗号化モードは、Platform Default です。暗号化モードの詳細については、「以前のバージョンからのアップグレード (SQL Server Compact)」を参照してください。

注意

暗号化されたデータベースのパスワードを忘れた場合、そのデータは復元できなくなり、アクセス不能になります。

保護されたデータベースを OLE DB Provider for SQL Server Compact 3.5 を使用して作成するには、プロバイダ固有のプロパティ DBPROP_SSCE_ENCRYPTIONMODE を VARIANT_14 として渡し、プロバイダ固有のプロパティ DBPROP_SSCE_DBPASSWORD を使用してパスワードを指定する必要があります。

以下の表は、指定する必要があるパスワードをデータベースの種類ごとにまとめた一覧です。

作成するデータベースの種類 必要なプロパティ

標準データベース

DBPROP_INIT_DATASOURCE

保護されたデータベース

DBPROP_INIT_DATASOURCE

DBPROP_SSCE_DBPASSWORD

DBPROP_SSCE_ENCRYPTIONMODE

大文字と小文字が区別されるデータベース

DBPROP_SSCE_DBCASESENSITIVE

ms174146.note(ja-jp,SQL.100).gifメモ:
このプロパティは、SQL Server Compact 3.5 SP1 リリースで導入されました。詳細については、「照合順序の使用 (SQL Server Compact)」を参照してください。

既存のデータベースについては、データベースを最適化するときにこれらのプロパティの値を変更できます。詳細については、「CompactDatabase メソッド (SQL Server Compact)」を参照してください。

OLE DB Provider for SQL Server Compact 3.5 を使用したデータベースの作成例については、「OLE DB を使用してデータベースを作成する方法 (プログラム)」を参照してください。