如何使用元数据?

应用程序在大多数结果集操作中需要元数据。 例如,应用程序使用列的数据类型来确定要绑定到该列的变量类型。 它使用字符列的字节长度来确定显示该列的数据所需的空间量。 应用程序如何确定列的元数据取决于应用程序的类型。

垂直应用程序使用预定义表,并对这些表执行预定义作。 由于此类应用程序的结果集元数据是在应用程序编写之前定义的,并且由应用程序开发人员控制,因此它可以硬编码到应用程序中。 例如,如果将订单 ID 列定义为数据源中的 4 字节整数,则应用程序始终可以将 4 字节整数绑定到该列。 在应用程序中硬编码元数据时,对应用程序使用的表的更改通常意味着对应用程序代码的更改。 这很少出现问题,因为此类更改通常作为应用程序的新版本的一部分进行。

与垂直应用程序一样,自定义应用程序通常使用预定义表,并对这些表执行预定义作。 例如,可能会写入应用程序以在三个不同的数据源之间传输数据;写入应用程序时,通常知道要传输的数据。 因此,自定义应用程序也往往具有硬编码的元数据。

通用应用程序,尤其是那些支持即席查询的应用程序,几乎永远不知道它们创建的结果集的元数据。 因此,它们必须使用 SQLNumResultColsSQLDescribeCol 和 SQLColAttribute 函数在运行时发现元数据,这些函数在下一节中介绍了 SQLDescribeCol 和 SQLColAttribute

所有应用程序(无论其类型如何)都可以硬编码目录函数返回的结果集的元数据。 这些结果集是在本手册的参考部分中定义的。