現在SQL Serverにログインしているユーザーがデータベースを作成する権限を持っているかどうかを確認します。ユーザーにCREATE DATABASE権限があるかどうかを確認
私は、次のステートメントを試してみた:私は実際に作成する権限を持っているが
SELECT HAS_PERMS_BY_NAME(db_name(), 'DATABASE', 'CREATE')
SELECT HAS_PERMS_BY_NAME(null, 'DATABASE', 'CREATE')
SELECT HAS_PERMS_BY_NAME(null, null, 'CREATE DATABASE')
しかし、それらのひとつひとつの1は、NULL
代わりの1
を返します。新しいデータベース。
私はそれが1
を返す、SELECT HAS_PERMS_BY_NAME(null, null, 'VIEW SERVER STATE');
を実行して1
を返す必要がありますと仮定:)
私は何をしないのですか?
私はそれがうまくいくとは思わない。具体的には、データベースを作成する権限を付与するという方法のみをチェックします。 –
@BenThulあなたはそれについて本当ですか?ドキュメントには、「SQL Serverログインが指定されたサーバーロールのメンバであるかどうかを示します。それがCREATE DATABASE権限を持つ役割です。 – SeToY
右。しかし、もし私が 'someLogin'にデータベースを作成する権限を与えたら? –