Hello David, thank you for your interest in that patch.
Le ven. 25 mars 2022 à 01:17, David G. Johnston <david.g.johns...@gmail.com> a écrit : > On Thu, Mar 24, 2022 at 4:42 PM Chapman Flack <c...@anastigmatix.net> > wrote: > >> On 03/27/21 08:57, Andrew Dunstan wrote: >> > We can bikeshed the name of the flag at some stage. --procedures-only >> > might also make sense >> >> Any takers for --routines-only ? >> >> "Routine" is the genuine, ISO SQL umbrella term for a function or >> procedure, and we have used it that way in our docs and glossary. >> >> > Regardless of the prefix name choice neither blobs, tables, nor schemas > use the "-only" suffix so I don't see that this should. I have no issue if > we add three options for this: --routine/--procedure/--function (these are > singular because --table and --schema are singular) > Actually, I thought of it after the --schema-only flag (which is kind of confusing, because it won't export only schema creation DDL). I agree to keep the flag name singular if we're using a pattern to cherry-pick the objects we want. My problem is how do you think we could get all the stored procedures/functions at once? --function=* ? It seems to me that exporting everything at once is the main use case (I'd be happy to be proven wrong), and it does not feel intuitive to use --function=*. How would you see to create 3 flags: --functions-only / --function=<pattern> / --exclude-function=<pattern> ? And then we could create the same series of 3 flags for other objects. Would that be too verbose? > > --blobs and --no-blobs are special so let us just build off of the API > already implemented for --table/--exclude-table > > No short option is required, and honestly I don't think it is worthwhile > to take up short options for this, acknowledging that we are leaving -t/-T > (and -n/-N) in place for legacy support. > I agree > > --blobs reacts to these additional object types in the same manner that it > reacts to --table. As soon as any of these object type inclusion options > is specified nothing except the options that are specified will be output. > Both data and schema, though, for most object types, data is not relevant. > If schema is not output then options that control schema content objects > only are ignored. > > The --exclude-* options behave in the same way as defined for -t/-T, > specifically the note in -T about when both are present. > > As with tables, the affirmative version of these overrides any --schema > (-n/-N) specification provided. But the --exclude-* versions of these do > omit the named objects from the dump should they have been selected by > --schema. > That's fine with me. Have a nice day, Lætitia > > David J. > >