Note that in result sets, not all columns have names and not all column names are unique. If you are using aliases, the name
of the column is the alias.
The GetColumnSQLName method differs from the GetColumnName method because the GetColumnSQLName method always returns just
the name of the column (without the table name as a prefix) for non-aliased, non-computed columns. While this behavior more
closely resembles the behavior of other ADO.NET providers, it is more likely to produce non-unique names.
Column IDs and count may change during a schema upgrade. To correctly identify a column, access it by name or refresh the
cached IDs and counts after a schema upgrade.