質問
Sybaseのストアドプロシージャの許可許可を取得するにはどうすればよいですか?
解決
それはあなたがその情報を望むフォームに依存します。
- 内部目的のためにSQLを書いていて、その情報がデータとして必要な場合、Kolchanovの答えは正しいです。
- 単にDBA関数を実行している場合は、任意の数のDBA GUIツール(SybasecentralがCDに付属しています。DBARTISANの方がはるかに優れています)は、エクスプローラーウィンドウを介してその情報を提供し、クリックします。
- 文字ベースのアクセスのみがある場合は、使用してください
sp_helprotect proc_name
- 文字ベースのアクセスのみがある場合は、使用してください
次に、次のように移動します:Adaptive Server Enterprise 15.5/Reference Manual:手順、Explorerに従ってください。
他のヒント
オブジェクト「whated_ [table | procedure]」の権限を確認したい場合、次のクエリを実行します。
テーブルである「何でも」の例
Displaying result for:
---------------------
select permission = a.name
from master.dbo.spt_values a
, master.dbo.spt_values b
, sysprotects p
, sysobjects o
where a.type = "T"
and a.number = p.action
and b.type = "T"
and b.number = (p.protecttype + 204)
and o.id = p.id
and o.name = 'whatever_table'
permission
----------------------------
References
Select
Insert
Delete
Update
5 Row(s) affected
「何でも」がストアドプロシージャであるための例
Displaying result for:
---------------------
select permission = a.name
from master.dbo.spt_values a
, master.dbo.spt_values b
, sysprotects p
, sysobjects o
where a.type = "T"
and a.number = p.action
and b.type = "T"
and b.number = (p.protecttype + 204)
and o.id = p.id
and o.name = 'whatever_procedure'
permission
----------------------------
Execute
1 Row(s) affected
Adaptive Server Enterprise 15.5>リファレンスマニュアル:表>システムテーブル
sysprotects
Sysprotectsには、ユーザー、グループ、および役割に付与または取り消された権限に関する情報が含まれています。
所属していません StackOverflow