ibm-information-center/dist/eclipse/plugins/i5OS.ic.rzajp_5.4.0.1/rzajphoststrucdeclaration.htm

147 lines
8.6 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en-us" xml:lang="en-us">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="security" content="public" />
<meta name="Robots" content="index,follow" />
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
<meta name="DC.Type" content="reference" />
<meta name="DC.Title" content="Host structure declarations in C and C++ applications that use SQL" />
<meta name="abstract" content="These figures show the valid syntax for host structure declarations." />
<meta name="description" content="These figures show the valid syntax for host structure declarations." />
<meta name="DC.Relation" scheme="URI" content="rzajphoststrucc.htm" />
<meta name="copyright" content="(C) Copyright IBM Corporation 1998, 2006" />
<meta name="DC.Rights.Owner" content="(C) Copyright IBM Corporation 1998, 2006" />
<meta name="DC.Format" content="XHTML" />
<meta name="DC.Identifier" content="rzajphoststrucdeclaration" />
<meta name="DC.Language" content="en-us" />
<!-- All rights reserved. Licensed Materials Property of IBM -->
<!-- US Government Users Restricted Rights -->
<!-- Use, duplication or disclosure restricted by -->
<!-- GSA ADP Schedule Contract with IBM Corp. -->
<link rel="stylesheet" type="text/css" href="./ibmdita.css" />
<link rel="stylesheet" type="text/css" href="./ic.css" />
<title>Host structure declarations in C and C++ applications that use SQL</title>
</head>
<body id="rzajphoststrucdeclaration"><a name="rzajphoststrucdeclaration"><!-- --></a>
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<h1 class="topictitle1">Host structure declarations in C and C++ applications that use SQL</h1>
<div><p>These figures show the valid syntax for host structure declarations.</p>
<div class="section"><h4 class="sectiontitle">Host Structures</h4> <pre><span><img src="./c.gif" border="0" alt="Read syntax diagram" longdesc="rzajphoststrucdeclarationsyn1.htm" /></span><a href="#d0e16"><img src="./c.gif" border="0" alt="Skip visual syntax diagram" /></a>
>>-+--------+--+----------+--+---------+--struct--+-----+--{---->
   +-auto---+ +-const----+ '-_Packed-' '-<i>tag</i>-'    
   +-extern-+ '-volatile-'    
   '-static-'    
   .----------------------------------------------------------------.    
   | .-,-----. |    
   V V | |    
>----+-+-float----------------------------------+----<i>var-1</i>-+-- ; -+-+--}-->
    | +-double---------------------------------+ |    
    | +-decimal (--<i>precision</i>--+----------+--)--+ |    
    | | '-,--<i>scale</i>-' | |    
    | | .-int-. | |    
    | +-+-+--------+--+-long long-+--+-----+-+-+ |    
    | | | '-signed-' +-long------+ | | |    
    | | | '-short-----' | | |    
    | | +-sqlint32---------------------------+ | |    
    | | '-sqlint64---------------------------' | |    
    | +-<i>varchar-structure</i>----------------------+ |    
    | +-<i>vargraphic-structure</i>-------------------+ |    
    | +-<i>lob</i>------------------------------------+ |    
    | +-<i>SQL-varchar</i>----------------------------+ |    
    | +-<i>rowid</i>----------------------------------+ |    
    | '-<i>binary</i>---------------------------------' |    
    | .-,-----------------------. |    
    | V | |    
    +-+----------+--char----<i>var-2</i>--+--------------+-+-- ; -------+    
    | +-signed---+ '-[--<i>length</i>--]-' |    
    | '-unsigned-' |    
    | .-,-----------------------. |    
    | V | |    
    '-wchar_t----<i>var-5</i>--+--------------+-+-- ; ------------------'    
    '-[--<i>length</i>--]-'    
   .-,----------------------------------.    
   V |    
>----<i>variable-name</i>--+-----------------+-+-- ; ----------------->&lt;
    '- = --<i>expression</i>-'    
varchar-structure
    .-int-.    
|--struct--+-----+--{--+--------+--short--+-----+--<i>var-3</i>-- ; --->
    '-<i>tag</i>-' '-signed-'    
>--+----------+--char--<i>var-4</i>--[--<i>length</i>--]-- ; --}--------------|
   +-signed---+    
   '-unsigned-'    
</pre><a name="d0e16"></a></div>
<div class="section"><h4 class="sectiontitle">Host Structures (continued)</h4> <pre><span><img src="./c.gif" border="0" alt="Read syntax diagram" longdesc="rzajphoststrucdeclarationsyn2.htm" /></span><a href="#d0e196"><img src="./c.gif" border="0" alt="Skip visual syntax diagram" /></a>
vargraphic-structure
    .-int-.   
|--struct--+-----+--{--+--------+--short--+-----+--------------->
    '-<i>tag</i>-' '-signed-'    
>--<i>var-6</i>-- ; --wchar_t--<i>var-7</i>--[--<i>length</i>--]-- ; --}-------------|
lob
|--SQL TYPE IS--+-+-CLOB---+--(--<i>length</i>--+---+--)-+-------------|
    | +-DBCLOB-+ +-K-+ |   
    | '-BLOB---' +-M-+ |   
    | '-G-' |   
    +-+-CLOB_LOCATOR---+--------------+   
    | +-DBCLOB_LOCATOR-+ |   
    | '-BLOB_LOCATOR---' |   
    '-+-CLOB_FILE---+-----------------'   
    +-DBCLOB_FILE-+    
    '-BLOB_FILE---'    
SQL-varchar
|--VARCHAR--<i>variable-name</i>--[--<i>length</i>--]-------------------------|
rowid
|--SQL TYPE IS ROWID--------------------------------------------|
binary
|--SQL TYPE IS--+-BINARY---------+--(--<i>length</i>--)----------------|
    +-VARBINARY------+    
    '-BINARY VARYING-'    
</pre><a name="d0e196"></a></div>
<div class="section"> <div class="note"><span class="notetitle">Notes:</span> <ol><li>For details on declaring numeric, character, graphic, LOB, ROWID, and
binary host variables, see the notes under numeric, character, graphic, LOB,
ROWID, and binary host variables.</li>
<li>A structure of a short int followed by either a char or wchar_t array
is always interpreted by the SQL C and C++ precompilers as either a VARCHAR
or VARGRAPHIC structure.</li>
<li>_Packed must not be used in C++. Instead, specify #pragma pack(1) prior
to the declaration and #pragma pack() after the declaration. <pre>#pragma pack(1)
struct {
short myshort;
long mylong;
char mychar[5];
} a_st;
#pragma pack()</pre>
</li>
<li>If using sqlint32 or sqlint64, the header file sqlsystm.h must be included.</li>
</ol>
</div>
</div>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="rzajphoststrucc.htm" title="In C and C++ programs, you can define a host structure, which is a named set of elementary C or C++ variables.">Use host structures in C and C++ applications that use SQL</a></div>
</div>
</div>
</body>
</html>