BLOB TO USERS
BLOB TO USERS ( users )
引数 | 型 | 説明 | |
---|---|---|---|
users | Blob | → | データベース管理者によって作成・保存されたデータベースユーザーアカウントを格納している、暗号化された BLOB |
このコマンドはスレッドセーフではないため、プリエンプティブなコードには使えません。
説明
BLOB TO USERS コマンドは、データベース内で管理者によって作成されたユーザーアカウントとグループを users BLOBに格納されたアカウントとグループで上書きします。 users BLOBは暗号化されており、USERS TO BLOB コマンドを使用して作成されていなければなりません。
データベースのデザイナーおよび管理者のみが、このコマンドを実行できます。他のユーザーが実行しようとすると、コマンドは何も行わず、権限エラー (-9949) が生成されます。
データベースがバイナリモードかプロジェクトモードかによって、このコマンドの動作は異なります:
プロジェクトデータベース
このコマンドは互換性のため、つまりユーザーとグループが格納されている既存のBLOBファイルから、データベースの directory.json ファイルに移動するために使用されます。directory.json ファイルにて定義されている、"デザイナー" および "管理者" を除くすべてのユーザーおよびグループが users BLOB の情報で上書きされます。
バイナリデータベース
このコマンドはデータベース内で管理者によって作成されたすべてのユーザーとグループを上書きします。users BLOBが有効なデータを含んでいる場合、コマンドは以下の操作を行います:
- データベース内で定義されているすべてのユーザーとグループのうち、参照番号が負の数であるもの (管理者によって作成されたユーザーとグループ) をストラクチャーから削除します。
- users BLOB内にあるすべてのユーザーとグループをストラクチャーに追加します。
互換性に関する注記: 以前の4Dでグループを保存... メニューコマンドを用いて作成されたユーザーとグループのファイル (.4UG 拡張子) は以下のコードを用いて4Dに読み込むことが可能です (ただしとても古いバージョンの場合には、途中バージョンも経由する必要がある可能性があります)。
DOCUMENT TO BLOB(mydoc;blob)
BLOB TO USERS(blob)
システム変数およびセット
コマンドが正しく実行されるとシステム変数OKには1が、そうでなければ0が設定されます。