Net.Data Verwaltung und Programmierung für OS/2, Windows NT und UNIX


Verwenden großer Objekte

Große Multimedia- und Dokumentobjekte sind Binärdateien wie BMP-, TIF-, GIF- und PostScript-Dateien, die zum Anzeigen oder Drucken verwendet werden. Sie können diese Dateien in DB2-Datenbanken auf den meisten Betriebssystemen speichern und über die SQL-Sprachumgebung für Ihre Web-Anwendung auf sie zugreifen.

Net.Data unterstützt die folgenden Arten großer Objekte (LOBs):

LOBs enthalten in der Regel in den ersten Byte eine Dateikennung, die die Art der in der Datei enthaltenen Informationen angibt. Wenn Net.Data ein LOB erkennt, fügt Net.Data der temporären Datei und der Net.Data-Makrovariablen, die für den Namen der Datei steht, die entsprechende Erweiterung hinzu. Wenn Sie keinen REPORT-Block in der Makrodatei haben, hängt Net.Data die Erweiterung .txt an CLOB-Dateien an. Net.Data erkennt die folgenden LOB-Formate:

Einschränkung: Net.Data erkennt und unterstützt keine anderen Dateitypen. Außerdem unterstützt Net.Data die SQL-Anweisungen UPDATE und INSERT für große Objekte nicht.

Hinweis zur Planung: Wenn eine Abfrage ein LOB zurückgibt, sichert Net.Data diese Datei in dem durch die Konfigurationsanweisung HTML_PATH angegebenen Verzeichnis. Bei der Verwendung von LOBs ist die jeweilige Systemausstattung zu berücksichtigen, da diese Objekte die Systemressourcen schnell aufbrauchen können. Einige LOBs, wie beispielsweise Audiodateien, erfordern spezielle Hardware und Software.

Beispiel 1: Zeigt ein Bild inline an

<IMG SRC="/tmplobs/filename">
<A HREF="/tmplobs/filename">filename</A>

Beispiel 2: Im folgenden Beispiel muß der Anwendungsbenutzer den Dateinamen anklicken, um das Anzeigeprogramm aufzurufen, weil die Anwendung eine .WAV-Datei verwendet. Net.Data erkennt diesen Dateityp nicht, so daß eine Variable EXEC verwendet wird, um die Erweiterung an die Datei anzuhängen.

%DEFINE{
docroot="/usr/lpp/internet/server_root/html"
rename=%EXEC "rename $(docroot)$(V3) $(docroot)$(V3).wav"
%}

%FUNCTION(DTW_SQL) queryData() {
SELECT Name, IDPhoto, Voice FROM RepProfile
   %REPORT{
<P>Here are the images you selected:<P>
   %ROW{
$(rename)
$(V1) Voice sample <IMG SRC="$(V2)">
<A HREF="$(V3.wav")>Voice sample</A><P>
%}
%}
%}

%HTML(REPORT) {
@queryData()
%}

Die Funktion queryData gibt folgenden HTML-Text zurück:

<P>Here are the images you selected:<P>
Kinson Yamamoto
<IMG SRC="/tmplobs/p2345n1.gif">
<A HREF="/tmplobs/p2345n2.wav">Voice sample</A><P>
Merilee Lau
<IMG SRC="/tmplobs/p2345n3.gif">
<A HREF="/tmplobs/p2345n4.wav">Voice sample</A><P>

Der REPORT-Block im vorangegangenen Beispiel verwendet die impliziten Tabellenvariablen V1, V2 und V3.

Nicht alle Web-Browser unterstützen Grafik und Ton. Zur Unterstützung der hier beschriebenen Funktionen wird möglicherweise spezielle Hardware und Software benötigt, wie zum Beispiel eine Audiokarte mit Treiber.


[ Seitenanfang | Vorherige Seite | Nächste Seite | Inhaltsverzeichnis | Index ]