Sdílet prostřednictvím


Záznamů: Práce s velké položky dat (ODBC)

Toto téma se týká tříd MFC ODBC a tříd MFC DAO.

[!POZNÁMKA]

Pokud používáte tříd MFC DAO, spravovat velké datové položky s třídou CByteArray namísto třídy CLongBinary.Použít používáte tříd MFC ODBC s načítání řádku hromadné CLongBinary namísto CByteArray.Další informace o načítání řádků hromadného naleznete záznamů: načítání záznamů hromadné (ODBC).

Předpokládejme, že databáze můžete ukládat velkých kusů dat, například rastrové obrázky (fotografie zaměstnance, mapy, obrázky produktů, objekty OLE a podobně).Tento druh dat je často označována jako Binary Large Object (nebo BLOB) protože:

  • Každá hodnota pole je velký.

  • Na rozdíl od čísla a jiné jednoduché datové typy nemá žádné předvídatelné velikost.

  • Data jsou z hlediska programu formless.

Toto téma vysvětluje, jaká podpora poskytovat databáze tříd pro práci s takové objekty.

Správa velké objekty

Sady záznamů jsou dva způsoby, jak řešit zvláštní obtíže binární rozsáhlé objekty správy.Můžete použít třídu CByteArray nebo můžete použít třídu CLongBinary.Obecně CByteArray upřednostňovaným způsobem spravovat velké binární data.

CByteArrayvyžaduje další režii než CLongBinary , ale je schopen více popsaným v Třídě CByteArray.CLongBinaryje popsán v krátce Třídě CLongBinary.

Podrobné informace o použití CByteArray práci s velkých datových položek, viz Technická poznámka 45.

Třída CByteArray

CByteArrayje kolekce tříd MFC.A CByteArray objekt ukládá dynamické pole bajtů – matice může růst podle potřeby.Třída poskytuje rychlý přístup pomocí indexu jako u předdefinovaných polí C++.CByteArrayobjekty lze serializovat a dumpingové pro diagnostické účely.Třída dodává členské funkce pro získání a nastavení zadaných bajtů, vkládání a připojením bajtů a odebrání jednoho bajtu, nebo všechny bajty.Tato zařízení proveďte analýzu binární data snadněji.Například pokud je binární objekt objekt OLE, pravděpodobně pracovat přes některé bajty záhlaví k dosažení skutečného objektu.

Pomocí sady záznamů CByteArray

Tím, že datový člen vaší sady záznamů pole typu CByteArray, poskytují pevný základ ze kterého RFX takový objekt přenos mezi vaší sady záznamů a zdroj dat můžete spravovat a jehož prostřednictvím lze manipulovat s daty uvnitř objektu.RFX potřebuje pro načtená data určitého webu a je třeba přístup podkladová data.

Podrobné informace o použití CByteArray práci s velkých datových položek, viz Technická poznámka 45.

Třída CLongBinary

A CLongBinary objekt je jednoduché prostředí kolem HGLOBAL Popisovač bloku haldy přiděleno úložiště.Po sloupci tabulky obsahujícím binary large object je spojen se přiděluje RFX HGLOBAL zpracovat potřebuje přenášet data do záznamů a uloží popisovač v CLongBinary pole sady záznamů.

Naopak použijete HGLOBAL zpracování, m_hData, práce s daty, provozující, jako by v žádném zpracujete data.Kde je CByteArray přidává možnosti.

Poznámka k upozorněníUpozornění

CLongBinary objekty nelze použít jako parametry ve volání funkce.Kromě toho jejich provádění volání :: Funkce SQLGetData, nutně zpomaluje výkon posouvání posuvníkem snímku.To může být pravda při použití :: Funkce SQLGetData volání sami načíst schéma dynamické sloupce.

Viz také

Koncepty

Sady záznamů (ODBC)

Záznamů: Získání částek a jiných agregovat výsledky (ODBC)

Výměna pole záznamu (Record Field Exchange - RFX)