DROP VIEW コマンドは特権を必要とする操作です。
DROP VIEW を使用する前に、%DROP_VIEW 管理者特権または指定されたビューに対する DELETE オブジェクト特権を持っている必要があります。特権がない場合は、SQLCODE 99 エラー (特権違反) が返されます。適切な特権を持っている場合は、
GRANT コマンドを使用して %DROP_VIEW 特権を割り当てることができます。埋め込み SQL では、以下のように $SYSTEM.Security.Login メソッドを使用して適切な特権を持ったユーザとしてログインできます。
DO $SYSTEM.Security.Login("_SYSTEM","SYS")
&sql( )
&sql(CREATE VIEW CityAddressBook AS
SELECT Name,Home_Street FROM Sample.Person
WHERE Home_City='Boston')
IF SQLCODE=0 { WRITE !,"View created" }
ELSE { WRITE !,"CREATE VIEW error: ",SQLCODE
QUIT }
/* Use the view */
&sql(DROP VIEW CityAddressBook)
IF SQLCODE=0 { WRITE !,"View dropped" }
ELSEIF SQLCODE=-30 { WRITE !,"View non-existent" }
ELSEIF SQLCODE=-321 { WRITE !,"View referenced by other views" }
ELSE { WRITE !,"Unexpected DROP VIEW error: ",SQLCODE }