147 lines
8.6 KiB
HTML
147 lines
8.6 KiB
HTML
<?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>--+-----------------+-+-- ; -----------------><
|
||
'- = --<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>
|