DBAtlas · データベース運用アトラス

4834: You do not have permission to use the bulk load statement(一括読込み文を使用する権限がない)

SQL Server

意味

BULK INSERT (または OPENROWSET BULK) で一括読込みを実行するのに必要な権限がない。一括読込みはファイルシステムとサーバーリソースに直接アクセスするため、別個の権限が必要となる。

原因

ログインにサーバーレベルの ADMINISTER BULK OPERATIONS 権限がない、または bulkadmin サーバーロールのメンバーではない (Azure SQL Database では代わりにデータベースレベルの ADMINISTER DATABASE BULK OPERATIONS が必要)。対象テーブルへの INSERT 権限と、SQL Server サービスアカウントによるソースファイルの読み取りアクセスも必要。

対処方法

必要な権限を付与する: GRANT ADMINISTER BULK OPERATIONS TO login_name; (サーバーレベル) またはユーザーを適切なロールに追加する。Azure SQL DB では ADMINISTER DATABASE BULK OPERATIONS を使用する。SQL Server サービスアカウントに対象ファイル/共有の読み取り権限があることも確認する。最小権限の原則に従い、必要なアカウントにのみ付与する。

DBAtlas で開く →

同じデータベースの他の項目