一時テーブル#fooを作成し、そのテーブルで何かを行うための権限を与えるSQLロールに権限を与えたい(SELECT、INSERT、DELETE )。 #fooテーブルが作成されていない場合(このロールに属するユーザーがテーブルを作成して管理する場合)はどうすれば可能ですか?一時テーブルの作成と管理のためにSQLロールへのアクセス権を付与する方法
おかげ
注:可能な場合は、解決策は、SQL 2008とSQL Azureの両方で動作するはずです。
一時テーブル#fooを作成し、そのテーブルで何かを行うための権限を与えるSQLロールに権限を与えたい(SELECT、INSERT、DELETE )。 #fooテーブルが作成されていない場合(このロールに属するユーザーがテーブルを作成して管理する場合)はどうすれば可能ですか?一時テーブルの作成と管理のためにSQLロールへのアクセス権を付与する方法
おかげ
注:可能な場合は、解決策は、SQL 2008とSQL Azureの両方で動作するはずです。
AUTHORIZATION dbo
で作成したユーザーは、一度データベースに接続すると、テンポラリテーブルを作成して管理する権限が既に付与されているようです。このユーザーがデータベース内の他のテーブルにアクセスする必要がある場合にのみ、そのユーザーに明示的なアクセス許可が必要です。
あなたがすることはできません。テーブルを作成しセッションが終了し、他のすべてのタスクは彼らにを参照停止したとき
グローバルの一時テーブルは自動的に削除されます。タスクとテーブルの関連付けは、単一のTransact-SQLステートメントの実行中のみ維持されます。これは、作成セッションが終了したときにテーブルをアクティブに参照していた最後のTransact-SQLステートメントの完了時に、グローバル一時テーブルが削除されることを意味します。 link text
私はあなたが明示的にtempdb内のテーブルを作成する場合、それはセッション間で持続しますが、サーバーの再起動時に一掃されますアズールわからないけど、...
。
create table tempdb..authors (au_id char(11))
## TempTableを作成すると、グローバルに表示されますが、作成者のセッションでも終了します。
AFIKのすべてのログインには、#tempテーブルを作成してCRUDを実行する権限があります。 –