Salve, mi si presenta un problema che non riesco a risolvere. accedo con una query php al mio database su postgres: ho una tabella test sul database social, ho un utente testrole sul quale faccio questa grant:
GRANT SELECT ON social.test TO testrole;
la grant va a buon fine e fin qui tutto ok;
da php ho la mia connessione al db:
function test_connection_pgsql() {
$connection = "host=localhost dbname=social user=testrole password=miapwd";
return pg_connect ($connection);
}
e faccio la query in questo modo:
if ($db = test_connection_pgsql()) {
print 'Connessione al DBMS riuscita.
';
$sql = "SELECT * FROM social.test";
$resource = pg_query($db, $sql);
$row = pg_fetch_array($resource,NULL,PGSQL_ASSOC);
print_r ($row);
pg_free_result($resource);
pg_close($db);
}
la cosa strana è che la connessione va a buon fine, infatti ottengo:
"Connessione al DBMS riuscita."
però a seguire mi dice che l'utente non ha il permesso di select sulla tabella(anche se l'ho precedentemente grantato):
Warning: pg_query(): Query failed: ERROR: permission denied for schema social LINE 1: SELECT * FROM social.test ^
dove sbaglio?

Rispondi quotando