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
メモ:
このプロパティは、SQL Server Compact 3.5 SP1 リリースで導入されました。詳細については、「照合順序の使用 (SQL Server Compact)」を参照してください。
|
既存のデータベースについては、データベースを最適化するときにこれらのプロパティの値を変更できます。詳細については、「CompactDatabase メソッド (SQL Server Compact)」を参照してください。
例
OLE DB Provider for SQL Server Compact 3.5 を使用したデータベースの作成例については、「OLE DB を使用してデータベースを作成する方法 (プログラム)」を参照してください。