Attributes can have any name, but Libgda proposes some default names, see <link linkend="libgda-40-Attributes-manager.synopsis">this section</link>.
If there is already an attribute named attribute set, then its value is replaced with the new value,
except if value is null, in which case the attribute is removed.
Warning: attribute is not copied, if it needs to be freed when not used anymore, then destroy should point to
the functions which will free it (typically glib.global.gfree). If attribute does not need to be freed, then destroy can be null.
Set the value associated to a named attribute.
Attributes can have any name, but Libgda proposes some default names, see <link linkend="libgda-40-Attributes-manager.synopsis">this section</link>. If there is already an attribute named attribute set, then its value is replaced with the new value, except if value is null, in which case the attribute is removed.
Warning: attribute is not copied, if it needs to be freed when not used anymore, then destroy should point to the functions which will free it (typically glib.global.gfree). If attribute does not need to be freed, then destroy can be null.