Séptima entrega.
Muestra los primeros diez registros de la tabla de permisos de tablas
db2 “select * from syscat.tabauth fetch first 10 rows only”
Muestra los primeros diez registros de la tabla de permisos de la base
db2 “select * from syscat.dbauth fetch first 10 rows only”
Muestra las tablas del usuario en la base:
select * from syscat.tables where owner <> ‘SYSIBM’
Aunque es mejor ejecutar este comando desde el control center ya que el recordset no entra en ningún putty
Muestra los permisos del usuario sobre las tablas especificas
select * from syscat.tabauth where grantee = ‘DAFADMIN’
Este comando también es más practico desde el control center.
Ante un select fallido por permisos hago un grant y pruebo
dafapp@aixdesa:/home/dafapp> db2 “select * from DAFADMIN.TDEPT”
SQL0551N “DAFAPP” does not have the required authorization or privilege to
perform operation “SELECT” on object “DAFADMIN.TDEPT”. SQLSTATE=42501
El grant que permite el acceso a la tabla:
db2 “GRANT SELECT ON DAFADMIN.TDEPT TO DAFAPP”
La misma consulta, ahora exitosa.
dafapp@aixdesa:/home/dafapp> db2 “select * from DAFADMIN.TDEPT”
DEPTNO DEPTNAME MGRNO ADMRDEPT
—— ———————————— —— ——–
0 record(s) selected.
Creo una segunda tabla con dafapp
db2 “CREATE TABLE TDEPTAPP (DEPTNO CHAR (3) NOT NULL, DEPTNAME VARCHAR (36) NOT NULL, MGRNO CHAR (6), ADMRDEPT CHAR (3) NOT NULL, PRIMARY KEY (DEPTNO) )”
Veo como quedo, la primera en un esquema y la segunda en otro. Como siempre, cuando son muchas columnas es mejor usar el control center.
select * from syscat.tabauth
Para Salir o desconectarse de una base de datos usar el comando TERMINATE ya sea attach o connect.
