Hello!

I'm working on adding to psql commands to print information about access 
methods. I ran into the following problem:
The command "\dA" (as well as several commands that I write) accept the access 
method name template. The resulting template is processed by the 
processSQLNamePattern () function, which means that a template with a schema 
can be fed to the input. But since the access method does not have schema, it's 
needed to handle somehow a command like "\dA foo. *". At this point, the 
command will display a full list of access methods, not paying attention to the 
presence of the schema name in the template. Function processSQLNamePattern () 
allows you to filter out the output, if for example to compare the name of the 
schema not with any value of the column, but with NULL. But in this case, 
patterns like "\dA *.*" will not be eliminated.

I also need a possibility to handle templates of type "schema.table.column", 
but the function processSQLNamePattern () can process only "schema.table".

In this regard, the question: is it still worth adding a new function capable 
of handling these cases, or should the psql user deal with output like 
"all_schemas.mathed_table.mathed_column"? And is it worth fixing the current 
behavior of "\dA foo.*"?

Reply via email to