Usage
Attribute numbers are 1 based.
If the given fname refers to a system attribute (eg, oid)
then the appropriate negative attribute number will be returned.
The caller should be careful to test for exact equality to
SPI_ERROR_NOATTRIBUTE to detect error;
testing for result <= 0 is not correct unless system attributes
should be rejected.