mirror of
https://github.com/levinsv/pgadmin3.git
synced 2026-05-15 14:15:49 -06:00
fix view ROLE grant
Убраны повторяющиеся разделители ";" при выводе прав для роли
This commit is contained in:
parent
0e0a29706f
commit
b792f9e203
1 changed files with 12 additions and 10 deletions
|
|
@ -354,19 +354,21 @@ wxT(") aa where aa.grantee='")+GetName()+("' group by type,objname,grantee order
|
|||
wxString addgrant=wxEmptyString;
|
||||
while (!roles->Eof())
|
||||
{
|
||||
bool ad = true;
|
||||
if (wxT("tables")==roles->GetVal(wxT("type")) ) {
|
||||
addgrant += wxT("\nGRANT ") + roles->GetVal(wxT("priv")) + wxT(" ON TABLE ") + qtIdent(roles->GetVal(wxT("objname")).BeforeFirst('.'))+wxT(".")+qtIdent(roles->GetVal(wxT("objname")).AfterFirst('.'))
|
||||
+ wxT(" TO ") + qtIdent(GetName());
|
||||
}
|
||||
if (wxT("routine")==roles->GetVal(wxT("type")) ) {
|
||||
addgrant += wxT("\nGRANT EXECUTE ON FUNCTION ") + qtIdent(roles->GetVal(wxT("objname")).BeforeFirst('.'))+wxT(".")+qtIdent(roles->GetVal(wxT("objname")).AfterFirst('.'))
|
||||
+ wxT(" TO ") + qtIdent(GetName());
|
||||
}
|
||||
if (wxT("schema")==roles->GetVal(wxT("type")) ) {
|
||||
addgrant += wxT("\nGRANT USAGE ON SCHEMA ") + qtIdent(roles->GetVal(wxT("objname")))
|
||||
+ wxT(" TO ") + qtIdent(GetName());
|
||||
}
|
||||
addgrant += wxT(";");
|
||||
} else if (wxT("routine")==roles->GetVal(wxT("type")) ) {
|
||||
addgrant += wxT("\nGRANT EXECUTE ON FUNCTION ") + qtIdent(roles->GetVal(wxT("objname")).BeforeFirst('.'))+wxT(".")+qtIdent(roles->GetVal(wxT("objname")).AfterFirst('.'))
|
||||
+ wxT(" TO ") + qtIdent(GetName());
|
||||
} else if (wxT("schema")==roles->GetVal(wxT("type")) ) {
|
||||
addgrant += wxT("\nGRANT USAGE ON SCHEMA ") + qtIdent(roles->GetVal(wxT("objname")))
|
||||
+ wxT(" TO ") + qtIdent(GetName());
|
||||
}
|
||||
else {
|
||||
ad = false;
|
||||
}
|
||||
if (ad) addgrant += wxT(";");
|
||||
roles->MoveNext();
|
||||
}
|
||||
sql += wxT("\n")+ addgrant + wxT("\n");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue