Sdílet prostřednictvím


Jak se používají metadata?

Aplikace vyžadují metadata pro většinu operací sady výsledků. Aplikace například používá datový typ sloupce k určení typu proměnné, která se má s tímto sloupcem svázat. Používá délku bajtu sloupce znaků k určení, kolik místa potřebuje k zobrazení dat z tohoto sloupce. Způsob, jakým aplikace určuje metadata pro sloupec, závisí na typu aplikace.

Vertikální aplikace pracují s předdefinovanými tabulkami a provádějí s těmito tabulkami předdefinované operace. Vzhledem k tomu, že metadata sady výsledků pro takové aplikace jsou definována před tím, než se aplikace zapíše a řídí ji vývojář aplikace, může být pevně zakódována do aplikace. Pokud je například sloupec ID objednávky definovaný jako 4 bajtové celé číslo ve zdroji dat, aplikace může vždy svázat 4 bajtové celé číslo s tímto sloupcem. Pokud jsou metadata v aplikaci pevně zakódovaná, změna tabulek používaných aplikací obecně znamená změnu kódu aplikace. Jedná se o zřídka problém, protože tyto změny se obvykle provádějí jako součást nové verze aplikace.

Podobně jako u vertikálních aplikací fungují vlastní aplikace s předdefinovanými tabulkami a provádějí s těmito tabulkami předdefinované operace. Aplikace může být například zapsána pro přenos dat mezi třemi různými zdroji dat; data, která se mají přenést, jsou obvykle známa při zápisu aplikace. Vlastní aplikace proto mají obvykle pevně zakódovaná metadata.

Obecné aplikace, zejména ty, které podporují ad hoc dotazy, téměř nikdy nezná metadata sad výsledků, které vytvářejí. Proto musí zjistit metadata za běhu pomocí funkcí SQLNumResultCols, SQLDescribeCol a SQLColAttribute, které jsou popsány v další části SQLDescribeCol a SQLColAttribute.

Všechny aplikace, bez ohledu na jejich typ, mohou pevně kódovat metadata pro sady výsledků vrácené funkcemi katalogu. Tyto sady výsledků jsou definovány v referenční části této příručky.