<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<!--[if IE]><meta http-equiv="X-UA-Compatible" content="IE=edge"><![endif]-->
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="generator" content="Asciidoctor 1.5.4">
<title>Client Installation Guide</title>
<style>
/**
* @@@ START COPYRIGHT @@@  
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements.  See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership.  The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License.  You may obtain a copy of the License at
*
*   http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied.  See the License for the
* specific language governing permissions and limitations
* under the License.
*
* @@@ END COPYRIGHT @@@ 
  */
/* Asciidoctor default stylesheet | MIT License | http://asciidoctor.org */
/* Remove the comments around the @import statement below when using this as a custom stylesheet */
/*@import "https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400";*/
article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}
audio,canvas,video{display:inline-block}
audio:not([controls]){display:none;height:0}
[hidden],template{display:none}
script{display:none!important}
html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}
body{margin:0}
a{background:transparent}
a:focus{outline:thin dotted}
a:active,a:hover{outline:0}
h1{font-size:2em;margin:.67em 0}
abbr[title]{border-bottom:1px dotted}
b,strong{font-weight:bold}
dfn{font-style:italic}
hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}
mark{background:#ff0;color:#000}
code,kbd,pre,samp{font-family:monospace;font-size:1em}
pre{white-space:pre-wrap}
q{quotes:"\201C" "\201D" "\2018" "\2019"}
small{font-size:80%}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
sup{top:-.5em}
sub{bottom:-.25em}
img{border:0}
svg:not(:root){overflow:hidden}
figure{margin:0}
fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}
legend{border:0;padding:0}
button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}
button,input{line-height:normal}
button,select{text-transform:none}
button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}
button[disabled],html input[disabled]{cursor:default}
input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}
input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}
input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}
button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}
textarea{overflow:auto;vertical-align:top}
table{border-collapse:collapse;border-spacing:0}
*,*:before,*:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}
html,body{font-size:100%}
body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif,serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto}
a:hover{cursor:pointer}
img,object,embed{max-width:100%;height:auto}
object,embed{height:100%}
img{-ms-interpolation-mode:bicubic}
#map_canvas img,#map_canvas embed,#map_canvas object,.map_canvas img,.map_canvas embed,.map_canvas object{max-width:none!important}
.left{float:left!important}
.right{float:right!important}
.text-left{text-align:left!important}
.text-right{text-align:right!important}
.text-center{text-align:center!important}
.text-justify{text-align:justify!important}
.hide{display:none}
.antialiased,body{-webkit-font-smoothing:antialiased}
img{display:inline-block;vertical-align:middle}
textarea{height:auto;min-height:50px}
select{width:100%}
p.lead,.paragraph.lead>p,#preamble>.sectionbody>.paragraph:first-of-type p{font-size:1.21875em;line-height:1.6}
.subheader,.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{line-height:1.45;color:#3188ac;font-weight:400;margin-top:0;margin-bottom:.25em}
div,dl,dt,dd,ul,ol,li,h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0;direction:ltr}
a{color:#2156a5;text-decoration:underline;line-height:inherit}
a:hover,a:focus{color:#1d4b8f}
a img{border:none}
p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}
p aside{font-size:.875em;line-height:1.35;font-style:italic}
/* Defines headings */
h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:bold;font-style:normal;color:#3188ac;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}
h1 small,h2 small,h3 small,#toctitle small,.sidebarblock>.content>.title small,h4 small,h5 small,h6 small{font-size:60%;color:#e99b8f;line-height:0}
h1{font-size:2.125em}
h2{font-size:1.6875em}
h3,#toctitle,.sidebarblock>.content>.title{font-size:1.375em}
h4,h5{font-size:1.125em}
h6{font-size:1em}
hr{border:solid #ddddd8;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}
em,i{font-style:italic;line-height:inherit}
strong,b{font-weight:bold;line-height:inherit}
small{font-size:60%;line-height:inherit}
/* Defines the `text` (passthru) format */
code{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;font-weight:bold;color:#3188ac}
ul,ol,dl{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}
ul,ol,ul.no-bullet,ol.no-bullet{margin-left:1.5em}
ul li ul,ul li ol{margin-left:1.25em;margin-bottom:0;font-size:1em}
ul.square li ul,ul.circle li ul,ul.disc li ul{list-style:inherit}
ul.square{list-style-type:square}
ul.circle{list-style-type:circle}
ul.disc{list-style-type:disc}
ul.no-bullet{list-style:none}
ol li ul,ol li ol{margin-left:1.25em;margin-bottom:0}
dl dt{margin-bottom:.3125em;font-weight:bold}
dl dd{margin-bottom:1.25em}
abbr,acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}
abbr{text-transform:none}
blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}
blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}
blockquote cite:before{content:"\2014 \0020"}
blockquote cite a,blockquote cite a:visited{color:rgba(0,0,0,.6)}
blockquote,blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}
@media only screen and (min-width:768px){h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2}
h1{font-size:2.75em}
h2{font-size:2.3125em}
h3,#toctitle,.sidebarblock>.content>.title{font-size:1.6875em}
h4{font-size:1.4375em}}table{background:#fff;margin-bottom:1.25em;border:solid 1px #dedede}
table thead,table tfoot{background:#f7f8f7;font-weight:bold}
table thead tr th,table thead tr td,table tfoot tr th,table tfoot tr td{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}
table tr th,table tr td{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}
table tr.even,table tr.alt,table tr:nth-of-type(even){background:#f8f8f7}
table thead tr th,table tfoot tr th,table tbody tr td,table tr td,table tfoot tr td{display:table-cell;line-height:1.6}
h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2;word-spacing:-.05em}
h1 strong,h2 strong,h3 strong,#toctitle strong,.sidebarblock>.content>.title strong,h4 strong,h5 strong,h6 strong{font-weight:400}
.clearfix:before,.clearfix:after,.float-group:before,.float-group:after{content:" ";display:table}
.clearfix:after,.float-group:after{clear:both}
*:not(pre)>code{font-size:1.0em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;-webkit-border-radius:4px;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed}
/**:not(pre)>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background-color:#f7f7f8;-webkit-border-radius:4px;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed}*/
pre,pre>code{line-height:1.45;color:rgba(0,0,0,.9);font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;font-weight:400;text-rendering:optimizeSpeed}
.keyseq{color:rgba(51,51,51,.8)}
kbd{display:inline-block;color:rgba(0,0,0,.8);font-size:.75em;line-height:1.4;background-color:#f7f7f7;border:1px solid #ccc;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,.2),0 0 0 .1em white inset;box-shadow:0 1px 0 rgba(0,0,0,.2),0 0 0 .1em #fff inset;margin:-.15em .15em 0 .15em;padding:.2em .6em .2em .5em;vertical-align:middle;white-space:nowrap}
.keyseq kbd:first-child{margin-left:0}
.keyseq kbd:last-child{margin-right:0}
.menuseq,.menu{color:rgba(0,0,0,.8)}
b.button:before,b.button:after{position:relative;top:-1px;font-weight:400}
b.button:before{content:"[";padding:0 3px 0 2px}
b.button:after{content:"]";padding:0 2px 0 3px}
p a>code:hover{color:rgba(0,0,0,.9)}
#header,#content,#footnotes,#footer{width:100%;margin-left:auto;margin-right:auto;margin-top:0;margin-bottom:0;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}
#header:before,#header:after,#content:before,#content:after,#footnotes:before,#footnotes:after,#footer:before,#footer:after{content:" ";display:table}
#header:after,#content:after,#footnotes:after,#footer:after{clear:both}
#content{margin-top:1.25em}
#content:before{content:none}
/* #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0} */
#header>h1:first-child{color:#3188ac;margin-top:2.25rem;margin-bottom:0}
#header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #ddddd8}
#header>h1:only-child,body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #ddddd8;padding-bottom:8px}
#header .details{border-bottom:1px solid #ddddd8;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-flow:row wrap;-webkit-flex-flow:row wrap;flex-flow:row wrap}
#header .details span:first-child{margin-left:-.125em}
#header .details span.email a{color:rgba(0,0,0,.85)}
#header .details br{display:none}
#header .details br+span:before{content:"\00a0\2013\00a0"}
#header .details br+span.author:before{content:"\00a0\22c5\00a0";color:rgba(0,0,0,.85)}
#header .details br+span#revremark:before{content:"\00a0|\00a0"}
#header #revnumber{text-transform:capitalize}
#header #revnumber:after{content:"\00a0"}
#content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #ddddd8;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}
#toc{border-bottom:1px solid #efefed;padding-bottom:.5em}
#toc>ul{margin-left:.125em}
#toc ul.sectlevel0>li>a{font-style:italic}
#toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}
#toc ul{font-family:"Open Sans","DejaVu Sans",sans-serif;list-style-type:none}
#toc a{text-decoration:none}
#toc a:active{text-decoration:underline}
#toctitle{color:#3188ac;font-size:1.2em}
@media only screen and (min-width:768px){#toctitle{font-size:1.375em}
body.toc2{padding-left:15em;padding-right:0}
#toc.toc2{margin-top:0!important;background-color:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}
#toc.toc2 #toctitle{margin-top:0;font-size:1.2em}
#toc.toc2>ul{font-size:.9em;margin-bottom:0}
#toc.toc2 ul ul{margin-left:0;padding-left:1em}
#toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}
body.toc2.toc-right{padding-left:0;padding-right:15em}
body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #efefed;left:auto;right:0}}@media only screen and (min-width:1280px){body.toc2{padding-left:20em;padding-right:0}
/* Controls width of panel */
#toc.toc2{width:20em}
#toc.toc2 #toctitle{font-size:1.375em}
#toc.toc2>ul{font-size:.95em}
#toc.toc2 ul ul{padding-left:1.25em}
body.toc2.toc-right{padding-left:0;padding-right:20em}}#content #toc{border-style:solid;border-width:1px;border-color:#e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;-webkit-border-radius:4px;border-radius:4px}
#content #toc>:first-child{margin-top:0}
#content #toc>:last-child{margin-bottom:0}
#footer{max-width:100%;background-color:rgba(0,0,0,.8);padding:1.25em}
#footer-text,#footer_nav{color:rgba(255,255,255,.8);line-height:1.44}
#footer a{color: #990000}
.sect1{padding-bottom:.625em}
@media only screen and (min-width:768px){.sect1{padding-bottom:1.25em}}.sect1+.sect1{border-top:1px solid #efefed}
#content h1>a.anchor,h2>a.anchor,h3>a.anchor,#toctitle>a.anchor,.sidebarblock>.content>.title>a.anchor,h4>a.anchor,h5>a.anchor,h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}
#content h1>a.anchor:before,h2>a.anchor:before,h3>a.anchor:before,#toctitle>a.anchor:before,.sidebarblock>.content>.title>a.anchor:before,h4>a.anchor:before,h5>a.anchor:before,h6>a.anchor:before{content:"\00A7";font-size:.85em;display:block;padding-top:.1em}
#content h1:hover>a.anchor,#content h1>a.anchor:hover,h2:hover>a.anchor,h2>a.anchor:hover,h3:hover>a.anchor,#toctitle:hover>a.anchor,.sidebarblock>.content>.title:hover>a.anchor,h3>a.anchor:hover,#toctitle>a.anchor:hover,.sidebarblock>.content>.title>a.anchor:hover,h4:hover>a.anchor,h4>a.anchor:hover,h5:hover>a.anchor,h5>a.anchor:hover,h6:hover>a.anchor,h6>a.anchor:hover{visibility:visible}
#content h1>a.link,h2>a.link,h3>a.link,#toctitle>a.link,.sidebarblock>.content>.title>a.link,h4>a.link,h5>a.link,h6>a.link{color:#990000;text-decoration:none}
#content h1>a.link:hover,h2>a.link:hover,h3>a.link:hover,#toctitle>a.link:hover,.sidebarblock>.content>.title>a.link:hover,h4>a.link:hover,h5>a.link:hover,h6>a.link:hover{color:#a53221}
.audioblock,.imageblock,.literalblock,.listingblock,.stemblock,.videoblock{margin-bottom:1.25em}
.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif,serif;font-size:1rem;font-weight:bold}
/* Here */
table.tableblock>caption.title{white-space:nowrap;overflow:visible;max-width:0}
.paragraph.lead>p,#preamble>.sectionbody>.paragraph:first-of-type p{color:rgba(0,0,0,.85)}
table.tableblock #preamble>.sectionbody>.paragraph:first-of-type p{font-size:inherit}
.admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}
.admonitionblock>table td.icon{text-align:center;width:80px}
.admonitionblock>table td.icon img{max-width:none}
.admonitionblock>table td.icon .title{font-weight:bold;font-family:"Open Sans","DejaVu Sans",sans-serif;text-transform:uppercase}
.admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #ddddd8;color:rgba(0,0,0,.6)}
.admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}
.exampleblock>.content{border-style:solid;border-width:1px;border-color:#e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;-webkit-border-radius:4px;border-radius:4px}
.exampleblock>.content>:first-child{margin-top:0}
.exampleblock>.content>:last-child{margin-bottom:0}
.sidebarblock{border-style:solid;border-width:1px;border-color:#e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;-webkit-border-radius:4px;border-radius:4px}
.sidebarblock>:first-child{margin-top:0}
.sidebarblock>:last-child{margin-bottom:0}
.sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}
.exampleblock>.content>:last-child>:last-child,.exampleblock>.content .olist>ol>li:last-child>:last-child,.exampleblock>.content .ulist>ul>li:last-child>:last-child,.exampleblock>.content .qlist>ol>li:last-child>:last-child,.sidebarblock>.content>:last-child>:last-child,.sidebarblock>.content .olist>ol>li:last-child>:last-child,.sidebarblock>.content .ulist>ul>li:last-child>:last-child,.sidebarblock>.content .qlist>ol>li:last-child>:last-child{margin-bottom:0}
.literalblock pre,.listingblock pre:not(.highlight),.listingblock pre[class="highlight"],.listingblock pre[class^="highlight "],.listingblock pre.CodeRay,.listingblock pre.prettyprint{background:#f7f7f8}
.sidebarblock .literalblock pre,.sidebarblock .listingblock pre:not(.highlight),.sidebarblock .listingblock pre[class="highlight"],.sidebarblock .listingblock pre[class^="highlight "],.sidebarblock .listingblock pre.CodeRay,.sidebarblock .listingblock pre.prettyprint{background:#f2f1f1}
.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{-webkit-border-radius:4px;border-radius:4px;word-wrap:break-word;padding:1em;font-size:.8125em}
.literalblock pre.nowrap,.literalblock pre[class].nowrap,.listingblock pre.nowrap,.listingblock pre[class].nowrap{overflow-x:auto;white-space:pre;word-wrap:normal}
@media only screen and (min-width:768px){.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{font-size:.90625em}}@media only screen and (min-width:1280px){.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{font-size:1em}}.literalblock.output pre{color:#f7f7f8;background-color:rgba(0,0,0,.9)}
.listingblock pre.highlightjs{padding:0}
.listingblock pre.highlightjs>code{padding:1em;-webkit-border-radius:4px;border-radius:4px}
.listingblock pre.prettyprint{border-width:0}
.listingblock>.content{position:relative}
.listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:#999}
.listingblock:hover code[data-lang]:before{display:block}
.listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:#999}
.listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}
table.pyhltable{border-collapse:separate;border:0;margin-bottom:0;background:none}
table.pyhltable td{vertical-align:top;padding-top:0;padding-bottom:0}
table.pyhltable td.code{padding-left:.75em;padding-right:0}
pre.pygments .lineno,table.pyhltable td:not(.code){color:#999;padding-left:0;padding-right:.5em;border-right:1px solid #ddddd8}
pre.pygments .lineno{display:inline-block;margin-right:.25em}
table.pyhltable .linenodiv{background:none!important;padding-right:0!important}
.quoteblock{margin:0 1em 1.25em 1.5em;display:table}
.quoteblock>.title{margin-left:-1.5em;margin-bottom:.75em}
.quoteblock blockquote,.quoteblock blockquote p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}
.quoteblock blockquote{margin:0;padding:0;border:0}
.quoteblock blockquote:before{content:"\201c";float:left;font-size:2.75em;font-weight:bold;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}
.quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}
.quoteblock .attribution{margin-top:.5em;margin-right:.5ex;text-align:right}
.quoteblock .quoteblock{margin-left:0;margin-right:0;padding:.5em 0;border-left:3px solid rgba(0,0,0,.6)}
.quoteblock .quoteblock blockquote{padding:0 0 0 .75em}
.quoteblock .quoteblock blockquote:before{display:none}
.verseblock{margin:0 1em 1.25em 1em}
.verseblock pre{font-family:"Open Sans","DejaVu Sans",sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}
.verseblock pre strong{font-weight:400}
.verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}
.quoteblock .attribution,.verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}
.quoteblock .attribution br,.verseblock .attribution br{display:none}
.quoteblock .attribution cite,.verseblock .attribution cite{display:block;letter-spacing:-.05em;color:rgba(0,0,0,.6)}
.quoteblock.abstract{margin:0 0 1.25em 0;display:block}
.quoteblock.abstract blockquote,.quoteblock.abstract blockquote p{text-align:left;word-spacing:0}
.quoteblock.abstract blockquote:before,.quoteblock.abstract blockquote p:first-of-type:before{display:none}
table.tableblock{max-width:100%;border-collapse:separate}
table.tableblock td>.paragraph:last-child p>p:last-child,table.tableblock th>p:last-child,table.tableblock td>p:last-child{margin-bottom:0}
table.spread{width:100%}
table.tableblock,th.tableblock,td.tableblock{border:0 solid #dedede}
table.grid-all th.tableblock,table.grid-all td.tableblock{border-width:0 1px 1px 0}
table.grid-all tfoot>tr>th.tableblock,table.grid-all tfoot>tr>td.tableblock{border-width:1px 1px 0 0}
table.grid-cols th.tableblock,table.grid-cols td.tableblock{border-width:0 1px 0 0}
table.grid-all *>tr>.tableblock:last-child,table.grid-cols *>tr>.tableblock:last-child{border-right-width:0}
table.grid-rows th.tableblock,table.grid-rows td.tableblock{border-width:0 0 1px 0}
table.grid-all tbody>tr:last-child>th.tableblock,table.grid-all tbody>tr:last-child>td.tableblock,table.grid-all thead:last-child>tr>th.tableblock,table.grid-rows tbody>tr:last-child>th.tableblock,table.grid-rows tbody>tr:last-child>td.tableblock,table.grid-rows thead:last-child>tr>th.tableblock{border-bottom-width:0}
table.grid-rows tfoot>tr>th.tableblock,table.grid-rows tfoot>tr>td.tableblock{border-width:1px 0 0 0}
table.frame-all{border-width:1px}
table.frame-sides{border-width:0 1px}
table.frame-topbot{border-width:1px 0}
th.halign-left,td.halign-left{text-align:left}
th.halign-right,td.halign-right{text-align:right}
th.halign-center,td.halign-center{text-align:center}
th.valign-top,td.valign-top{vertical-align:top}
th.valign-bottom,td.valign-bottom{vertical-align:bottom}
th.valign-middle,td.valign-middle{vertical-align:middle}
table thead th,table tfoot th{font-weight:bold}
tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}
tbody tr th,tbody tr th p,tfoot tr th,tfoot tr th p{color:rgba(0,0,0,.8);font-weight:bold}
p.tableblock>code:only-child{background:none;padding:0}
p.tableblock{font-size:1em}
td>div.verse{white-space:pre}
ol{margin-left:1.75em}
ul li ol{margin-left:1.5em}
dl dd{margin-left:1.125em}
dl dd:last-child,dl dd:last-child>:last-child{margin-bottom:0}
ol>li p,ul>li p,ul dd,ol dd,.olist .olist,.ulist .ulist,.ulist .olist,.olist .ulist{margin-bottom:.625em}
ul.unstyled,ol.unnumbered,ul.checklist,ul.none{list-style-type:none}
ul.unstyled,ol.unnumbered,ul.checklist{margin-left:.625em}
ul.checklist li>p:first-child>.fa-square-o:first-child,ul.checklist li>p:first-child>.fa-check-square-o:first-child{width:1em;font-size:.85em}
ul.checklist li>p:first-child>input[type="checkbox"]:first-child{width:1em;position:relative;top:1px}
ul.inline{margin:0 auto .625em auto;margin-left:-1.375em;margin-right:0;padding:0;list-style:none;overflow:hidden}
ul.inline>li{list-style:none;float:left;margin-left:1.375em;display:block}
ul.inline>li>*{display:block}
.unstyled dl dt{font-weight:400;font-style:normal}
ol.arabic{list-style-type:decimal}
ol.decimal{list-style-type:decimal-leading-zero}
ol.loweralpha{list-style-type:lower-alpha}
ol.upperalpha{list-style-type:upper-alpha}
ol.lowerroman{list-style-type:lower-roman}
ol.upperroman{list-style-type:upper-roman}
ol.lowergreek{list-style-type:lower-greek}
.hdlist>table,.colist>table{border:0;background:none}
.hdlist>table>tbody>tr,.colist>table>tbody>tr{background:none}
td.hdlist1{padding-right:.75em;font-weight:bold}
td.hdlist1,td.hdlist2{vertical-align:top}
.literalblock+.colist,.listingblock+.colist{margin-top:-.5em}
.colist>table tr>td:first-of-type{padding:0 .75em;line-height:1}
.colist>table tr>td:last-of-type{padding:.25em 0}
.thumb,.th{line-height:0;display:inline-block;border:solid 4px #fff;-webkit-box-shadow:0 0 0 1px #ddd;box-shadow:0 0 0 1px #ddd}
.imageblock.left,.imageblock[style*="float: left"]{margin:.25em .625em 1.25em 0}
.imageblock.right,.imageblock[style*="float: right"]{margin:.25em 0 1.25em .625em}
.imageblock>.title{margin-bottom:0}
.imageblock.thumb,.imageblock.th{border-width:6px}
.imageblock.thumb>.title,.imageblock.th>.title{padding:0 .125em}
.image.left,.image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}
.image.left{margin-right:.625em}
.image.right{margin-left:.625em}
a.image{text-decoration:none}
span.footnote,span.footnoteref{vertical-align:super;font-size:.875em}
span.footnote a,span.footnoteref a{text-decoration:none}
span.footnote a:active,span.footnoteref a:active{text-decoration:underline}
#footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}
#footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em 0;border-width:1px 0 0 0}
#footnotes .footnote{padding:0 .375em;line-height:1.3;font-size:.875em;margin-left:1.2em;text-indent:-1.2em;margin-bottom:.2em}
#footnotes .footnote a:first-of-type{font-weight:bold;text-decoration:none}
#footnotes .footnote:last-of-type{margin-bottom:0}
#content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}
.gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}
.gist .file-data>table td.line-data{width:99%}
div.unbreakable{page-break-inside:avoid}
.big{font-size:larger}
.small{font-size:smaller}
.underline{text-decoration:underline}
.overline{text-decoration:overline}
.line-through{text-decoration:line-through}
.aqua{color:#00bfbf}
.aqua-background{background-color:#00fafa}
.black{color:#000}
.black-background{background-color:#000}
.blue{color:#0000bf}
.blue-background{background-color:#0000fa}
.fuchsia{color:#bf00bf}
.fuchsia-background{background-color:#fa00fa}
.gray{color:#606060}
.gray-background{background-color:#7d7d7d}
.green{color:#006000}
.green-background{background-color:#007d00}
.lime{color:#00bf00}
.lime-background{background-color:#00fa00}
.maroon{color:#600000}
.maroon-background{background-color:#7d0000}
.navy{color:#000060}
.navy-background{background-color:#00007d}
.olive{color:#606000}
.olive-background{background-color:#7d7d00}
.purple{color:#600060}
.purple-background{background-color:#7d007d}
.red{color:#bf0000}
.red-background{background-color:#fa0000}
.silver{color:#909090}
.silver-background{background-color:#bcbcbc}
.teal{color:#006060}
.teal-background{background-color:#007d7d}
.white{color:#bfbfbf}
.white-background{background-color:#fafafa}
.yellow{color:#bfbf00}
.yellow-background{background-color:#fafa00}
span.icon>.fa{cursor:default}
.admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}
.admonitionblock td.icon .icon-note:before{content:"\f05a";color:#19407c}
.admonitionblock td.icon .icon-tip:before{content:"\f0eb";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}
.admonitionblock td.icon .icon-warning:before{content:"\f071";color:#bf6900}
.admonitionblock td.icon .icon-caution:before{content:"\f06d";color:#bf3400}
.admonitionblock td.icon .icon-important:before{content:"\f06a";color:#bf0000}
.conum[data-value]{display:inline-block;color:#fff!important;background-color:rgba(0,0,0,.8);-webkit-border-radius:100px;border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:"Open Sans","DejaVu Sans",sans-serif;font-style:normal;font-weight:bold}
.conum[data-value] *{color:#fff!important}
.conum[data-value]+b{display:none}
.conum[data-value]:after{content:attr(data-value)}
pre .conum[data-value]{position:relative;top:-.125em}
b.conum *{color:inherit!important}
.conum:not([data-value]):empty{display:none}
h1,h2{letter-spacing:-.01em}
dt,th.tableblock,td.content{text-rendering:optimizeLegibility}
p,td.content{letter-spacing:-.01em}
p strong,td.content strong{letter-spacing:-.005em}
p,blockquote,dt,td.content{font-size:1.0625rem}
p{margin-bottom:1.25rem}
.sidebarblock p,.sidebarblock dt,.sidebarblock td.content,p.tableblock{font-size:1em}
.exampleblock>.content{background-color:#fffef7;border-color:#e0e0dc;-webkit-box-shadow:0 1px 4px #e0e0dc;box-shadow:0 1px 4px #e0e0dc}
.print-only{display:none!important}
@media print{@page{margin:1.25cm .75cm}
*{-webkit-box-shadow:none!important;box-shadow:none!important;text-shadow:none!important}
a{color:inherit!important;text-decoration:underline!important}
a.bare,a[href^="#"],a[href^="mailto:"]{text-decoration:none!important}
a[href^="http:"]:not(.bare):after,a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}
abbr[title]:after{content:" (" attr(title) ")"}
pre,blockquote,tr,img{page-break-inside:avoid}
thead{display:table-header-group}
img{max-width:100%!important}
p,blockquote,dt,td.content{font-size:1em;orphans:3;widows:3}
h2,h3,#toctitle,.sidebarblock>.content>.title{page-break-after:avoid}
#toc,.sidebarblock,.exampleblock>.content{background:none!important}
#toc{border-bottom:1px solid #ddddd8!important;padding-bottom:0!important}
.sect1{padding-bottom:0!important}
.sect1+.sect1{border:0!important}
#header>h1:first-child{margin-top:1.25rem}
body.book #header{text-align:center}
body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em 0}
body.book #header .details{border:0!important;display:block;padding:0!important}
body.book #header .details span:first-child{margin-left:0!important}
body.book #header .details br{display:block}
body.book #header .details br+span:before{content:none!important}
body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}
body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-break-before:always}
.listingblock code[data-lang]:before{display:block}
#footer{background:none!important;padding:0 .9375em}
#footer-text{color:rgba(0,0,0,.6)!important;font-size:.9em}
.hide-on-print{display:none!important}
.print-only{display:block!important}
.hide-for-print{display:none!important}
.show-for-print{display:inherit!important}}
div.paragraph.indented p {padding-left: 3em;}
div.paragraph.indented2 p {padding-left: 6em;}
div.paragraph.indented3 p {padding-left: 9em;}

</style>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.5.0/css/font-awesome.min.css">
<style>
/* Stylesheet for CodeRay to match GitHub theme | MIT License | http://foundation.zurb.com */
/*pre.CodeRay {background-color:#f7f7f8;}*/
.CodeRay .line-numbers{border-right:1px solid #d8d8d8;padding:0 0.5em 0 .25em}
.CodeRay span.line-numbers{display:inline-block;margin-right:.5em;color:rgba(0,0,0,.3)}
.CodeRay .line-numbers strong{color:rgba(0,0,0,.4)}
table.CodeRay{border-collapse:separate;border-spacing:0;margin-bottom:0;border:0;background:none}
table.CodeRay td{vertical-align: top;line-height:1.45}
table.CodeRay td.line-numbers{text-align:right}
table.CodeRay td.line-numbers>pre{padding:0;color:rgba(0,0,0,.3)}
table.CodeRay td.code{padding:0 0 0 .5em}
table.CodeRay td.code>pre{padding:0}
.CodeRay .debug{color:#fff !important;background:#000080 !important}
.CodeRay .annotation{color:#007}
.CodeRay .attribute-name{color:#000080}
.CodeRay .attribute-value{color:#700}
.CodeRay .binary{color:#509}
.CodeRay .comment{color:#998;font-style:italic}
.CodeRay .char{color:#04d}
.CodeRay .char .content{color:#04d}
.CodeRay .char .delimiter{color:#039}
.CodeRay .class{color:#458;font-weight:bold}
.CodeRay .complex{color:#a08}
.CodeRay .constant,.CodeRay .predefined-constant{color:#008080}
.CodeRay .color{color:#099}
.CodeRay .class-variable{color:#369}
.CodeRay .decorator{color:#b0b}
.CodeRay .definition{color:#099}
.CodeRay .delimiter{color:#000}
.CodeRay .doc{color:#970}
.CodeRay .doctype{color:#34b}
.CodeRay .doc-string{color:#d42}
.CodeRay .escape{color:#666}
.CodeRay .entity{color:#800}
.CodeRay .error{color:#808}
.CodeRay .exception{color:inherit}
.CodeRay .filename{color:#099}
.CodeRay .function{color:#900;font-weight:bold}
.CodeRay .global-variable{color:#008080}
.CodeRay .hex{color:#058}
.CodeRay .integer,.CodeRay .float{color:#099}
.CodeRay .include{color:#555}
.CodeRay .inline{color:#000}
.CodeRay .inline .inline{background:#ccc}
.CodeRay .inline .inline .inline{background:#bbb}
.CodeRay .inline .inline-delimiter{color:#d14}
.CodeRay .inline-delimiter{color:#d14}
.CodeRay .important{color:#555;font-weight:bold}
.CodeRay .interpreted{color:#b2b}
.CodeRay .instance-variable{color:#008080}
.CodeRay .label{color:#970}
.CodeRay .local-variable{color:#963}
.CodeRay .octal{color:#40e}
.CodeRay .predefined{color:#369}
.CodeRay .preprocessor{color:#579}
.CodeRay .pseudo-class{color:#555}
.CodeRay .directive{font-weight:bold}
.CodeRay .type{font-weight:bold}
.CodeRay .predefined-type{color:inherit}
.CodeRay .reserved,.CodeRay .keyword {color:#000;font-weight:bold}
.CodeRay .key{color:#808}
.CodeRay .key .delimiter{color:#606}
.CodeRay .key .char{color:#80f}
.CodeRay .value{color:#088}
.CodeRay .regexp .delimiter{color:#808}
.CodeRay .regexp .content{color:#808}
.CodeRay .regexp .modifier{color:#808}
.CodeRay .regexp .char{color:#d14}
.CodeRay .regexp .function{color:#404;font-weight:bold}
.CodeRay .string{color:#d20}
.CodeRay .string .string .string{background:#ffd0d0}
.CodeRay .string .content{color:#d14}
.CodeRay .string .char{color:#d14}
.CodeRay .string .delimiter{color:#d14}
.CodeRay .shell{color:#d14}
.CodeRay .shell .delimiter{color:#d14}
.CodeRay .symbol{color:#990073}
.CodeRay .symbol .content{color:#a60}
.CodeRay .symbol .delimiter{color:#630}
.CodeRay .tag{color:#008080}
.CodeRay .tag-special{color:#d70}
.CodeRay .variable{color:#036}
.CodeRay .insert{background:#afa}
.CodeRay .delete{background:#faa}
.CodeRay .change{color:#aaf;background:#007}
.CodeRay .head{color:#f8f;background:#505}
.CodeRay .insert .insert{color:#080}
.CodeRay .delete .delete{color:#800}
.CodeRay .change .change{color:#66f}
.CodeRay .head .head{color:#f4f}
</style>
</head>
<body class="book toc2 toc-left">
<div id="header">
<h1>Client Installation Guide</h1>
<div class="details">
<span id="revnumber">version 2.0.0</span>
</div>
<div id="toc" class="toc2">
<div id="toctitle">Table of Contents</div>
<ul class="sectlevel1">
<li><a href="#_about_this_document">1. About This Document</a>
<ul class="sectlevel2">
<li><a href="#_intended_audience">1.1. Intended Audience</a></li>
<li><a href="#_new_and_changed_information">1.2. New and Changed Information</a></li>
<li><a href="#_notation_conventions">1.3. Notation Conventions</a></li>
<li><a href="#_publishing_history">1.4. Publishing History</a></li>
<li><a href="#_comments_encouraged">1.5. Comments Encouraged</a></li>
</ul>
</li>
<li><a href="#_trafodion_client_products">2. Trafodion Client Products</a>
<ul class="sectlevel2">
<li><a href="#_client_summary">2.1. Client Summary</a></li>
</ul>
</li>
<li><a href="#_install_windows_odbc_driver">3. Install Windows ODBC Driver</a>
<ul class="sectlevel2">
<li><a href="#_installation_package">3.1. Installation Package</a></li>
<li><a href="#_installation_requirements">3.2. Installation Requirements</a></li>
<li><a href="#_installation_instructions">3.3. Installation Instructions</a>
<ul class="sectlevel3">
<li><a href="#win_odbc_install">3.3.1. Install Windows ODBC Driver</a></li>
<li><a href="#_reinstall_windows_odbc_driver">3.3.2. Reinstall Windows ODBC Driver</a></li>
<li><a href="#win_odbc_uninstall">3.3.3. Uninstalling Windows ODBC Driver</a></li>
<li><a href="#win_odbc_client_env">3.3.4. Set Up Client Environment</a></li>
<li><a href="#_enable_compression">3.3.5. Enable Compression</a></li>
<li><a href="#win_odbc_run_basicsql">3.3.6. Run Sample Program (<code>basicsql</code>)</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#_install_linux_odbc_driver">4. Install Linux ODBC Driver</a>
<ul class="sectlevel2">
<li><a href="#_installation_packaged">4.1. Installation Packaged</a></li>
<li><a href="#_installation_requirements_2">4.2. Installation Requirements</a></li>
<li><a href="#_installation_instructions_2">4.3. Installation Instructions</a>
<ul class="sectlevel3">
<li><a href="#_download_linux_odbc_driver">4.3.1. Download Linux ODBC Driver</a></li>
<li><a href="#_install_reinstall_linux_odbc_driver">4.3.2. Install/Reinstall Linux ODBC Driver</a></li>
<li><a href="#_set_up_client_environment">4.3.3. Set Up Client Environment</a></li>
<li><a href="#_enable_compression_2">4.3.4. Enable Compression</a></li>
<li><a href="#_use_third_party_driver_manager">4.3.5. Use Third-Party Driver Manager</a></li>
<li><a href="#_run_sample_program_code_connect_test_code">4.3.6. Run Sample Program (<code>connect_test</code>)</a></li>
<li><a href="#linux_odbc_run_basicsql">4.3.7. Run Sample Program (<code>basicsql</code>)</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#_install_jdbc_type_4_driver">5. Install JDBC Type-4 Driver</a>
<ul class="sectlevel2">
<li><a href="#_installation_package_2">5.1. Installation Package</a></li>
<li><a href="#_installation_requirements_3">5.2. Installation Requirements</a>
<ul class="sectlevel3">
<li><a href="#jdbct4_JRE">5.2.1. Install Java Runtime Environment (JRE)</a></li>
</ul>
</li>
<li><a href="#jdbct4_install">5.3. Installation Instructions</a>
<ul class="sectlevel3">
<li><a href="#jdbct4_download">5.3.1. Download JDBC Type-4 Driver</a></li>
<li><a href="#jdbct4_install_zip">5.3.2. Install JDBC Type-4 Driver</a></li>
<li><a href="#_uninstall_jdbc_type_4_driver">5.3.3. Uninstall JDBC Type-4 Driver</a></li>
<li><a href="#_reinstall_jdbc_type_4_driver">5.3.4. Reinstall JDBC Type-4 Driver</a></li>
</ul>
</li>
<li><a href="#jdbct4_setup_env">5.4. Set Up Client Environment</a>
<ul class="sectlevel3">
<li><a href="#_configure_applications">5.4.1. Configure Applications</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#_install_trafci">6. Install TrafCI</a>
<ul class="sectlevel2">
<li><a href="#_installation_package_3">6.1. Installation Package</a></li>
<li><a href="#_installation_requirements_4">6.2. Installation Requirements</a>
<ul class="sectlevel3">
<li><a href="#trafci_JRE">6.2.1. Install/Verify Java Runtime Environment</a></li>
<li><a href="#trafci_install_jdbct4">6.2.2. Install/Verify JDBC Type-4 Driver</a></li>
<li><a href="#trafci_perl_python">6.2.3. Install Perl or Python</a></li>
</ul>
</li>
<li><a href="#_installation_instructions_3">6.3. Installation Instructions</a>
<ul class="sectlevel3">
<li><a href="#trafci_download_installer">6.3.1. Download Installer</a></li>
<li><a href="#trafci_run_installer">6.3.2. Run Executable JAR Installer</a></li>
<li><a href="#trafci_uninstall">6.3.3. Uninstall TrafCI</a></li>
</ul>
</li>
<li><a href="#_post_installation_instructions">6.4. Post-Installation Instructions</a>
<ul class="sectlevel3">
<li><a href="#_verify_installed_software_files">6.4.1. Verify Installed Software Files</a></li>
<li><a href="#_test_launching_trafci">6.4.2. Test Launching TrafCI</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#_install_odb">7. Install odb</a>
<ul class="sectlevel2">
<li><a href="#_installation_package_4">7.1. Installation Package</a></li>
<li><a href="#_installation_requirements_5">7.2. Installation Requirements</a></li>
<li><a href="#_installation_instructions_4">7.3. Installation Instructions</a>
<ul class="sectlevel3">
<li><a href="#odb_download">7.3.1. Download odb</a></li>
<li><a href="#odb_install">7.3.2. Install odb</a></li>
<li><a href="#odb_uninstall">7.3.3. Uninstall odb</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#_configure_dbvisualizer">8. Configure DbVisualizer</a>
<ul class="sectlevel2">
<li><a href="#_prerequisite_software">8.1. Prerequisite Software</a></li>
<li><a href="#_configuration_instructions">8.2. Configuration Instructions</a>
<ul class="sectlevel3">
<li><a href="#_disable_connection_validation_select_option">8.2.1. Disable Connection Validation Select Option</a></li>
<li><a href="#_register_jdbc_type_4_driver">8.2.2. Register JDBC Type-4 Driver</a></li>
<li><a href="#_connect_to_trafodion">8.2.3. Connect to Trafodion</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#_configure_squirrel_client">9. Configure SQuirreL Client</a>
<ul class="sectlevel2">
<li><a href="#_prerequisite_software_2">9.1. Prerequisite Software</a></li>
<li><a href="#_configuration_instructions_2">9.2. Configuration Instructions</a>
<ul class="sectlevel3">
<li><a href="#_register_jdbc_type_4_driver_2">9.2.1. Register JDBC Type-4 Driver</a></li>
<li><a href="#_connect_to_trafodion_2">9.2.2. Connect to Trafodion</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#_appendix">10. Appendix</a>
<ul class="sectlevel2">
<li><a href="#odbc_sample_program">10.1. <code>basicsql</code> (Sample ODBC Program)</a>
<ul class="sectlevel3">
<li><a href="#__code_basicsql_cpp_code_source_code">10.1.1. <code>basicsql.cpp</code> Source Code</a></li>
<li><a href="#basicsql_build">10.1.2. Windows Build and Run Files for <code>basicsql</code></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<div id="content">
<div id="preamble">
<div class="sectionbody">
<div class="paragraph">
<p><strong>License Statement</strong></p>
</div>
<div class="paragraph">
<p>Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
the License.  You may obtain a copy of the License at <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a></p>
</div>
<div class="paragraph">
<p>Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
specific language governing permissions and limitations under the License.</p>
</div>
<div class="paragraph">
<p><strong>Acknowledgements</strong></p>
</div>
<div class="paragraph">
<p>Microsoft® and Windows® are U.S. registered trademarks of Microsoft Corporation. Java® is a registered trademark of Oracle and/or its affiliates. DbVisualizer™ is a trademark of DbVis Software AB.</p>
</div>
<table class="tableblock frame-all grid-all spread">
<colgroup>
<col style="width: 50%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Version</th>
<th class="tableblock halign-left valign-top">Date</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.3.0</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">January, 2016</p></td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="sect1">
<h2 id="_about_this_document">1. About This Document</h2>
<div class="sectionbody">
<div class="paragraph">
<p>This manual describes how to install and configure client applications that enable you to connect to and use a Trafodion database.</p>
</div>
<div class="sect2">
<h3 id="_intended_audience">1.1. Intended Audience</h3>
<div class="paragraph">
<p>This manual is intended for users who want to connect to and use a Trafodion database.</p>
</div>
</div>
<div class="sect2">
<h3 id="_new_and_changed_information">1.2. New and Changed Information</h3>
<div class="paragraph">
<p>This manual shows updated versions for Trafodion Release 1.3.0. It also provides instructions on how to download and install <a href="#odb">Trafodion odb</a>, a
new multi-threaded, ODBC-based command-line tool for parallel data loading and extracting.</p>
</div>
</div>
<div class="sect2">
<h3 id="_notation_conventions">1.3. Notation Conventions</h3>
<div class="paragraph">
<p>This list summarizes the notation conventions for syntax presentation in this manual.</p>
</div>
<div class="ulist">
<ul>
<li>
<p>UPPERCASE LETTERS</p>
<div class="paragraph">
<p>Uppercase letters indicate keywords and reserved words. Type these items exactly as shown. Items not enclosed in brackets are required.</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">SELECT</code></pre>
</div>
</div>
</li>
<li>
<p>lowercase letters</p>
<div class="paragraph">
<p>Lowercase letters, regardless of font, indicate variable items that you supply. Items not enclosed in brackets are required.</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">file-name</code></pre>
</div>
</div>
</li>
</ul>
</div>
<div style="page-break-after: always;"></div>
<div class="ulist">
<ul>
<li>
<p>&#91; &#93; Brackets</p>
<div class="paragraph">
<p>Brackets enclose optional syntax items.</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">DATETIME [start-field TO] end-field</code></pre>
</div>
</div>
<div class="paragraph">
<p>A group of items enclosed in brackets is a list from which you can choose one item or none.</p>
</div>
<div class="paragraph">
<p>The items in the list can be arranged either vertically, with aligned brackets on each side of the list, or horizontally, enclosed in a pair of brackets and separated by vertical lines.</p>
</div>
<div class="paragraph">
<p>For example:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">DROP SCHEMA schema [CASCADE]
DROP SCHEMA schema [ CASCADE | RESTRICT ]</code></pre>
</div>
</div>
</li>
<li>
<p>{ } Braces</p>
<div class="paragraph">
<p>Braces enclose required syntax items.</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">FROM { grantee [, grantee ] ... }</code></pre>
</div>
</div>
<div class="paragraph">
<p>A group of items enclosed in braces is a list from which you are required to choose one item.</p>
</div>
<div class="paragraph">
<p>The items in the list can be arranged either vertically, with aligned braces on each side of the list, or horizontally, enclosed in a pair of braces and separated by vertical lines.</p>
</div>
<div class="paragraph">
<p>For example:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">INTERVAL { start-field TO end-field }
{ single-field }
INTERVAL { start-field TO end-field | single-field }</code></pre>
</div>
</div>
</li>
<li>
<p>| Vertical Line</p>
<div class="paragraph">
<p>A vertical line separates alternatives in a horizontal list that is enclosed in brackets or braces.</p>
</div>
</li>
</ul>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">{expression | NULL}</code></pre>
</div>
</div>
<div style="page-break-after: always;"></div>
<div class="ulist">
<ul>
<li>
<p>&#8230; Ellipsis</p>
<div class="paragraph">
<p>An ellipsis immediately following a pair of brackets or braces indicates that you can repeat the enclosed sequence of syntax items any number of times.</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">ATTRIBUTE[S] attribute [, attribute] ...
{, sql-expression } ...</code></pre>
</div>
</div>
<div class="paragraph">
<p>An ellipsis immediately following a single syntax item indicates that you can repeat that syntax item any number of times.</p>
</div>
<div class="paragraph">
<p>For example:</p>
</div>
</li>
</ul>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">expression-n ...</code></pre>
</div>
</div>
<div class="ulist">
<ul>
<li>
<p>Punctuation</p>
<div class="paragraph">
<p>Parentheses, commas, semicolons, and other symbols not previously described must be typed as shown.</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">DAY (datetime-expression)
@script-file</code></pre>
</div>
</div>
<div class="paragraph">
<p>Quotation marks around a symbol such as a bracket or brace indicate the symbol is a required character that you must type as shown.</p>
</div>
<div class="paragraph">
<p>For example:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">&quot;{&quot; module-name [, module-name] ... &quot;}&quot;</code></pre>
</div>
</div>
</li>
<li>
<p>Item Spacing</p>
<div class="paragraph">
<p>Spaces shown between items are required unless one of the items is a punctuation symbol such as a parenthesis or a comma.</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">DAY (datetime-expression) DAY(datetime-expression)</code></pre>
</div>
</div>
<div class="paragraph">
<p>If there is no space between two items, spaces are not permitted. In this example, no spaces are permitted between the period and any other items:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">myfile.sh</code></pre>
</div>
</div>
</li>
</ul>
</div>
<div style="page-break-after: always;"></div>
<div class="ulist">
<ul>
<li>
<p>Line Spacing</p>
<div class="paragraph">
<p>If the syntax of a command is too long to fit on a single line, each continuation line is indented three spaces and is separated from the preceding line by a blank line.</p>
</div>
<div class="paragraph">
<p>This spacing distinguishes items in a continuation line from items in a vertical list of selections.</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">match-value [NOT] LIKE _pattern
   [ESCAPE esc-char-expression]</code></pre>
</div>
</div>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="_publishing_history">1.4. Publishing History</h3>
<table class="tableblock frame-all grid-all spread">
<colgroup>
<col style="width: 50%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Product Version</th>
<th class="tableblock halign-left valign-top">Publication Date</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Trafodion Release 1.3.0</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">To be announced.</p></td>
</tr>
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_comments_encouraged">1.5. Comments Encouraged</h3>
<div class="paragraph">
<p>The Trafodion community encourages your comments concerning this document. We are committed to providing documentation that meets your
needs. Send any errors found, suggestions for improvement, or compliments to:</p>
</div>
<div class="paragraph">
<p><a href="mailto:issues@trafodion.incubator.apache.org">issues@trafodion.incubator.apache.org</a></p>
</div>
<div class="paragraph">
<p>Include the document title and any comment, error found, or suggestion for improvement you have concerning this document.
Or, even better, join our community and help us improve our documentation. Please refer to
<a href="http://trafodion.incubator.apache.org/contributing_redirect.html">Trafodion Contributor Guide</a> for details.</p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_trafodion_client_products">2. Trafodion Client Products</h2>
<div class="sectionbody">
<div class="paragraph">
<p>This manual describes how to install and configure the following client applications, which enable you to connect to and use a Trafodion
database.</p>
</div>
<div class="sect2">
<h3 id="_client_summary">2.1. Client Summary</h3>
<div class="paragraph">
<p>The following table lists the clients supported by Trafodion.</p>
</div>
<table class="tableblock frame-all grid-all spread">
<colgroup>
<col style="width: 30%;">
<col style="width: 70%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Client Name</th>
<th class="tableblock halign-left valign-top">Description</th>
</tr>
</thead>
<tbody>
<tr>
<th class="tableblock halign-left valign-top"><p class="tableblock">Trafodion ODBC Driver for Windows</p></th>
<td class="tableblock halign-left valign-top"><p class="tableblock">A driver that enables applications, which were developed for the Microsoft Open Database Connectivity (ODBC) application programming
interface (API) and which run on a Windows workstation, to connect to a Trafodion database.</p></td>
</tr>
<tr>
<th class="tableblock halign-left valign-top"><p class="tableblock">Trafodion ODBC Driver for Linux</p></th>
<td class="tableblock halign-left valign-top"><p class="tableblock">A driver that enables applications, which were developed for the Microsoft ODBC API and run on a Linux workstation, to connect to a
Trafodion database.</p></td>
</tr>
<tr>
<th class="tableblock halign-left valign-top"><p class="tableblock">Trafodion JDBC Type 4 Driver</p></th>
<td class="tableblock halign-left valign-top"><p class="tableblock">A driver that enables Java applications that run on a client workstation to connect to a Trafodion database.
</p><p class="tableblock">NOTE: The Trafodion Command Interface (TrafCI), DbVisualizer, and SQuirreL SQL Client require this driver to be installed on the client
workstation.</p></td>
</tr>
<tr>
<th class="tableblock halign-left valign-top"><p class="tableblock">Trafodion Command Interface (TrafCI)</p></th>
<td class="tableblock halign-left valign-top"><p class="tableblock">A command-line interface that allows you to connect to a Trafodion database and run SQL statements and other commands interactively or from
script files. For more information, see the <a href="http://trafodion.incubator.apache.org/docs/command_interface/index.html"><em>Trafodion Command Interface Guide</em></a>.</p></td>
</tr>
<tr>
<th class="tableblock halign-left valign-top"><p class="tableblock">Trafodion odb tool</p></th>
<td class="tableblock halign-left valign-top"><p class="tableblock">A multi-threaded, ODBC-based command-line tool for parallel data loading and extracting. For more information, see the
<a href="http://trafodion.incubator.apache.org/docs/odb_user/index.html"><em>Trafodion odb User Guide</em></a>.</p></td>
</tr>
<tr>
<th class="tableblock halign-left valign-top"><p class="tableblock">DbVisualizer</p></th>
<td class="tableblock halign-left valign-top"><p class="tableblock">A third-party database tool that allows you to connect to a Trafodion database. For more information, see the <a href="http://www.dbvis.com/"><em>DbVisualizer website</em></a>.</p></td>
</tr>
<tr>
<th class="tableblock halign-left valign-top"><p class="tableblock">SQuirreL SQL Client</p></th>
<td class="tableblock halign-left valign-top"><p class="tableblock">A third-party database tool that allows you to connect to a Trafodion database. For more information, see the
<a href="http://squirrel-sql.sourceforge.net/"><em>SQuirreL SQL Client website</em></a>.</p></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_install_windows_odbc_driver">3. Install Windows ODBC Driver</h2>
<div class="sectionbody">
<div class="paragraph">
<p>These installation instructions apply to Trafodion Release 1.3.<strong><em>n</em></strong> and subsequent updates of the product until otherwise indicated.</p>
</div>
<div class="sect2">
<h3 id="_installation_package">3.1. Installation Package</h3>
<div class="paragraph">
<p>The installer file for the Trafodion ODBC Driver for Windows is packaged within the Trafodion clients tar file, <code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code>, on the
Trafodion downloads site <a href="http://trafodion.incubator.apache.org/download.html" class="bare">http://trafodion.incubator.apache.org/download.html</a>. Use this installer file to install the Trafodion ODBC Driver for Windows:</p>
</div>
<table class="tableblock frame-all grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Installer File</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Client Operating System</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>TFODBC64-1.3.<strong><em>n</em></strong>.msi</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Windows MSI installer file</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Windows 64-bit</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p>By default, a new version of the ODBC driver will be installed in this directory and its folders unless you specify a different directory
during installation:</p>
</div>
<table class="tableblock frame-all grid-all spread">
<colgroup>
<col style="width: 40%;">
<col style="width: 60%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Default Installation Directory</th>
<th class="tableblock halign-left valign-top">Client Operating System</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>C:\Program Files\Trafodion\TRAF</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">ODBC 1.0 Windows 64-bit</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p>The ODBC client installation file installs or links to multiple client components:</p>
</div>
<table class="tableblock frame-all grid-all spread">
<colgroup>
<col style="width: 40%;">
<col style="width: 60%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">This client component&#8230;</th>
<th class="tableblock halign-left valign-top">Does this&#8230;</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>Microsoft ODBC Driver Manager</strong></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Manages access to ODBC drivers for applications. The driver manager loads and unloads drivers and passes calls for ODBC functions to the
correct driver.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>Trafodion ODBC driver</strong></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Implements ODBC function calls to enable an ODBC client application to access the Trafodion database.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>Microsoft ODBC Administrator</strong></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Adds, configures, and removes ODBC data sources on client workstations.</p></td>
</tr>
</tbody>
</table>
<div style="page-break-after: always;"></div>
</div>
<div class="sect2">
<h3 id="_installation_requirements">3.2. Installation Requirements</h3>
<table class="tableblock frame-all grid-all spread">
<colgroup>
<col style="width: 40%;">
<col style="width: 60%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Item</th>
<th class="tableblock halign-left valign-top">Requirement</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>Computer</strong></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Windows compatible PC workstation</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>Memory</strong></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Recommended minimum 32 MB</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>Disk Space</strong></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Minimum 30 MB additional free space</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>Operating System</strong></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">x64 Edition of Microsoft Windows 7, Windows 8, or Windows Server 2008</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>Network Software</strong></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">TCP/IP</p></td>
</tr>
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_installation_instructions">3.3. Installation Instructions</h3>
<div class="sect3">
<h4 id="win_odbc_install">3.3.1. Install Windows ODBC Driver</h4>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
To install the driver on your PC, you must be logged on with a user ID that has administrator privileges.
</td>
</tr>
</table>
</div>
<div class="sect4">
<h5 id="_task_1_download_the_odbc_client_installation_file">Task 1: Download the ODBC client installation file</h5>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Create a download folder on the client workstation.</p>
</li>
<li>
<p>Open a Web browser and navigate to the Trafodion downloads site <a href="http://trafodion.incubator.apache.com/download.html" class="bare">http://trafodion.incubator.apache.com/download.html</a></p>
</li>
<li>
<p>Click on the <code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code> link to start downloading the Trafodion clients tar file to your workstation.</p>
</li>
<li>
<p>Place the <code>clients-1.3.<strong><em>n</em></strong>.tar.gz file</code> into the download folder.</p>
</li>
<li>
<p>Extract the contents of the <code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code> file by using an extract tool like WinZip. The package file contains the
<code>TFODBC64-1.3.<strong><em>n</em></strong>.msi</code> installer file, which is extracted to the clients sub-directory.</p>
</li>
</ol>
</div>
</div>
<div class="sect4">
<h5 id="_task_2_start_the_installshield_wizard">Task 2: Start the InstallShield wizard</h5>
<div class="paragraph">
<p>The InstallShield wizard walks you through the steps to install the client components (Trafodion ODBC 1.0) on your workstation. You can
perform the installation in <em>interactive mode</em>, in which you provide input or accept defaults when prompted as ODBC is installed.
Please refer to <a href="#win_odbc_interactive_mode">Interactive Mode Installation</a> below.</p>
</div>
<div style="page-break-after: always;"></div>
<div class="sect5">
<h6 id="win_odbc_interactive_mode">Interactive Mode Installation</h6>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Double-click the <code>.msi</code> distribution file to start the InstallShield wizard.</p>
</li>
<li>
<p>On the <strong>Welcome</strong> page, click <strong>Next</strong>.</p>
</li>
<li>
<p>On the <strong>Destination Folder</strong> page, click <strong>Next</strong> to select the default location: <code>C:\Program Files\Trafodion\TRAF ODBC 1.0\</code></p>
<div class="paragraph">
<p>This location is the installation directory for ODBC header and help files. All other ODBC files are installed in <code>%SYSTEMROOT%\system32</code>.</p>
</div>
</li>
<li>
<p>On the <strong>Set Certificate Directory</strong> page, click <strong>Next</strong> to accept the default location for the security certificate (<code>SYSTEM_DEFAULT</code>).</p>
</li>
<li>
<p>On the <strong>Ready to Install the Program</strong> page, click <strong>Install</strong>. The installation begins. The <strong>Installing Trafodion ODBC64 1.0</strong> page displays a
progress bar.</p>
</li>
<li>
<p>On the <strong>InstallShield Wizard Completed</strong> page, click <strong>Finish</strong> to exit the wizard. Do not add a new <code>Trafodion ODBC</code> data source to the MS ODBC
Administrator until you have restarted your system.</p>
</li>
</ol>
</div>
</div>
</div>
<div class="sect4">
<h5 id="_task_3_add_a_client_data_source">Task 3: Add a client data source</h5>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Start the Microsoft ODBC Administrator:</p>
<div class="ulist">
<ul>
<li>
<p>On Windows 7: <strong>Start&gt;All Programs&gt;Trafodion ODBC 1.0&gt;MS ODBC Administrator</strong></p>
</li>
<li>
<p>On Windows 8: Right-click the <strong>Trafodion ODBC 1.0</strong> icon on the desktop and select MS ODBC Administrator.</p>
</li>
</ul>
</div>
</li>
<li>
<p>In the <strong>ODBC Data Source Administrator</strong> dialog box, click <strong>Add</strong>.</p>
</li>
<li>
<p>Select <strong>TRAF ODBC 1.0</strong>, and then click <strong>Finish</strong> to start the <strong>Create a New Trafodion ODBC Data Source</strong> wizard.</p>
</li>
<li>
<p>Enter the data source name (for example, <code>Default_DataSource_Schema1</code>) and an optional description, and click <strong>Next</strong>.</p>
</li>
<li>
<p>Enter the <code>IP address</code> or <code>host name</code> for the database platform. Enter the port number as <strong>37800</strong>. Leave the defaults as is, and click <strong>Next</strong>.</p>
</li>
<li>
<p>Enter the schema name. The default schema name is <code>SEABASE</code>. Click <strong>Next</strong>.</p>
</li>
<li>
<p>Enter the translate DLL name and its option, if you have one. If not, leave it blank. Leave the localization defaults as is.</p>
<div style="page-break-after: always;"></div>
<div class="paragraph">
<p>The Replacement Character replaces any character that is incompatible for translation when retrieving data. It is one character (one or two
bytes long). The Replacement Character is assumed to be in the character set specified in the Client/Server Character Set Interaction. If it is not specified, <code>?</code> is used as the default.</p>
</div>
<div class="paragraph">
<p>Click <strong>Next</strong>.</p>
</div>
</li>
<li>
<p>Select the trace options, if desired. Change the <strong>Log File Path</strong> to the location you want, or leave the default as is, and click <strong>Finish</strong>.</p>
</li>
<li>
<p>The wizard gives you an opportunity to test the connection. Click <strong>Test Connection</strong> and click <strong>OK</strong>.</p>
</li>
<li>
<p>The server ID and schema are filled in for you. Enter a valid user name and password, and click <strong>OK</strong>.</p>
<div class="paragraph">
<p>The wizard attempts to connect to the data source and displays a message stating whether it was successful or not.</p>
</div>
</li>
<li>
<p>Click <strong>OK</strong> to save the data source, or click <strong>Cancel</strong> <em>twice</em> to quit the <strong>Create Data Source</strong> wizard.</p>
</li>
</ol>
</div>
</div>
</div>
<div class="sect3">
<h4 id="_reinstall_windows_odbc_driver">3.3.2. Reinstall Windows ODBC Driver</h4>
<div class="paragraph">
<p>To reinstall the driver, we recommend that you fully remove your ODBC driver and then install the new version. Please refer to
<a href="#win_odbc_uninstall">Uninstalling the Trafodion ODBC Driver for Windows</a> and then <a href="#win_odbc_install">Installing the Trafodion ODBC Driver for Windows</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="win_odbc_uninstall">3.3.3. Uninstalling Windows ODBC Driver</h4>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Start to remove the ODBC driver:</p>
<div class="ulist">
<ul>
<li>
<p>On Windows 7: <strong>Start&gt;All Programs&gt;Trafodion ODBC 1.0&gt;Remove TRAF ODBC 1.0</strong></p>
</li>
<li>
<p>On Windows 8: Right-click the <strong>Trafodion ODBC 1.0</strong> icon on the desktop and select <strong>Remove TRAF ODBC 1.0</strong>.</p>
</li>
</ul>
</div>
</li>
<li>
<p>When the <strong>Windows Installer</strong> dialog box asks you if you want to uninstall this product, click <strong>Yes</strong>.</p>
</li>
<li>
<p>The <strong>Trafodion ODBC 1.0</strong> dialog box displays the status and asks you to wait while <code>Windows configures Trafodion ODBC 1.0</code> (that is, removes
the Trafodion ODBC Driver from your Windows workstation).</p>
<div class="paragraph">
<p>After this dialog box disappears, Trafodion ODBC 1.0 is no longer on your workstation.</p>
</div>
</li>
</ol>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
Uninstalling the ODBC driver does not remove pre-existing data source definitions from the Windows registry.
</td>
</tr>
</table>
</div>
<div style="page-break-after: always;"></div>
</div>
<div class="sect3">
<h4 id="win_odbc_client_env">3.3.4. Set Up Client Environment</h4>
<div class="paragraph">
<p>All client data sources connect to the pre-configured server data source on the database platform, which is <code>Default_DataSource</code>.</p>
</div>
<div class="paragraph">
<p>You can configure one data source only, <code>Default_DataSource</code>, on the database platform, but you can create other data source
definitions on the workstation.</p>
</div>
<div class="paragraph">
<p>For example, if you have more than one schema on the database platform and you want to connect
to each of those schemas on the database platform, you can create a client data source for each of those schemas.</p>
</div>
<div class="paragraph">
<p>Instead of changing the schema definition in the data source definition on the workstation, you can create multiple data source
definitions with different schemas on the workstation. The client data source will use the specified schema but will connect to
<code>Default_DataSource</code> on the database platform.</p>
</div>
<div class="paragraph">
<p>To create a data source on the client workstation, follow these steps:</p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Launch the <strong>MS ODBC Administrator</strong>.</p>
<div class="paragraph">
<p>For example, on Windows 7, select <strong>Start&gt;All Programs&gt;Trafodion ODBC 1.0&gt;MS ODBC Administrator</strong>.</p>
</div>
</li>
<li>
<p>In the <strong>ODBC Data Source Administrator</strong> dialog box, select the <strong>User DSN</strong> tab, and click <strong>Add</strong>.</p>
</li>
<li>
<p>Select the <strong>TRAF ODBC 1.0</strong> driver, and then click <strong>Finish</strong>.</p>
<div class="paragraph">
<p>A new dialog box appears, prompting you to create a new data source.</p>
</div>
</li>
<li>
<p>Enter the name of the data source, <code>Default_DataSource</code>, and click <strong>Next</strong> to continue.</p>
</li>
<li>
<p>Enter the IP address and port number of the Trafodion system to which will be connecting. The port number must be <strong>37800</strong>.
Click <strong>Next</strong> to continue.</p>
</li>
<li>
<p>Select the default schema. If you do not select a schema, the default is <code>USR</code>. Click Next to continue.</p>
</li>
<li>
<p>If desired, configure the <strong>translate dll</strong>, which translates data from one character set to another, and configure the localization. By
default, the client error message language is English, and the client’s local character set is used. Click <strong>Next</strong> to continue.</p>
</li>
<li>
<p>If desired, set the trace options and the file path of the trace log. Click <strong>Finish</strong>.</p>
<div class="paragraph">
<p>The <strong>Test Trafodion ODBC Connection</strong> dialog box appears, allowing you to test the connection using the data source that you created.</p>
</div>
</li>
<li>
<p>Click <strong>Test Connection</strong>.</p>
</li>
<li>
<p>When prompted, enter your user name and password, and click <strong>OK</strong>.</p>
<div class="paragraph">
<p>If the connection is successful, you will see <code>Connected Successfully</code> in the <strong>Test Trafodion ODBC Connection</strong> dialog box.</p>
</div>
</li>
</ol>
</div>
</div>
<div class="sect3">
<h4 id="_enable_compression">3.3.5. Enable Compression</h4>
<div class="paragraph">
<p>When compression is enabled in the ODBC driver, the ODBC driver can send and receive large volumes of data quickly and efficiently to and from
the Trafodion Database Connectivity Services (DCS) server over a TCP/IP network. By default, compression is disabled.</p>
</div>
<div class="paragraph">
<p>To enable compression in the ODBC driver or to change the compression setting, follow these steps:</p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Launch the MS ODBC Administrator. For example, on Windows 7, select <strong>Start&gt;All Programs&gt;Trafodion ODBC 1.0&gt;MS ODBC Administrator</strong>.</p>
</li>
<li>
<p>In the <strong>ODBC Data Source Administrator</strong> dialog box, select the <strong>User DSN</strong> tab, select the name of your data source under
<strong>User Data Sources</strong>, and click <strong>Configure</strong>. If you did not create a data source, please refer to
<a href="#win_odbc_client_env">Setting Up the Client Environment</a>.</p>
<div class="paragraph">
<p>A new dialog box appears, showing the configuration of your data source.</p>
</div>
</li>
<li>
<p>Select the <strong>Network</strong> tab, and then select one of these values for <strong>Compression</strong>:</p>
<div class="ulist">
<ul>
<li>
<p><code>SYSTEM_DEFAULT</code>, which is the same as no compression</p>
</li>
<li>
<p><code>no compression</code></p>
</li>
<li>
<p><code>best speed</code></p>
</li>
<li>
<p><code>best compression</code></p>
</li>
<li>
<p><code>balance</code></p>
</li>
<li>
<p>An integer from 0 to 9, with 0 being no compression and 9 being the
maximum available compression</p>
</li>
</ul>
</div>
</li>
<li>
<p>Click <strong>OK</strong> to accept the change.</p>
</li>
<li>
<p>Click <strong>OK</strong> to exit the <strong>ODBC Data Source Administrator</strong> dialog box.</p>
</li>
</ol>
</div>
<div style="page-break-after: always;"></div>
</div>
<div class="sect3">
<h4 id="win_odbc_run_basicsql">3.3.6. Run Sample Program (<code>basicsql</code>)</h4>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
The Basic SQL sample program is not currently bundled with the ODBC Windows driver. To obtain the source code and the build and run
files for this program, please refer to  <a href="#odbc_sample_program">ODBC Sample Program</a>.
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>To build and run the executable file, follow these steps:</p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Open a Visual Studio x64 Win64 Command Prompt. Make sure to select the x64 version of the command prompt. For example, on Windows 7, select
<strong>Start&gt;All Programs&gt;Microsoft Visual Studio 2010&gt;Visual Studio Tools&gt;Visual Studio x64 Win64 Command Prompt</strong>.</p>
</li>
<li>
<p>At the command prompt, move to the directory where you put the <code>basicsql.cpp</code> and build files.</p>
</li>
<li>
<p>Run build at the command prompt. You will see <code>basicsql.exe</code> created in the same directory as the source file.</p>
</li>
<li>
<p>Before running the sample program, create a Trafodion data source named <code>Default_DataSource</code> on the client workstation using MS ODBC
Administrator. For instructions, please refer to <a href="#win_odbc_client_env">Set Up Client Environment</a>.</p>
</li>
<li>
<p>From the command prompt, run the sample program by entering either run or this command:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">basicsql DefaultDataSource &lt;username&gt; &lt;password&gt;</code></pre>
</div>
</div>
<div class="paragraph">
<p>If the sample program executes successfully, you should see this output:</p>
</div>
<div class="paragraph">
<p><strong>Example</strong></p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">Using Connect String: DSN=Default_DataSource;UID=user1;PWD=pwd1;
Successfully connected using SQLDriverConnect.
Drop sample table if it exists...
Creating sample table TASKS...
Table TASKS created using SQLExecDirect.
Inserting data using SQLBindParameter, SQLPrepare, SQLExecute
Data inserted.
Fetching data using SQLExecDirect, SQLFetch, SQLGetData
Data selected: 1000 CREATE REPORTS 2014-3-22
Basic SQL ODBC Test Passed!</code></pre>
</div>
</div>
</li>
</ol>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_install_linux_odbc_driver">4. Install Linux ODBC Driver</h2>
<div class="sectionbody">
<div class="paragraph">
<p>These installation instructions apply to Trafodion Release 1.3.<strong><em>n</em></strong> and subsequent updates of the product until otherwise indicated.</p>
</div>
<div class="sect2">
<h3 id="_installation_packaged">4.1. Installation Packaged</h3>
<div class="paragraph">
<p>The distribution file for the Trafodion ODBC Driver for Linux is packaged within the Trafodion clients tar file,
<code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code>, on the Trafodion downloads site <a href="http://trafodion.incubator.apache.org/download.html" class="bare">http://trafodion.incubator.apache.org/download.html</a>.</p>
</div>
<div class="paragraph">
<p><code>TRAF_ODBC_Linux_Driver_64.tar.gz</code> is used to install the Trafodion ODBC Driver for Linux. It contains the following files:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">connect_test.cpp
install.sh
libicudataNv44.so.44
libicuucNv44.so.44
libtrafodbc_l64.so
libtrafodbc_l64_drvr.so
LICENSE
license.txt
MD5SUM
TRAFDSN</code></pre>
</div>
</div>
<div class="paragraph">
<p>By default, a new version of the Trafodion ODBC driver will be installed in the following directories unless you specify a different directory
during installation:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code>/usr/lib64</code></p>
</li>
<li>
<p><code>/etc/odbc</code></p>
</li>
</ul>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
The following header files are not packaged with the Trafodion ODBC driver:
</td>
</tr>
</table>
</div>
<div class="ulist">
<ul>
<li>
<p><code>sql.h</code></p>
</li>
<li>
<p><code>sqlext.h</code></p>
</li>
<li>
<p><code>sqltypes.h</code></p>
</li>
<li>
<p><code>sqlucode.h</code></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>To install those header files, <a href="#win_odbc_client_env">Setting Up the Client Environment</a>..</p>
</div>
<div style="page-break-after: always;"></div>
</div>
<div class="sect2">
<h3 id="_installation_requirements_2">4.2. Installation Requirements</h3>
<div class="paragraph">
<p>The driver for Linux requires <code>libgcc 3.4.3</code> and <code>libstd++ 6.0</code>.</p>
</div>
<div class="paragraph">
<p>If you are building ODBC applications, please use the preferred build platform, RedHat 6.4 or CentOS 6.4.</p>
</div>
</div>
<div class="sect2">
<h3 id="_installation_instructions_2">4.3. Installation Instructions</h3>
<div class="sect3">
<h4 id="_download_linux_odbc_driver">4.3.1. Download Linux ODBC Driver</h4>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Create a download folder on the client workstation.</p>
</li>
<li>
<p>Open a Web browser and navigate to <a href="http://trafodion.incubator.apache.org/download.html" class="bare">http://trafodion.incubator.apache.org/download.html</a>.</p>
</li>
<li>
<p>Click on the <code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code> link to start downloading the Trafodion clients tar file to your workstation.</p>
</li>
<li>
<p>Place the <code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code> file into the download folder.</p>
</li>
<li>
<p>Unpack the <code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code> file.</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">tar -xzf clients-1.3.0.tar.gz</code></pre>
</div>
</div>
</li>
</ol>
</div>
<div class="paragraph">
<p>The package file contains the Trafodion ODBC distribution file, <code>TRAF_ODBC_Linux_Driver_64.tar.gz</code>, which is extracted to the clients subdirectory.</p>
</div>
</div>
<div class="sect3">
<h4 id="_install_reinstall_linux_odbc_driver">4.3.2. Install/Reinstall Linux ODBC Driver</h4>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
You must have root access to install the Trafodion ODBC Driver for Linux at the default system location.
</td>
</tr>
</table>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Change the directory to the clients subdirectory, and decompress the <code>.tar.gz</code> distribution file:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">gunzip TRAF_ODBC_Linux_Driver_64.tar.gz</code></pre>
</div>
</div>
</li>
<li>
<p>Extract the contents of the <code>.tar</code> file. A directory called <code>PkgTmp</code> is created.</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">tar –xvf TRAF_ODBC_Linux_Driver_64.tar</code></pre>
</div>
</div>
</li>
<li>
<p>Install the product by entering these commands:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">cd PkgTmp
./install.sh</code></pre>
</div>
</div>
<div class="paragraph">
<p>Except for the sample file, the <code>install.sh</code> script saves a copy (<code>.SAV</code>) of your previous installation files if they exist.</p>
</div>
</li>
<li>
<p>Accept the terms of the license agreement by entering <strong>yes</strong>.</p>
</li>
<li>
<p>Enter a directory for the library files, or press Enter to use the default directory (<code>/usr/lib64</code>).</p>
</li>
<li>
<p>Enter a directory for the data-source template file, or press <strong>Enter</strong> to use the default directory (<code>/etc/odbc</code>).</p>
</li>
<li>
<p>Enter a directory for the sample program, or press <strong>Enter</strong> to use the default directory (<code>/etc/odbc</code>).</p>
</li>
</ol>
</div>
</div>
<div class="sect3">
<h4 id="_set_up_client_environment">4.3.3. Set Up Client Environment</h4>
<div class="paragraph">
<p>If you selected default options during installation, ensure that:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>The libraries are located in the <code>/usr/lib64</code> directory.</p>
</li>
<li>
<p>A <code>TRAFDSN</code> file is in the <code>/etc/odbc</code> directory.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>If you select non-default locations during installation, ensure that the files are installed in the directories that you specified during
installation.</p>
</div>
<div class="paragraph">
<p>The driver expects the <code>TRAFDSN</code> file to be present in either the default location (<code>/etc/odbc</code>) or the current working directory (<code>CWD</code>) of the
application.</p>
</div>
<div class="paragraph">
<p>If you are building ODBC applications, you will need to install these header files in your build environment:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code>sql.h</code></p>
</li>
<li>
<p><code>sqlext.h</code></p>
</li>
<li>
<p><code>sqltypes.h</code></p>
</li>
<li>
<p><code>sqlucode.h</code></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>To install those header files from the latest packages, run this <code>yum</code> command:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">yum install libiodbc libiodbc-devel</code></pre>
</div>
</div>
<div class="paragraph">
<p>The <code>yum</code> command automatically installs the header files in the <code>/usr/include</code> and <code>/usr/include/libiodbc</code> directories.</p>
</div>
<div style="page-break-after: always;"></div>
</div>
<div class="sect3">
<h4 id="_enable_compression_2">4.3.4. Enable Compression</h4>
<div class="paragraph">
<p>When compression is enabled in the ODBC driver, the ODBC driver can send and receive large volumes of data quickly and efficiently to and from
the Trafodion Database Connectivity Services (DCS) server over a TCP/IP network. By default, compression is disabled.</p>
</div>
<div class="paragraph">
<p>To enable compression in the ODBC driver or to change the compression setting, follow these steps:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>If you are using the Trafodion ODBC driver manager, add</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">Compression = compression-level</code></pre>
</div>
</div>
<div class="paragraph">
<p>to the <code>DSN</code> section of <code>TRAFDSN</code> file.</p>
</div>
</li>
<li>
<p>If you are using a third-party driver manager, such as unixODBC, add</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">Compression = compression-level</code></pre>
</div>
</div>
<div class="paragraph">
<p>to the <code>DSN</code> section of the <code>odbc.ini</code> file.</p>
</div>
</li>
</ul>
</div>
<div class="paragraph">
<p>The <code><em>compression-level</em></code> is one of these values:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code>SYSTEM_DEFAULT</code>, which is the same as no compression</p>
</li>
<li>
<p><code>no compression</code></p>
</li>
<li>
<p><code>best speed</code></p>
</li>
<li>
<p><code>best compression</code></p>
</li>
<li>
<p><code>balance</code></p>
</li>
<li>
<p>An integer from <code>0</code> to <code>9</code>, with <code>0</code> being <code>no compression</code> and <code>9</code> being the <code>maximum available compression</code></p>
</li>
</ul>
</div>
<div style="page-break-after: always;"></div>
</div>
<div class="sect3">
<h4 id="_use_third_party_driver_manager">4.3.5. Use Third-Party Driver Manager</h4>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
For better performance, we recommend that you use at least version <code>2.3.<em>x</em></code> of unixODBC.
</td>
</tr>
</table>
</div>
<div class="ulist">
<ul>
<li>
<p>If you are using an external driver manager, you must point to <code>libtrafodbc_drvr64.so</code> and not to <code>libtrafodbc64.so</code>.</p>
</li>
<li>
<p>The driver, <code>libtrafodbc_l64_drvr.so</code>, has been verified with iODBC and unixODBC driver managers.</p>
</li>
<li>
<p>These driver managers, as well as documentation, can be found at these Web sites:</p>
</li>
<li>
<p><a href="http://www.iodbc.org/" class="bare">http://www.iodbc.org/</a></p>
</li>
<li>
<p><a href="http://www.unixodbc.org/" class="bare">http://www.unixodbc.org/</a></p>
</li>
<li>
<p>For information on the necessary data-source configuration options, you will need to add to the respective configuration files (for example,
to <code>odbc.ini</code>).</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="_run_sample_program_code_connect_test_code">4.3.6. Run Sample Program (<code>connect_test</code>)</h4>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
The examples after each step assume that you have default installation directories.
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>If you have a previous version of the Trafodion ODBC driver installed, you need to re-link your existing application to ensure that you pick up
the correct version of the driver. If you are unsure of the version, check the version of your application with this command:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">ldd object-file</code></pre>
</div>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Move to the directory where you installed the sample program:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">cd /etc/odbc</code></pre>
</div>
</div>
</li>
<li>
<p>Set the environment variable <code>LD_LIBRARY_PATH</code>:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">export LD_LIBRARY_PATH=&lt;path-to-odbc-library-files or /usr/lib64&gt;</code></pre>
</div>
</div>
</li>
<li>
<p>In the <code>/etc/odbc/TRAFDSN</code> file, add the correct IP address to the <code>Server</code> parameter for the <code>Default_DataSource</code>.</p>
<div class="paragraph">
<p><strong>Example</strong></p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">[Default_DataSource]
Description = Default Data Source
Catalog = TRAFODION
Schema = SEABASE
DataLang = 0
FetchBufferSize = SYSTEM_DEFAULT
Server = TCP:1.2.3.4:37800 &lt;- _Set IP Address_
SQL_ATTR_CONNECTION_TIMEOUT = SYSTEM_DEFAULT
SQL_LOGIN_TIMEOUT = SYSTEM_DEFAULT
SQL_QUERY_TIMEOUT = NO_TIMEOUT</code></pre>
</div>
</div>
</li>
<li>
<p>Compile the sample program.</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">g++ -g connect_test.cpp -L/usr/lib64 -I/usr/include/odbc -ltrafodbc64 -o connect_test</code></pre>
</div>
</div>
</li>
<li>
<p>Run the sample program:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">./connect_test -d Default_DataSource -u username -p password</code></pre>
</div>
</div>
</li>
</ol>
</div>
<div class="paragraph">
<p>If the sample program runs successfully, you should see output similar to the following:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">Using Connect String: DSN=Default_DataSource;UID=username;PWD=****;
Connect Test Passed...</code></pre>
</div>
</div>
<div style="page-break-after: always;"></div>
</div>
<div class="sect3">
<h4 id="linux_odbc_run_basicsql">4.3.7. Run Sample Program (<code>basicsql</code>)</h4>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
The Basic SQL sample program is not currently bundled with the ODBC Linux driver. To obtain the source code for this program, see
<a href="#odbc_sample_program"><code>basicsql</code> (Sample ODBC Program)</a>.
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>If you have a previous version of the Trafodion ODBC driver installed, you need to re-link your existing application to ensure that you pick up
the correct version of the driver. If you are unsure of the version, check the version of your application with this command:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">ldd object-file</code></pre>
</div>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Move to the directory where you put the <code>basicsql.cpp</code> file.</p>
</li>
<li>
<p>Set the environment variable <code>LD_LIBRARY_PATH</code>:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">export LD_LIBRARY_PATH=&lt;path-to-odbc-driver-dlls&gt;</code></pre>
</div>
</div>
</li>
<li>
<p>In the <code>/etc/odbc/TRAFDSN</code> file, add the correct IP address to the <code>Server</code> parameter for the <code>Default_DataSource</code>. For example:</p>
<div style="page-break-after: always;"></div>
<div class="paragraph">
<p><strong>Example</strong></p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">[Default_DataSource]
Description = Default Data Source
Catalog = TRAFODION
Schema = SEABASE
DataLang = 0
FetchBufferSize = SYSTEM_DEFAULT
Server = TCP:1.2.3.4:37800
SQL_ATTR_CONNECTION_TIMEOUT = SYSTEM_DEFAULT
SQL_LOGIN_TIMEOUT = SYSTEM_DEFAULT
SQL_QUERY_TIMEOUT = NO_TIMEOUT</code></pre>
</div>
</div>
</li>
<li>
<p>Compile the sample program.</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">g++ -g basicsql.cpp -L. -I. -ltrafodbc64 -o basicsql</code></pre>
</div>
</div>
</li>
<li>
<p>Run the sample program:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">basicsql Default_DataSource &lt;username&gt; &lt;password&gt;</code></pre>
</div>
</div>
</li>
</ol>
</div>
<div class="paragraph">
<p>If the sample program runs successfully, you should see output similar to the following:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">Using Connect String: DSN=Default_DataSource;UID=user1;PWD=pwd1;
Successfully connected using SQLDriverConnect.
Drop sample table if it exists... Creating sample table TASKS...
Table TASKS created using SQLExecDirect.
Inserting data using SQLBindParameter, SQLPrepare, SQLExecute Data
Data inserted.
Fetching data using SQLExecDirect, SQLFetch, SQLGetData
Data selected: 1000 CREATE REPORTS 2014-3-22
Basic SQL ODBC Test Passed!</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_install_jdbc_type_4_driver">5. Install JDBC Type-4 Driver</h2>
<div class="sectionbody">
<div class="paragraph">
<p>These installation instructions apply to Trafodion Release 1.3.<strong><em>n</em></strong> and subsequent updates of the product until otherwise indicated.</p>
</div>
<div class="sect2">
<h3 id="_installation_package_2">5.1. Installation Package</h3>
<div class="paragraph">
<p>The distribution file for the Trafodion JDBC Type 4 Driver is packaged within the Trafodion clients tar file, <code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code>,
on the Trafodion downloads site <a href="http://trafodion.incubator.apache.org/download.html" class="bare">http://trafodion.incubator.apache.org/download.html</a>.</p>
</div>
<div class="paragraph">
<p>Use this distribution file to install the Trafodion JDBC Type 4 Driver:</p>
</div>
<table class="tableblock frame-all grid-all spread">
<colgroup>
<col style="width: 35%;">
<col style="width: 35%;">
<col style="width: 30%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Distribution File</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Client Operating System</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>JDBCT4.zip</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Zip file</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Windows or Linux</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p>By default, a new version of the JDBC Type 4 driver will be installed in this directory and its folders unless you specify a
different directory during installation:</p>
</div>
<table class="tableblock frame-all grid-all spread">
<colgroup>
<col style="width: 65%;">
<col style="width: 35%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Default Installation Directory</th>
<th class="tableblock halign-left valign-top">Client Operating System</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>&lt;user-specified directory&gt;</em> (For example: /usr/local/jdbc)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Windows or Linux</p></td>
</tr>
</tbody>
</table>
<table class="tableblock frame-all grid-all spread">
<colgroup>
<col style="width: 30%;">
<col style="width: 25%;">
<col style="width: 45%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Installation Folder</th>
<th class="tableblock halign-left valign-top">Files</th>
<th class="tableblock halign-left valign-top">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>/lib</pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>jdbcT4.jar</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Product JAR file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>/samples</pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>t4jdbc.properties</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Properties file that you can configure for your application environment.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>README</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Readme file that explains how to use the common sample set.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>/samples/common</pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>sampleUtils.java</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Sample source code for creating, populating, and dropping sample tables.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>/samples/DBMetaSample</pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>DBMetaSample.java</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Sample source code for getting metadata about the sample tables.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>README</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Readme file that explains how to use this sample set.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>/samples/PreparedStatementSample</pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>PreparedStatementSample.java</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Sample code for simple or parameterized SELECT statements that are prepared.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>README</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Readme file that explains how to use this sample set.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>/samples/ResultSetSample</pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>README</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Readme file that explains how to use this sample set.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>ResultSetSample.java</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Sample source code for fetching rows from a result set.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>/samples/StatementSample</pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>README</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Readme file that explains how to use this sample set.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>StatementSample.java</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Sample source code for fetching rows from a simple SELECT statement.</p></td>
</tr>
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_installation_requirements_3">5.2. Installation Requirements</h3>
<div class="paragraph">
<p>The Trafodion JDBC Type 4 Driver requires a Java-enabled platform that supports the Java Development Kit (JDK) 1.7 or higher.</p>
</div>
<div class="paragraph">
<p>To determine the Java version that you have installed on your client workstation and to install a supported version, please refer to
<a href="#jdbct4_JRE">Install Java Runtime Environment (JRE)</a> below.</p>
</div>
<div class="sect3">
<h4 id="jdbct4_JRE">5.2.1. Install Java Runtime Environment (JRE)</h4>
<div class="paragraph">
<p>The Trafodion JDBC Type 4 Driver requires that a compatible Java version be installed on the client workstation and that the Java path be set to
the correct location. The supported Java version is 1.7 or higher.</p>
</div>
<div class="sect4">
<h5 id="_verify_java_version">Verify Java Version</h5>
<div class="paragraph">
<p>To display the Java version of the client workstation on the screen, enter:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">java -version</code></pre>
</div>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">C:\&gt; java -version

java version &quot;1.7.0_45&quot; # This is the version you need to check
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) Client VM (build 24.45-b08, mixed mode, sharing)
C:\&gt;</code></pre>
</div>
</div>
<div class="paragraph">
<p>The Java version should be <strong>1.7</strong> or higher. If the returned version is not supported, please refer to
<a href="#jdbct4_install_java">Installing a Supported Java Version</a> below.</p>
</div>
<div style="page-break-after: always;"></div>
<div class="paragraph">
<p>If you see this message:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">'java' is not recognized as an internal or external command, operable program or batch file.`</code></pre>
</div>
</div>
<div class="paragraph">
<p>It indicates that the Java PATH is not set. Follow one of these sets of instructions, depending on the operating system of your client
workstation:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="#jdbct4_path_windows">Setting the PATH to a Supported Java Version on Windows</a></p>
</li>
<li>
<p><a href="#jdbct4_path_linux">Setting the PATH to a Supported Java Version on Linux</a></p>
</li>
</ul>
</div>
</div>
<div class="sect4">
<h5 id="jdbct4_install_java">Install Supported Java Version</h5>
<div class="paragraph">
<p>The supported Java version is 1.7 or higher. To install one of the supported Java versions on the client workstation,
go to this link: <a href="http://www.java.com/en/download" class="bare">http://www.java.com/en/download</a></p>
</div>
<div class="paragraph">
<p>After installing the Java version, proceed with setting the Java path. Follow one of these sets of instructions, depending on the operating
system of your client workstation:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="#jdbct4_path_windows">Setting the PATH to a Supported Java Version on Windows</a></p>
</li>
<li>
<p><a href="#jdbct4_path_linux">Setting the PATH to a Supported Java Version on Linux</a></p>
</li>
</ul>
</div>
</div>
<div class="sect4">
<h5 id="jdbct4_path_windows">Set Windows PATH Variable</h5>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Right-click the <strong>Computer</strong> icon on your desktop, and then select <strong>Properties</strong>. The <strong>Control Panel &gt; System and Security &gt; System</strong> window
appears.</p>
</li>
<li>
<p>In the left navigation bar, click the <strong>Advanced</strong> system settings link.</p>
</li>
<li>
<p>In the <strong>System Properties</strong> dialog box, click the <strong>Environment Variables</strong> button.</p>
</li>
<li>
<p>Under <strong>System</strong> variables, select the variable named <strong>Path</strong>, and then click <strong>Edit</strong>:</p>
<div class="paragraph">
<p><span class="image"><img src="images/path2.jpg" alt="image"></span></p>
</div>
</li>
<li>
<p>Place the cursor at the start of the <strong>Variable</strong> value field and enter the path of the Java bin directory, ending with a semicolon (;):</p>
<div class="paragraph">
<p><span class="image"><img src="images/varval2.jpg" alt="image"></span></p>
</div>
<div class="paragraph">
<p><strong>Example</strong></p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">&quot;C:\Program Files (x86)\Java\jre7\bin&quot;;</code></pre>
</div>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
Check that no space exists after the semicolon (;) in the path. If there are spaces in the directory name, delimit the entire directory
path in double quotes (") before the semicolon.
</td>
</tr>
</table>
</div>
</li>
<li>
<p>Click <strong>OK</strong>.</p>
</li>
<li>
<p>Verify that the updated <strong>Path</strong> appears under <strong>System</strong> variables, and click <strong>OK</strong>.</p>
</li>
<li>
<p>In the <strong>System Properties</strong> dialog box, click <strong>OK</strong> to accept the changes.</p>
</li>
</ol>
</div>
</div>
<div class="sect4">
<h5 id="jdbct4_path_linux">Set Linux PATH Variable</h5>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Open the user profile (<code>.profile</code> or <code>.bash_profile</code> for the Bash shell) in the <code>$HOME</code> directory.</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">cd $HOME
vi .profile</code></pre>
</div>
</div>
</li>
<li>
<p>In the user profile, set the <code>PATH</code> environment variable to include the path of the Java bin
directory.</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">export PATH=/opt/java1.7/jre/bin:$PATH</code></pre>
</div>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
Place the path of the Java bin directory before <code>$PATH</code>, and check that no space exists after the colon (:) in the path. In the C shell,
use the setenv command instead of export.
</td>
</tr>
</table>
</div>
</li>
<li>
<p>To activate the changes, either log out and log in again or execute the user profile.</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">. .profile</code></pre>
</div>
</div>
</li>
</ol>
</div>
<div style="page-break-after: always;"></div>
</div>
</div>
</div>
<div class="sect2">
<h3 id="jdbct4_install">5.3. Installation Instructions</h3>
<div class="sect3">
<h4 id="jdbct4_download">5.3.1. Download JDBC Type-4 Driver</h4>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Create a download folder on the client workstation.</p>
</li>
<li>
<p>Open a Web browser and navigate to the Trafodion downloads site <a href="http://trafodion.incubator.apache.org/download.html" class="bare">http://trafodion.incubator.apache.org/download.html</a>.</p>
</li>
<li>
<p>Click on the <code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code> link to start downloading the Trafodion clients tar file to your workstation.</p>
</li>
<li>
<p>Place the <code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code> file into the download folder.</p>
</li>
<li>
<p>Unpack the <code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code> file.</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">tar -xzf clients-1.3.0.tar.gz</code></pre>
</div>
</div>
<div class="paragraph">
<p>The package file contains the <code>JDBCT4.zip</code> distribution file, which is extracted to the clients subdirectory.</p>
</div>
</li>
<li>
<p>Proceed with <a href="#jdbct4_install_zip">Installing the Trafodion JDBC Type 4 Driver From the Zip File</a> below.</p>
</li>
</ol>
</div>
</div>
<div class="sect3">
<h4 id="jdbct4_install_zip">5.3.2. Install JDBC Type-4 Driver</h4>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Change the directory to the clients subdirectory.</p>
</li>
<li>
<p>Extract the contents of the <code>JDBCT4.zip</code> file by using the unzip command (or the WinZip extract tool):</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">unzip JDBCT4.zip</code></pre>
</div>
</div>
<div class="paragraph">
<p>The command creates these subdirectories:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code>lib</code>, which contains the <code>jdbcT4.jar</code> file</p>
</li>
<li>
<p><code>samples</code>, which contains sample programs</p>
</li>
</ul>
</div>
</li>
<li>
<p>Set up the client environment. See <a href="#jdbct4_setup_env">Set Up Client Environment</a>.</p>
</li>
</ol>
</div>
<div style="page-break-after: always;"></div>
</div>
<div class="sect3">
<h4 id="_uninstall_jdbc_type_4_driver">5.3.3. Uninstall JDBC Type-4 Driver</h4>
<div class="paragraph">
<p>Run one of these sets of commands to remove the Trafodion JDBC Type 4 Driver:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>On Linux:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">rm -rf &lt;jdbc-installation-directory&gt;</code></pre>
</div>
</div>
<div class="paragraph">
<p><strong>Example</strong></p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">rm -rf /usr/local/jdbc</code></pre>
</div>
</div>
</li>
</ul>
</div>
<div style="page-break-after: always;"></div>
<div class="ulist">
<ul>
<li>
<p>On Windows:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">del &lt;jdbc-installation-directory&gt;
rmdir &lt;jdbc-installation-directory&gt;</code></pre>
</div>
</div>
<div class="paragraph">
<p><strong>Example</strong></p>
</div>
<div class="paragraph">
<p>Windows uninstall</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">C:\&gt;del /s JDBC
C:\JDBC\, Are you sure (Y/N)? Y
C:\JDBC\install\*, Are you sure (Y/N)? Y
Deleted file - C:\JDBC\install\t4jdbcSanityCheck.class
Deleted file - C:\JDBC\install\t4jdbcUninstall.class
Deleted file - C:\JDBC\install\product.contents
C:\JDBC\lib\*, Are you sure (Y/N)? Y
Deleted file - C:\JDBC\lib\jdbcT4.jar
C:\JDBC\samples\*, Are you sure (Y/N)? Y
Deleted file - C:\JDBC\samples\t4jdbc.properties
Deleted file - C:\JDBC\samples\README
C:\JDBC\samples\common\*, Are you sure (Y/N)? Y
Deleted file - C:\JDBC\samples\common\sampleUtils.java
C:\JDBC\samples\DBMetaSample\*, Are you sure (Y/N)? Y
Deleted file - C:\JDBC\samples\DBMetaSample\DBMetaSample.java
Deleted file - C:\JDBC\samples\DBMetaSample\README
C:\JDBC\samples\PreparedStatementSample\*, Are you sure (Y/N)? Y
Deleted file - C:\JDBC\samples\PreparedStatementSample\PreparedStatementSample.java
Deleted file - C:\JDBC\samples\PreparedStatementSample\README
C:\JDBC\samples\ResultSetSample\*, Are you sure (Y/N)? Y
Deleted file - C:\JDBC\samples\ResultSetSample\README
Deleted file - C:\JDBC\samples\ResultSetSample\ResultSetSample.java
C:\JDBC\samples\StatementSample\*, Are you sure (Y/N)? Y
Deleted file - C:\JDBC\samples\StatementSample\README
Deleted file - C:\JDBC\samples\StatementSample\StatementSample.java
C:\&gt;rmdir /s JDBC
JDBC, Are you sure (Y/N)? Y
C:\&gt;</code></pre>
</div>
</div>
</li>
</ul>
</div>
<div style="page-break-after: always;"></div>
</div>
<div class="sect3">
<h4 id="_reinstall_jdbc_type_4_driver">5.3.4. Reinstall JDBC Type-4 Driver</h4>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Close all applications running on the workstation, except the Web browser.</p>
</li>
<li>
<p>In the browser, navigate to the download site and download the client package file. For more information, please refer to
<a href="#jdbct4_download">Downloading the Trafodion JDBC Type 4 Driver</a>.</p>
</li>
<li>
<p>Extract the contents of the zip file by following these instructions: <a href="#jdbct4_install_zip">Installing the Trafodion JDBC Type 4 Driver From the Zip File</a>.</p>
</li>
<li>
<p>Set up the client environment. Please refer to: <a href="#jdbct4_setup_env">Setting Up the Client Environment</a>.</p>
</li>
</ol>
</div>
</div>
</div>
<div class="sect2">
<h3 id="jdbct4_setup_env">5.4. Set Up Client Environment</h3>
<div class="paragraph">
<p>Check that you have a supported Java version installed on the client workstation. The supported Java version is 1.7 or higher. For more
information, see <a href="#jdbct4_JRE">Installing and Verifying the Java Runtime</a>.</p>
</div>
<div class="paragraph">
<p>If you plan to write and run Java applications that use the Trafodion JDBC Type 4 Driver to connect to a Trafodion database, set these
environment variables on the client workstation, replacing <code><em>jdk-directory</em></code> with the location of your Java Development Kit and
replacing <code><em>jdbc-installation-directory</em></code> with the name of the directory where you downloaded the JDBC Type 4 driver:</p>
</div>
<table class="tableblock frame-all grid-all spread">
<colgroup>
<col style="width: 20%;">
<col style="width: 40%;">
<col style="width: 40%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Environment Variable</th>
<th class="tableblock halign-left valign-top">On Windows</th>
<th class="tableblock halign-left valign-top">On Linux</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>JAVA_HOME</pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>set JAVA_HOME=<em>jdk-directory</em></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>export JAVA_HOME=<em>jdk-directory</em></pre></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>PATH</pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>set PATH=%PATH%;%JAVA_HOME%\bin</pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>export PATH=$PATH:$JAVA_HOME/bin</pre></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>CLASSPATH</pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>set CLASSPATH=%CLASSPATH%;_jdbc-installation-directory_\lib\jdbcT4.jar;</pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>export CLASSPATH=$CLASSPATH:_jdbc-installation-directory_/lib/jdbcT4.jar:</pre></div></td>
</tr>
</tbody>
</table>
<div style="page-break-after: always;"></div>
<div class="sect3">
<h4 id="_configure_applications">5.4.1. Configure Applications</h4>
<div class="paragraph">
<p>Edit the <code>t4jdbc.properties</code> file. Set these values for your environment:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><em>catalog</em>: Specify a catalog that exists in the database.</p>
</li>
<li>
<p><em>schema</em>: Specify a schema that exists in the database.</p>
</li>
<li>
<p><em>user</em>: Specify the name of a user who will be accessing the database.</p>
</li>
<li>
<p><em>password</em>: Specify the password of a user who will be accessing the database.</p>
</li>
<li>
<p><em>url</em>: Specify this string: <em>jdbc:t4jdbc://_host-name</em>:_port-number_/:_</p>
</li>
</ul>
</div>
<div class="paragraph">
<p><em>host-name</em> is the IP address or host name of the database platform, and <em>port-number</em> is the location where the
Trafodion Database Connectivity Service (DCS) is running, which is 37800 by default.</p>
</div>
<div class="paragraph">
<p><strong>Example</strong></p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">catalog = &lt;your-catalog&gt; schema = &lt;your-schema&gt; user = &lt;user-name&gt;
password = &lt;password&gt;

url = jdbc:t4jdbc://&lt;host-name&gt;:&lt;port-number&gt;/:</code></pre>
</div>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
The driver’s class name is <code>org.trafodion.jdbc.t4.T4Driver</code>.
</td>
</tr>
</table>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_install_trafci">6. Install TrafCI</h2>
<div class="sectionbody">
<div class="paragraph">
<p>These installation instructions apply to Trafodion Release 1.3.<strong><em>n</em></strong> and subsequent updates of the product until otherwise indicated.</p>
</div>
<div class="sect2">
<h3 id="_installation_package_3">6.1. Installation Package</h3>
<div class="paragraph">
<p>The distribution file for the Trafodion Command Interface (TrafCI) is packaged within the Trafodion clients tar file,
<code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code>, on the Trafodion downloads site <a href="http://trafodion.incubator.apache.org/download.html" class="bare">http://trafodion.incubator.apache.org/download.html</a>.
Use this distribution file to install TrafCI:</p>
</div>
<table class="tableblock frame-all grid-all spread">
<colgroup>
<col style="width: 35%;">
<col style="width: 35%;">
<col style="width: 30%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Distribution File</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Client Operating System</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>trafci.zip</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Zip file</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Windows or Linux</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p>The distribution zip file contains this installer file: <code>trafciInstaller.jar</code>, an executable JAR file.</p>
</div>
</div>
<div class="sect2">
<h3 id="_installation_requirements_4">6.2. Installation Requirements</h3>
<div class="paragraph">
<p>The Trafodion Command Interface (TrafCI) runs on Windows and Linux. Before installing TrafCI on the client workstation, follow these
instructions:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="#trafci_JRE">Install Java Runtime Environment</a></p>
</li>
<li>
<p><a href="#trafci_install_jdbct4">Install JDBC Type-4 Driver</a></p>
</li>
<li>
<p><a href="#trafci_perl_python">Install Perl or Python</a></p>
</li>
</ul>
</div>
<div class="sect3">
<h4 id="trafci_JRE">6.2.1. Install/Verify Java Runtime Environment</h4>
<div class="paragraph">
<p>TrafCI and the Trafodion JDBC Type 4 Driver require that a compatible Java version be installed on the client workstation and that the Java
path be set to the correct location. The supported Java version is 1.7 or higher.</p>
</div>
<div class="paragraph">
<p>To determine the Java version that you have installed on your client workstation and to install a supported version, see
<a href="#jdbct4_JRE">Install Java Runtime Environment (JRE)</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="trafci_install_jdbct4">6.2.2. Install/Verify JDBC Type-4 Driver</h4>
<div class="paragraph">
<p>TrafCI requires a compatible version of the Trafodion JDBC Type 4 Driver to be installed on the client workstation before you install TrafCI.</p>
</div>
<div class="sect4">
<h5 id="_install_jdbc_type_4_driver_2">Install JDBC Type-4 Driver</h5>
<div class="paragraph">
<p>To install and use the JDBC driver, see <a href="#jdbct4_JRE">Install Java Runtime Environment (JRE)</a>.</p>
</div>
</div>
<div class="sect4">
<h5 id="_verify_jdbc_type_4_driver">Verify JDBC Type-4 Driver</h5>
<div class="paragraph">
<p>To display the version of the JDBC driver that is already installed on the client workstation:</p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Change the directory to the lib directory, which contains the JDBC driver JAR file:</p>
<div class="ulist">
<ul>
<li>
<p>On Windows, enter this command:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">cd jdbc-installation-directory\lib</code></pre>
</div>
</div>
<div class="paragraph">
<p><code><em>jdbc-installation-directory</em></code> is the directory where you installed the JDBC driver.</p>
</div>
</li>
<li>
<p>On Linux, enter this command:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">cd jdbc-installation-directory/lib</code></pre>
</div>
</div>
<div class="paragraph">
<p><code><em>jdbc-installation-directory</em></code> is the directory where you installed the JDBC driver.</p>
</div>
</li>
</ul>
</div>
</li>
<li>
<p>Enter this command to return version information:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">java -jar jdbcT4.jar</code></pre>
</div>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">C:\&gt; cd &quot;\&lt;user-specified directory&gt;\lib&quot;
C:\&lt;user-specified directory&gt;\lib&gt; java -jar jdbcT4.jar
Traf_JDBC_Type4_Build_40894

C:\&lt;user-specified directory&gt;\lib&gt;</code></pre>
</div>
</div>
</li>
</ol>
</div>
<div class="paragraph">
<p>If the JAR file is inaccessible or the returned version is not supported, see <a href="#trafci_install_jdbct4">Install/Verify JDBC Type-4 Driver</a>.</p>
</div>
<div style="page-break-after: always;"></div>
</div>
</div>
<div class="sect3">
<h4 id="trafci_perl_python">6.2.3. Install Perl or Python</h4>
<div class="paragraph">
<p>If you plan to use Perl or Python scripts with TrafCI, verify that you have Perl or Python installed on the client workstation. TrafCI supports
these versions of Perl and Python:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Perl version 5.8.8</p>
</li>
<li>
<p>Python version 2.3.4</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>If you do not have Perl or Python, download it from any open source software provider. You can perform this installation procedure anytime
before or after installing TrafCI.</p>
</div>
<div class="paragraph">
<p>If you plan to run the sample scripts provided with TrafCI, verify that you have the Perl JavaServer and Jython (Java implementation of Python)
installed on your client workstation. Use the TrafCI Installation Wizard to automatically download and install both the Perl JavaServer and
Jython open source extensions. To download them manually, see the <code>README</code> in the samples directory.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="_installation_instructions_3">6.3. Installation Instructions</h3>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
Before following the installation procedures, you must install the Trafodion JDBC Type 4 Driver on the client workstation. For more
information, see <a href="#trafci_install_jdbct4">Install JDBC Type-4 Driver</a>.
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>Follow these instructions to download and install TrafCI on the client workstation.</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="#trafci_download_installer">Download Installer</a></p>
</li>
<li>
<p><a href="#trafci_run_installer">Run Executable JAR Installer</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>To uninstall TrafCI, see <a href="#trafci_uninstall">Uninstall_TrafCI</a>.</p>
</div>
<div class="sect3">
<h4 id="trafci_download_installer">6.3.1. Download Installer</h4>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Create a download folder on the client workstation.</p>
</li>
<li>
<p>Open a Web browser and navigate to the Trafodion downloads site <a href="http://trafodion.incubator.apache.org/download/html" class="bare">http://trafodion.incubator.apache.org/download/html</a></p>
</li>
<li>
<p>Click on the <code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code> link to start downloading the Trafodion clients tar file to your workstation.</p>
</li>
<li>
<p>Place the <code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code> file into the download folder.</p>
<div style="page-break-after: always;"></div>
</li>
<li>
<p>Unpack the <code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code> file.</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">tar -xzf clients-1.3.0.tar.gz</code></pre>
</div>
</div>
<div class="paragraph">
<p>The package file contains the trafci.zip distribution file, which is extracted to the clients subdirectory.</p>
</div>
</li>
<li>
<p>Change the directory to the clients subdirectory.</p>
</li>
<li>
<p>Extract the contents of the <code>trafci.zip</code> file to a location on your client workstation by using the unzip command (or the WinZip extract
tool):</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">unzip trafci.zip</code></pre>
</div>
</div>
<div class="paragraph">
<p>The command extracts these files:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code>README</code></p>
</li>
<li>
<p><code>trafciInstaller.jar</code></p>
</li>
</ul>
</div>
</li>
<li>
<p>Proceed with <a href="#trafci_run_installer">Run Executable JAR Installer</a>.</p>
</li>
</ol>
</div>
</div>
<div class="sect3">
<h4 id="trafci_run_installer">6.3.2. Run Executable JAR Installer</h4>
<div class="paragraph">
<p>When using the executable JAR file, trafciInstaller.jar, to install TrafCI, you have a choice of running the installer from the Installer
Wizard Graphical User Interface (GUI) or from the command line:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="#trafci_wizard_install">Installer Wizard Steps</a></p>
</li>
<li>
<p><a href="#trafci_cmd_install">Command-Line Installation Steps</a></p>
</li>
</ul>
</div>
<div class="sect4">
<h5 id="trafci_wizard_install">Installer Wizard Steps</h5>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
On Linux, to run the Installer Wizard, you must have the X Window system installed on the client workstation. If the client workstation
does not have the X Window system, see <a href="#trafci_cmd_install">Command-Line Installation Steps</a>.
</td>
</tr>
</table>
</div>
<div style="page-break-after: always;"></div>
<div class="sect5">
<h6 id="_launching_the_installer_wizard">Launching the Installer Wizard</h6>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Locate the <code>trafciInstaller.jar</code> file in the folder where you extracted the contents of the distribution (<code>.zip</code>) file.</p>
</li>
<li>
<p>Verify that the <code>trafciInstaller.jar</code> file appears as an executable JAR File. If not, skip the next two steps and go to Step 5.</p>
</li>
<li>
<p>Double-click the <code>trafciInstaller.jar</code> file to launch the Installer Wizard.</p>
</li>
<li>
<p>Proceed to <a href="#trafci_using_wizard">Using the Installer Wizard</a>.</p>
</li>
<li>
<p>At a command prompt, change to the directory where you extracted the installer files:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">cd installer-directory</code></pre>
</div>
</div>
<div class="paragraph">
<p><code><em>installer-directory</em></code> is the directory where you extracted the installer file, <code>trafciInstaller.jar</code>.</p>
</div>
</li>
<li>
<p>Launch the Installer Wizard by entering:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">java -jar trafciInstaller.jar</code></pre>
</div>
</div>
</li>
<li>
<p>Proceed to <a href="#trafci_using_wizard">Using the Installer Wizard</a>.</p>
</li>
</ol>
</div>
</div>
<div class="sect5">
<h6 id="trafci_using_wizard">Using the Installer Wizard</h6>
<div class="paragraph">
<p>When you execute <code>trafciInstaller.jar</code>, the Installer Wizard appears:</p>
</div>
<div class="paragraph">
<p><span class="image"><img src="images/InstallerWizardWelcome.jpg" alt="image"></span></p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Click one of these buttons for the type of installation that you would like to perform:</p>
<div class="ulist">
<ul>
<li>
<p><strong>Standard Installation</strong> to start the Installer Wizard, which guides you through installing both the core TrafCI components and the optional open
source extensions</p>
</li>
<li>
<p><strong>Core Components</strong> for a quick installation of the core TrafCI files</p>
</li>
<li>
<p><strong>Optional Components</strong> if you have already installed the core TrafCI files but want to install only the optional open source extensions</p>
</li>
</ul>
</div>
</li>
<li>
<p>After you have selected the components you wish to install, browse and select the JDBC JAR file and then specify an installation directory
where you will install TrafCI.</p>
<div class="paragraph">
<p><span class="image"><img src="images/InstallerWizardPaths.jpg" alt="image"></span></p>
</div>
</li>
<li>
<p>To locate the JDBC driver JAR file, click <strong>Browse</strong> next to the <strong>JDBC Type 4 Driver JAR File</strong>.</p>
</li>
<li>
<p>In the <strong>Select JDBC Type 4 Driver JAR File</strong> dialog box, navigate to and select the lib folder of the Trafodion JDBC driver, and then click <strong>Open</strong>.</p>
</li>
<li>
<p>Select <code>jdbcT4.jar</code> so that it appears in the <strong>File Name</strong> box, and then click <strong>Select</strong>.</p>
<div class="paragraph">
<p>The Installer Wizard now displays the path of the JDBC driver JAR file.</p>
</div>
<div class="paragraph">
<p><span class="image"><img src="images/JDBC_JAR_Path.jpg" alt="image"></span></p>
</div>
</li>
<li>
<p>To install in the default location, proceed to Step 9. To install in your own preferred location, proceed to Step 7.</p>
</li>
<li>
<p>To find an installation location for TrafCI, click <strong>Browse</strong> next to the <strong>Trafodion Command Interface</strong> installation directory.</p>
</li>
<li>
<p>In the <strong>Select Trafodion Command Interface Installation Directory</strong> dialog box, select the folder where you want to install TrafCI so that
the directory path appears in the <strong>File Name</strong> box, and then click <strong>Select</strong>.</p>
<div class="paragraph">
<p>The Installer Wizard displays the directory where TrafCI is installed.</p>
</div>
</li>
<li>
<p>Click <strong>Next</strong> to review the open-source legal disclaimer.</p>
</li>
<li>
<p>If you agree to the terms and conditions, select the check box, and click <strong>Next</strong>.</p>
<div class="paragraph">
<p>The Installer Wizard dialog box shows which components are available for you to download and install.</p>
</div>
<div class="paragraph">
<p><span class="image"><img src="images/OptionalComponents.jpg" alt="image"></span></p>
</div>
</li>
<li>
<p>Select the optional components to be downloaded and installed. Each optional component is installed if the component box is checked.</p>
<div class="paragraph">
<p>If you want to change the download URL for the extensions, click <strong>Edit URL</strong>, and this dialog box appears:</p>
</div>
<div class="paragraph">
<p><span class="image"><img src="images/PerlJavaServerURL.jpg" alt="image"></span></p>
</div>
<div class="paragraph">
<p>Type a new path, and click <strong>OK</strong>.</p>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
Perl and Python must be installed for the respective extensions to work.
</td>
</tr>
</table>
</div>
</li>
<li>
<p>If you do not require a proxy server, proceed to Step 15.</p>
</li>
<li>
<p>If you require a proxy server, select <strong>Use the following proxy settings</strong> and enter the proxy server and port for downloading the open
source extensions.</p>
<div class="paragraph">
<p><span class="image"><img src="images/ProxySettings.jpg" alt="image"></span></p>
</div>
</li>
<li>
<p>Click <strong>Detect Proxy Server(s)</strong> to try to auto-detect your proxy settings. If TrafCI detects one or more proxy servers, it displays
them in a drop-down menu next to the <strong>Detect Proxy Server(s)</strong> button.</p>
</li>
<li>
<p>Click <strong>Install</strong> to start the installation.</p>
</li>
<li>
<p>After the core TrafCI files are installed, the <strong>Installation Status</strong> dialog box appears indicating how many files were extracted to the
installation directory:</p>
<div class="paragraph">
<p><span class="image"><img src="images/Extracted_Files.jpg" alt="image"></span></p>
</div>
<div class="paragraph">
<p>Click <strong>OK</strong> to continue the installation.</p>
</div>
</li>
<li>
<p>If you chose to install the optional components, the installer attempts to download and install them. The progress bar indicates the
download progress of each file. In addition, an installation log provides details about the status of the download and installation of
the components.</p>
<div class="paragraph">
<p><span class="image"><img src="images/InstallComplete.jpg" alt="image"></span></p>
</div>
</li>
<li>
<p>After all TrafCI files are installed, the Installer Wizard completes.</p>
</li>
<li>
<p>Click <strong>Exit</strong>.</p>
</li>
</ol>
</div>
<div style="page-break-after: always;"></div>
</div>
</div>
<div class="sect4">
<h5 id="trafci_cmd_install">Command-Line Installation Steps</h5>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>At a command prompt, change to the directory where you extracted the contents of the distribution (.zip) file:</p>
<div class="exampleblock">
<div class="content">
<div class="paragraph">
<p><strong>cd <em>installer-directory</em></strong></p>
</div>
</div>
</div>
<div class="paragraph">
<p><code><em>installer-directory</em></code> is the directory where you extracted the installer files.</p>
</div>
</li>
<li>
<p>Before launching the command-line installer, see the command options below:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">java -jar trafciInstaller.jar -help
Usage: java -jar &lt;installer jar&gt; [ -help] | &lt;-cm|-silent&gt;
   [-jdbcFile &lt;jdbc filename&gt;] [-installDir &lt;install dir&gt;] ]</code></pre>
</div>
</div>
<div class="paragraph">
<p>The <code>-silent</code> option installs the client without prompting you for options.</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">java -jar trafciInstaller.jar -silent -jdbcFile &quot;C:\JDBC\lib\jdbcT4.jar&quot; -installDir C:\TRAFCI</code></pre>
</div>
</div>
<div class="paragraph">
<p><em>-jdbcFile</em> and <em>-installDir</em> are optional parameters. If you do not specify those parameters, you will be prompted to enter them during
installation.</p>
</div>
</li>
<li>
<p>Launch the command-line installer by entering this command:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">java -jar trafciInstaller.jar cm</code></pre>
</div>
</div>
<div class="paragraph">
<p>The command-line installer starts and prompts you to enter the type of installation:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">/home/myname/trafcitemp&gt;java -jar trafciInstaller.jar cm
********************************************************************
****                                                              **
**** Welcome to Trafodion Command Interface Installer             **
****                                                              **
**** NOTE: The installer requires a the JDBC Type 4               **
****       Driver to be installed a on your workstation.          **
********************************************************************
Type Y for a standard installation, or N for optional components only.

Standard Installation [Y]:</code></pre>
</div>
</div>
<div class="ulist">
<ul>
<li>
<p>For a standard installation, type <strong>Y</strong> and press <strong>Enter</strong>.</p>
</li>
<li>
<p>To install the optional components only, type <strong>N</strong>, press <strong>Enter</strong>, and proceed to Step 7.</p>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
All items in square brackets are default values. Press Enter to accept the default value.
</td>
</tr>
</table>
</div>
</li>
</ul>
</div>
</li>
<li>
<p>Enter the full directory path and file name of the JDBC driver JAR file, <code>jdbcT4.jar</code>, which is located in the JDBC driver lib directory:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">JDBC Type 4 Driver JAR File
--------------------------------
Enter the location and file name:</code></pre>
</div>
</div>
</li>
<li>
<p>Enter an existing directory where you would like to install TrafCI:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">Trafodion Command Interface
--------------------------------
Enter the installation directory:</code></pre>
</div>
</div>
<div class="paragraph">
<p>The installation status appears, indicating how many files are installed in the installation directory:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">Extracted 18 files from the
/home/myname/trafcitemp/trafciInstaller.jar archive into the
/usr/local/trafci directory.
Core TRAFCI files installed.
Do you want to install the optional components? [Y]:</code></pre>
</div>
</div>
</li>
<li>
<p>If you do not wish to download and install the optional components, type <strong>N</strong> at the prompt and press Enter, and your installation
is complete. Otherwise, type <strong>Y</strong>, press <strong>Enter</strong>, and proceed through the remainder of the installation.</p>
</li>
<li>
<p>Type <strong>Y</strong> and press <strong>Enter</strong> if you agree to the terms. If you are doing an optional install only, you are prompted to enter a valid TrafCI
installation directory:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">Do you agree to these terms? (Y or N): Y

Enter your installation directory:</code></pre>
</div>
</div>
</li>
<li>
<p>If you do not require a proxy server, type <strong>N</strong>, press <strong>Enter</strong>, and proceed to Step 10. Otherwise, type <strong>Y</strong>, press <strong>Enter</strong>,
and proceed to Step 9.</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">Use a proxy server? [N]:</code></pre>
</div>
</div>
</li>
<li>
<p>When prompted to auto-detect proxy servers, type <strong>Y</strong> and press <strong>Enter</strong> to direct TrafCI to detect your proxy settings.
If TrafCI finds proxy servers, it displays them. If you type <strong>N</strong> and press <strong>Enter</strong>, TrafCI prompts you to enter the proxy server and port:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">Use a proxy server? [Y]: Y
Attempt to auto-detect proxy server(s)? [Y]: N
Enter the proxy server (do not include the port): myproxyserver.com
Enter the proxy port: 8080</code></pre>
</div>
</div>
</li>
<li>
<p>You are prompted to select which optional components you wish to download and install. You can also change the download URL.</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">Install Perl JavaServer extensions? [Y]: Y

Perl JavaServer requires 3 files: Java.pm, JavaArray.pm, and JavaServer.jar
http://search.cpan.org/src/METZZO/Java-4.7/[URL of the folder which contains these files [http://search.cpan.org/src/METZZO/Java-4.7/]:]

Install Perl XML SAX Module? [Y]: Y

Perl SAX XML Module URL (PerlSAX.pm)

Install Jython, a Java implementation of Python? [Y]: Y

Jython URL (jython_installer-2.2.jar)</code></pre>
</div>
</div>
</li>
<li>
<p>The setup proceeds to download and install the optional open-source components. As each component is retrieved, dots (.) are printed to
indicate the progress of the download.</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">Downloading Perl JavaServer [1 of 3] - Java.pm
......................... 100%
Downloading Perl JavaServer [2 of 3] - JavaArray.pm1
......................... 100%
Downloading Perl JavaServer [3 of 3] - JavaServer.jar
......................... 100%
Successfully added settings.pl
Downloading Perl XML SAX Module [1 of 1] - PerlSAX.pm
......................... 100%
Downloading Jython [1 of 1] - jython_installer-2.2.jar
......................... 100%
Successfully Installed Jython. Successfully added settings.py
Trafodion Command Interface Installation Complete.
/home/myname/trafcitemp&gt;</code></pre>
</div>
</div>
</li>
</ol>
</div>
</div>
</div>
<div class="sect3">
<h4 id="trafci_uninstall">6.3.3. Uninstall TrafCI</h4>
<div class="paragraph">
<p>If you used the executable JAR file, <code>trafciInstaller.jar</code>, to install TrafCI, delete the entire
<code>Trafodion Command Interface</code> folder to uninstall TrafCI.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="_post_installation_instructions">6.4. Post-Installation Instructions</h3>
<div class="sect3">
<h4 id="_verify_installed_software_files">6.4.1. Verify Installed Software Files</h4>
<div class="paragraph">
<p>After downloading and running the installer file, verify that the TrafCI software files are installed in the correct locations:</p>
</div>
<table class="tableblock frame-all grid-all spread">
<colgroup>
<col style="width: 15%;">
<col style="width: 20%;">
<col style="width: 65%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Folder</th>
<th class="tableblock halign-left valign-top">Files</th>
<th class="tableblock halign-left valign-top">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>bin</pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>trafci</pre></div></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>trafci.cmd</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Windows launch file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>trafci.pl</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Perl wrapper script. <em>trafci-perl.pl</em> is renamed <em>trafci.pl</em>. To run this script, see the
<a href="http://trafodion.incubator.apache.com/docs/command_interface/index.html"><em>Trafodion Command Interface Guide</em></a>.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>trafci.py</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Python wrapper script. trafci-python.py is renamed as trafci.py. To run this script, see the
<a href="http://trafodion.incubator.apache.com/docs/command_interface/index.html"><em>Trafodion Command Interface Guide</em></a>.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>trafci.sh</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Linux launch file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>trafci-perl.pl</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Perl wrapper script. This script has been modified to invoke trafci.pl. This script is retained for backward compatibility.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>trafci-python.py</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Python wrapper script. This script has been modified to invoke trafci.py. This script is retained for backward compatibility.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>lib</pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>trafci.jar</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Product JAR file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>lib/perl</pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>Session.pm</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Product file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>lib/python</pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>Session.py</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Product file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>samples</pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>README</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Readme file that describes how to use the sample scripts.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>arrayDML.pl</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Sample Perl program that executes DML statements and returns results in an array format.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>sample.pl</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Sample Perl program that supports multiple sessions in one script.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>sample.sql</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Sample SQL script.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>sampleDDL.py</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Sample Python file that uses Jython to execute DDL statements.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>sampleDML.py</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Sample Python file that uses Jython to execute DML statements.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>sampleTables.pl</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Sample Perl file that lists all tables and respective row counts. The file accepts a wild-card argument on the command line.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre></pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>sampleTables.py</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Sample Python file that lists all tables and respective row counts. The file accepts a wild-card argument on the command line.</p></td>
</tr>
</tbody>
</table>
<div style="page-break-after: always;"></div>
</div>
<div class="sect3">
<h4 id="_test_launching_trafci">6.4.2. Test Launching TrafCI</h4>
<div class="paragraph">
<p>Before launching TrafCI, make sure that you have set the Java path to the correct location. For more information, see:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="#jdbct4_path_windows">Setting the PATH to a Supported</a></p>
</li>
<li>
<p><a href="#jdbct4_path_linux">Setting the PATH to a Supported Java Version on Linux</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>If you did not set the Java path on your client workstation and you try to launch TrafCI, you might see the following error message appear
momentarily in the TrafCI window before the TrafCI window disappears:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">'java' is not recognized as an internal or external command, operable program or batch file.</code></pre>
</div>
</div>
<div class="paragraph">
<p>For information about setting up the client, such as choosing the look and feel of the interface or presetting launch parameters, see the
<a href="http://trafodion.incubator.apache.com/docs/command_interface/index.html"><em>Trafodion Command Interface Guide</em></a>.</p>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_install_odb">7. Install odb</h2>
<div class="sectionbody">
<div class="paragraph">
<p>These installation instructions apply to Trafodion Release 1.3.<strong><em>n</em></strong> and subsequent updates of the product until otherwise indicated.</p>
</div>
<div class="sect2">
<h3 id="_installation_package_4">7.1. Installation Package</h3>
<div class="paragraph">
<p>The distribution file for odb is packaged within the Trafodion clients tar file, <code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code>,
on the Trafodion downloads site <a href="http://trafodion.incubator.apache.org/download.html" class="bare">http://trafodion.incubator.apache.org/download.html</a>.
Use this distribution file to install odb:</p>
</div>
<table class="tableblock frame-all grid-all spread">
<colgroup>
<col style="width: 35%;">
<col style="width: 35%;">
<col style="width: 30%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Distribution File</th>
<th class="tableblock halign-left valign-top">File Contents</th>
<th class="tableblock halign-left valign-top">Client Operating System</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>odb64_linux.tar.gz</pre></div></td>
<td class="tableblock halign-left valign-top"><div class="literal"><pre>README<br>
/bin/odb64luo</pre></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">64-bit Linux</p></td>
</tr>
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_installation_requirements_5">7.2. Installation Requirements</h3>
<div class="paragraph">
<p>The odb tool runs on 64-bit Linux. On a Linux workstation, odb requires <code>pthread</code> libraries, which are usually installed by default. It also
requires the unixODBC Driver Manager to be installed and configured on the client workstation. For more information, see the
<a href="http://trafodion.apache.org/docs/odb_user/index.html"><em>Trafodion odb User Guide</em></a>.</p>
</div>
</div>
<div class="sect2">
<h3 id="_installation_instructions_4">7.3. Installation Instructions</h3>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
Before following these installation instructions, please make sure to install and configure unixODBC on the client workstation. For more
information, see the <a href="http://trafodion.apache.org/docs/odb_user/index.html"><em>Trafodion odb User Guide</em></a>.
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>Follow these instructions to download and install odb on the client workstation.</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="#odb_download">Downloading odb</a></p>
</li>
<li>
<p><a href="#odb_install">Installing odb</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>To uninstall odb, please refer to <a href="#odb_uninstall">Uninstalling odb</a>.</p>
</div>
<div style="page-break-after: always;"></div>
<div class="sect3">
<h4 id="odb_download">7.3.1. Download odb</h4>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Create a download folder on the client workstation.</p>
</li>
<li>
<p>Open a Web browser and navigate to the Trafodion downloads site <a href="http://trafodion.incubator.apache.org/download.html" class="bare">http://trafodion.incubator.apache.org/download.html</a></p>
</li>
<li>
<p>Click on the <code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code> link to start downloading the Trafodion clients tar file to your workstation.</p>
</li>
<li>
<p>Place the <code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code> file into the download folder.</p>
</li>
<li>
<p>Unpack the <code>clients-1.3.<strong><em>n</em></strong>.tar.gz</code> file.</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">tar -xzf clients-1.3.0.tar.gz</code></pre>
</div>
</div>
<div class="paragraph">
<p>The package file contains the <code>odb64_linux.tar.gz</code> distribution file, which is extracted to the clients subdirectory.</p>
</div>
</li>
<li>
<p>Proceed with <a href="#odb_install">Installing odb</a>.</p>
</li>
</ol>
</div>
</div>
<div class="sect3">
<h4 id="odb_install">7.3.2. Install odb</h4>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Change the directory to the clients subdirectory.</p>
</li>
<li>
<p>Unpack the contents of the <code>odb64_linux.tar.gz</code> file to a location on your client workstation:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">tar -xzf odb64_linux.tar.gz</code></pre>
</div>
</div>
<div class="paragraph">
<p>The command extracts these files:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code>README</code></p>
</li>
<li>
<p><code>/bin/odb64luo</code> <code>odb64luo</code> is the odb executable.</p>
</li>
</ul>
</div>
</li>
<li>
<p>You are now ready to run the odb executable. For more information, see the <a href="http://trafodion.apache.org/docs/odb_user/index.html"><em>Trafodion odb User Guide</em></a>.</p>
</li>
</ol>
</div>
</div>
<div class="sect3">
<h4 id="odb_uninstall">7.3.3. Uninstall odb</h4>
<div class="paragraph">
<p>To uninstall odb, delete the <code>README</code> and <code>/bin/odb64luo</code> files from their installed location.</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">rm -rf odb-installation-directory</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_configure_dbvisualizer">8. Configure DbVisualizer</h2>
<div class="sectionbody">
<div class="paragraph">
<p>These configuration instructions apply to Trafodion Release 1.3.<strong><em>n</em></strong> and subsequent updates of Trafodion until otherwise indicated.</p>
</div>
<div class="sect2">
<h3 id="_prerequisite_software">8.1. Prerequisite Software</h3>
<div class="paragraph">
<p>Make sure that you have this software installed on your workstation:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Java Runtime Environment (JRE) 1.7 or higher.</p>
<div class="paragraph">
<p>See <a href="#jdbct4_JRE">Install Java Runtime Environment (JRE)</a>.</p>
</div>
<div class="paragraph">
<p>In addition, see DbVisualizer’s FAQ “How to” page:
<a href="http://confluence.dbvis.com/pages/viewpage.action?pageId=3146120"><em>How do I change the Java version that DbVisualizer uses?</em></a></p>
</div>
</li>
<li>
<p>Trafodion JDBC Type-4 Driver. See <a href="#jdbct4_install">JDBC Type-4 Installation</a>.</p>
</li>
<li>
<p>DbVisualizer 9.x.x. See the <a href="http://www.dbvis.com/"><em>DbVisualizer website</em></a>.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="_configuration_instructions">8.2. Configuration Instructions</h3>
<div class="sect3">
<h4 id="_disable_connection_validation_select_option">8.2.1. Disable Connection Validation Select Option</h4>
<div class="sect4">
<h5 id="_dbvisualizer_9_1_or_an_earlier_version">DbVisualizer 9.1 (or an earlier version)</h5>
<div class="paragraph">
<p>Edit the <code><em>DbVisualizer-Install-Dir</em>\resources\dbvis-custom.prefs</code> file and
disable the <code>ConnectionValidationSelect</code> option as shown below:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">dbvis.generic.-ConnectionValidationSelect=disabled</code></pre>
</div>
</div>
</div>
<div class="sect4">
<h5 id="_dbvisualizer_9_2_or_a_later_version">DbVisualizer 9.2 (or a later version)</h5>
<div class="paragraph">
<p>Set the <strong>Physical Connection</strong> property to keep your connections alive. Follow these steps:</p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>For the database connection, select the <strong>Properties</strong> tab.</p>
</li>
<li>
<p>In the left navigation tree, expand the <strong>Generic</strong> connection properties, and select <strong>Physical Connection</strong>.</p>
</li>
<li>
<p>Under <strong>Validation SQL</strong>, enter <code>values(current_timestamp)</code>.</p>
<div style="page-break-after: always;"></div>
<div class="paragraph">
<p><span class="image"><img src="images/Physical_Connection.jpg" alt="DbVisualizer Physical Connection" width="600" height="600"></span></p>
</div>
</li>
</ol>
</div>
<div style="page-break-after: always;"></div>
</div>
</div>
<div class="sect3">
<h4 id="_register_jdbc_type_4_driver">8.2.2. Register JDBC Type-4 Driver</h4>
<div class="paragraph">
<p>Use the DbVisualizer Driver Manager and register the Trafodion JDBC Type-4 Driver.</p>
</div>
<div class="paragraph">
<p><span class="image"><img src="images/DbVisualizer_Driver_Manager.jpg" alt="image"></span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>Use the Open File icon and locate the Trafodion JDBC Type-4 Driver.</p>
</li>
<li>
<p>Use the JDBC URL format:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">jdbc:t4jdbc://&lt;host-name or ip-address&gt;:37800/:</code></pre>
</div>
</div>
</li>
</ul>
</div>
<div style="page-break-after: always;"></div>
</div>
<div class="sect3">
<h4 id="_connect_to_trafodion">8.2.3. Connect to Trafodion</h4>
<div class="paragraph">
<p>Create a new connection by selecting the Trafodion JDBC Type-4 Driver and filling in the connection parameters. Edit the database URL to match
your Trafodion system’s host name and port number: <code>jdbc:t4jdbc://&lt;host-name or ip-address&gt;:37800/:</code></p>
</div>
<div class="paragraph">
<p><span class="image"><img src="images/Database_Connection_in_DbVisualizer.jpg" alt="image"></span></p>
</div>
<div class="paragraph">
<p>Once you have connected successfully, execute a query using SQL Commander to confirm the connection.</p>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_configure_squirrel_client">9. Configure SQuirreL Client</h2>
<div class="sectionbody">
<div class="paragraph">
<p>These configuration instructions apply to Trafodion Release 1.3.<strong><em>n</em></strong> and subsequent updates of Trafodion until otherwise indicated.</p>
</div>
<div class="sect2">
<h3 id="_prerequisite_software_2">9.1. Prerequisite Software</h3>
<div class="paragraph">
<p>Make sure that you have this software installed on your workstation:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Java Runtime Environment (JRE) 1.7 or higher. See <a href="#jdbct4_JRE">Install Java Runtime Environment (JRE)</a>.</p>
</li>
<li>
<p>Trafodion JDBC Type-4 Driver. See <a href="#jdbct4_install">JDBC Type-4 Installation</a>.</p>
</li>
<li>
<p>SQuirreL SQL Client 3.5.0. See the <a href="http://squirrel-sql.sourceforge.net/"><em>SQuirreL SQL Client website</em></a>.</p>
</li>
</ul>
</div>
<div style="page-break-after: always;"></div>
</div>
<div class="sect2">
<h3 id="_configuration_instructions_2">9.2. Configuration Instructions</h3>
<div class="sect3">
<h4 id="_register_jdbc_type_4_driver_2">9.2.1. Register JDBC Type-4 Driver</h4>
<div class="paragraph">
<p>Use the <strong>Add Driver</strong> function and register the Trafodion JDBC Type-4 Driver:</p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Click on the <strong>Add</strong> button and locate the Trafodion JDBC Type-4 Driver.</p>
</li>
<li>
<p>Click on the <strong>List Drivers</strong> button to find the JDBC Driver Class Name.</p>
</li>
<li>
<p>Set the properties as shown below:</p>
<div class="paragraph">
<p><span class="image"><img src="images/Add_Driver_SQuirreL.jpg" alt="SQuirreL Add Driver Dialog Box"></span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>Name: <code>Trafodion</code></p>
</li>
<li>
<p>Example URL: <code>jdbc:t4jdbc://<em>host-name or ip-address</em>:37800/:</code></p>
</li>
</ul>
</div>
</li>
</ol>
</div>
<div style="page-break-after: always;"></div>
</div>
<div class="sect3">
<h4 id="_connect_to_trafodion_2">9.2.2. Connect to Trafodion</h4>
<div class="paragraph">
<p>Use the Add Alias dialog box and create an alias for your Trafodion System:</p>
</div>
<div class="paragraph">
<p><span class="image"><img src="images/Add_Alias_SQuirreL.jpg" alt="SQuirreL Add Alias Dialog Box"></span></p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Edit the connection <strong>URL</strong> to match your Trafodion system&#8217;s host name and port number:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="text">jdbc:t4jdbc://&lt;host-name or ip-address&gt;:37800/:</code></pre>
</div>
</div>
</li>
<li>
<p>Click on the <strong>Properties</strong> button for the alias.</p>
<div style="page-break-after: always;"></div>
</li>
<li>
<p>In the <strong>Schemas</strong> tab, select the option <strong>Load all and cache all Schemas</strong>.</p>
<div class="paragraph">
<p><span class="image"><img src="images/Properties_for_Alias_SQuirreL.jpg" alt="SQuirreL Properties Dialog Box" width="400" height="400"></span></p>
</div>
</li>
</ol>
</div>
<div class="paragraph">
<p>Once you have a successful connection, use the SQL tab and run a query to confirm the connection.</p>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_appendix">10. Appendix</h2>
<div class="sectionbody">
<div class="sect2">
<h3 id="odbc_sample_program">10.1. <code>basicsql</code> (Sample ODBC Program)</h3>
<div class="paragraph">
<p>This appendix provides the source code for the ODBC sample program, <code>basicsql,</code> which is not currently bundled with the ODBC drivers.</p>
</div>
<div class="paragraph">
<p>This appendix also provides the code for the script files that are needed to build and run the sample program on Windows. See
<a href="#basicsql_build">Windows Build and Run Files for 'basicsql'</a>.</p>
</div>
<div class="paragraph">
<p>Copy and paste the code from this appendix into the recommended files. To build and run the sample program, see these instructions:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>On Windows: <a href="#win_odbc_run_basicsql">Run Sample Program (<code>basicsql</code>)</a>.</p>
</li>
<li>
<p>On Linux:  <a href="#linux_odbc_run_basicsql">Run Sample Program (<code>basicsql</code>)</a>.</p>
</li>
</ul>
</div>
<div class="sect3">
<h4 id="__code_basicsql_cpp_code_source_code">10.1.1. <code>basicsql.cpp</code> Source Code</h4>
<div class="paragraph">
<p>You can download the <code>basicsql.cpp</code> example from
<a href="http://trafodion.incubator.apache.org/docs/latest/client_install/resources/source/basicsql.cpp" class="bare">http://trafodion.incubator.apache.org/docs/latest/client_install/resources/source/basicsql.cpp</a>.</p>
</div>
<div class="paragraph">
<p>Alternatively, copy and paste the following code into a file named <code>basicsql.cpp</code>:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="cplusplus"><span class="comment">// @@@ START COPYRIGHT @@@</span>
<span class="comment">//</span>
<span class="comment">// Licensed to the Apache Software Foundation (ASF) under one</span>
<span class="comment">// or more contributor license agreements.  See the NOTICE file</span>
<span class="comment">// distributed with this work for additional information</span>
<span class="comment">// regarding copyright ownership.  The ASF licenses this file</span>
<span class="comment">// to you under the Apache License, Version 2.0 (the</span>
<span class="comment">// &quot;License&quot;); you may not use this file except in compliance</span>
<span class="comment">// with the License.  You may obtain a copy of the License at</span>
<span class="comment">//</span>
<span class="comment">//   http://www.apache.org/licenses/LICENSE-2.0</span>
<span class="comment">//</span>
<span class="comment">// Unless required by applicable law or agreed to in writing,</span>
<span class="comment">// software distributed under the License is distributed on an</span>
<span class="comment">// &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span>
<span class="comment">// KIND, either express or implied.  See the License for the</span>
<span class="comment">// specific language governing permissions and limitations</span>
<span class="comment">// under the License.</span>
<span class="comment">//</span>
<span class="comment">// @@@ END COPYRIGHT @@@</span>

<span class="preprocessor">#ifdef</span> __linux
    <span class="preprocessor">#include</span> <span class="include">&lt;unistd.h&gt;</span>
<span class="preprocessor">#else</span>
    <span class="preprocessor">#include</span> <span class="include">&lt;windows.h&gt;</span>
    <span class="preprocessor">#include</span> <span class="include">&lt;tchar.h&gt;</span>
<span class="preprocessor">#endif</span>

<span class="comment">//#include &lt;stdarg.h&gt;</span>

<span class="preprocessor">#include</span> <span class="include">&lt;stdio.h&gt;</span>
<span class="preprocessor">#include</span> <span class="include">&lt;string.h&gt;</span>
<span class="preprocessor">#include</span> <span class="include">&lt;stdlib.h&gt;</span>
<span class="preprocessor">#include</span> <span class="include">&lt;assert.h&gt;</span>

<span class="preprocessor">#include</span> <span class="include">&lt;sql.h&gt;</span>
<span class="preprocessor">#include</span> <span class="include">&lt;sqlext.h&gt;</span>

SQLHENV henv;
SQLHDBC hdbc;
SQLHSTMT hstmt;
SQLHWND hWnd;

<span class="preprocessor">#define</span> MAX_SQLSTRING_LEN       <span class="integer">1000</span>
<span class="preprocessor">#define</span> STATE_SIZE              <span class="integer">6</span>
<span class="preprocessor">#define</span> MAX_CONNECT_STRING      <span class="integer">256</span>
<span class="preprocessor">#define</span> TRUE                    <span class="integer">1</span>
<span class="preprocessor">#define</span> FALSE                   <span class="integer">0</span>
<span class="preprocessor">#define</span> ARGS                    <span class="string"><span class="delimiter">&quot;</span><span class="content">d:u:p:</span><span class="delimiter">&quot;</span></span>

<span class="directive">const</span> <span class="predefined-type">char</span> *SqlRetText(<span class="predefined-type">int</span> rc)
{
  <span class="directive">static</span> <span class="predefined-type">char</span> buffer[<span class="integer">80</span>];
  <span class="keyword">switch</span> (rc)
  {
    <span class="keyword">case</span> SQL_SUCCESS:
      <span class="keyword">return</span>(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQL_SUCCESS</span><span class="delimiter">&quot;</span></span>);
    <span class="keyword">case</span> SQL_SUCCESS_WITH_INFO:
      <span class="keyword">return</span>(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQL_SUCCESS_WITH_INFO</span><span class="delimiter">&quot;</span></span>);
    <span class="keyword">case</span> SQL_NO_DATA:
      <span class="keyword">return</span>(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQL_NO_DATA</span><span class="delimiter">&quot;</span></span>);
    <span class="keyword">case</span> SQL_ERROR:
      <span class="keyword">return</span>(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQL_ERROR</span><span class="delimiter">&quot;</span></span>);
    <span class="keyword">case</span> SQL_INVALID_HANDLE:
      <span class="keyword">return</span>(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQL_INVALID_HANDLE</span><span class="delimiter">&quot;</span></span>);
    <span class="keyword">case</span> SQL_STILL_EXECUTING:
      <span class="keyword">return</span>(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQL_STILL_EXECUTING</span><span class="delimiter">&quot;</span></span>);
    <span class="keyword">case</span> SQL_NEED_DATA:
     <span class="keyword">return</span>(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQL_NEED_DATA</span><span class="delimiter">&quot;</span></span>);
  }
  sprintf(buffer,<span class="string"><span class="delimiter">&quot;</span><span class="content">SQL Error %d</span><span class="delimiter">&quot;</span></span>,rc);
  <span class="keyword">return</span>(buffer);
}

<span class="directive">void</span> CleanUp()
{
  printf(<span class="string"><span class="delimiter">&quot;</span><span class="char">\n</span><span class="content">Connect Test FAILED!!!</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>);
  <span class="keyword">if</span>(hstmt != SQL_NULL_HANDLE)
    SQLFreeHandle(SQL_HANDLE_STMT,hstmt);
    <span class="keyword">if</span>(hdbc != SQL_NULL_HANDLE)
    {
      SQLDisconnect(hdbc);
      SQLFreeHandle(SQL_HANDLE_DBC,hdbc);
    }
    <span class="keyword">if</span>(henv != SQL_NULL_HANDLE)
      SQLFreeHandle(SQL_HANDLE_ENV,henv);
    exit(EXIT_FAILURE);
}

<span class="directive">void</span> LogDiagnostics(<span class="directive">const</span> <span class="predefined-type">char</span> *sqlFunction, SQLRETURN rc, <span class="predefined-type">bool</span> exitOnError=<span class="predefined-constant">true</span>)
{
  SQLRETURN diagRC = SQL_SUCCESS;
  SQLSMALLINT recordNumber;
  SQLINTEGER nativeError;
  SQLCHAR messageText[SQL_MAX_MESSAGE_LENGTH];
  SQLCHAR sqlState[<span class="integer">6</span>];
  <span class="predefined-type">int</span> diagsPrinted = <span class="integer">0</span>;
  <span class="predefined-type">bool</span> printedErrorLogHeader = <span class="predefined-constant">false</span>;

  printf(<span class="string"><span class="delimiter">&quot;</span><span class="content">Function %s returned %s</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>, sqlFunction, SqlRetText(rc));

  <span class="comment">/* Log any henv Diagnostics */</span>
  recordNumber = <span class="integer">1</span>;
  <span class="keyword">do</span>
  {
    diagRC = SQLGetDiagRec( SQL_HANDLE_ENV
                          , henv
                          , recordNumber
                          , sqlState
                          , &amp;nativeError
                          , messageText
                          , <span class="keyword">sizeof</span>(messageText)
                          , <span class="predefined-constant">NULL</span>
                          );
    <span class="keyword">if</span>(diagRC==SQL_SUCCESS)
    {
      <span class="keyword">if</span>(!printedErrorLogHeader)
      {
        printf(<span class="string"><span class="delimiter">&quot;</span><span class="content">Diagnostics associated with environment handle:</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>);
        printedErrorLogHeader = <span class="predefined-constant">true</span>;
      }
      printf(<span class="string"><span class="delimiter">&quot;</span><span class="char">\n</span><span class="char">\t</span><span class="content">SQL Diag %d</span><span class="char">\n</span><span class="char">\t</span><span class="content">Native Error: %ld</span><span class="char">\n</span><span class="char">\t</span><span class="content">SQL State:    %s</span><span class="char">\n</span><span class="char">\t</span><span class="content">Message:      %s</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>,
             recordNumber,nativeError,sqlState,messageText);
    }
    recordNumber++;
  } <span class="keyword">while</span> (diagRC==SQL_SUCCESS);

  <span class="comment">/* Log any hdbc Diagnostics */</span>
  recordNumber = <span class="integer">1</span>;
  printedErrorLogHeader = <span class="predefined-constant">false</span>;
  <span class="keyword">do</span>
  {
    diagRC = SQLGetDiagRec( SQL_HANDLE_DBC
                          , hdbc
                          , recordNumber
                          , sqlState
                          , &amp;nativeError
                          , messageText
                          , <span class="keyword">sizeof</span>(messageText)
                          , <span class="predefined-constant">NULL</span>
                          );
    <span class="keyword">if</span>(diagRC==SQL_SUCCESS)
    {
      <span class="keyword">if</span>(!printedErrorLogHeader)
      {
        printf(<span class="string"><span class="delimiter">&quot;</span><span class="content">Diagnostics associated with connection handle:</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>);
        printedErrorLogHeader = <span class="predefined-constant">true</span>;
      }
      printf(<span class="string"><span class="delimiter">&quot;</span><span class="char">\n</span><span class="char">\t</span><span class="content">SQL Diag %d</span><span class="char">\n</span><span class="char">\t</span><span class="content">Native Error: %ld</span><span class="char">\n</span><span class="char">\t</span><span class="content">SQL State:    %s</span><span class="char">\n</span><span class="char">\t</span><span class="content">Message:      %s</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>,
             recordNumber,nativeError,sqlState,messageText);
    }
    recordNumber++;
  } <span class="keyword">while</span> (diagRC==SQL_SUCCESS);

  <span class="comment">/* Log any hstmt Diagnostics */</span>
  recordNumber = <span class="integer">1</span>;
  printedErrorLogHeader = <span class="predefined-constant">false</span>;
  <span class="keyword">do</span>
  {
    diagRC = SQLGetDiagRec( SQL_HANDLE_STMT
                          , hstmt
                          , recordNumber
                          , sqlState
                          , &amp;nativeError
                          , messageText
                          , <span class="keyword">sizeof</span>(messageText)
                          , <span class="predefined-constant">NULL</span>
                          );
    <span class="keyword">if</span>(diagRC==SQL_SUCCESS)
    {
      <span class="keyword">if</span>(!printedErrorLogHeader)
      {
        printf(<span class="string"><span class="delimiter">&quot;</span><span class="content">Diagnostics associated with statmement handle:</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>);
        printedErrorLogHeader = <span class="predefined-constant">true</span>;
      }
      printf(<span class="string"><span class="delimiter">&quot;</span><span class="char">\n</span><span class="char">\t</span><span class="content">SQL Diag %d</span><span class="char">\n</span><span class="char">\t</span><span class="content">Native Error: %ld</span><span class="char">\n</span><span class="char">\t</span><span class="content">SQL State:    %s</span><span class="char">\n</span><span class="char">\t</span><span class="content">Message:      %s</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>,
             recordNumber,nativeError,sqlState,messageText);
    }
    recordNumber++;
  } <span class="keyword">while</span> (diagRC==SQL_SUCCESS);

  <span class="keyword">if</span>(exitOnError &amp;&amp; rc!=SQL_SUCCESS_WITH_INFO)
  CleanUp();
}

<span class="comment">// Main Program</span>
<span class="predefined-type">int</span> main (<span class="predefined-type">int</span> argc, <span class="predefined-type">char</span> *argv[])
{
  <span class="predefined-type">unsigned</span> <span class="predefined-type">char</span> dsnName[<span class="integer">20</span>];
  <span class="predefined-type">unsigned</span> <span class="predefined-type">char</span> user[<span class="integer">20</span>];
  <span class="predefined-type">unsigned</span> <span class="predefined-type">char</span> password[<span class="integer">20</span>];
  SQLRETURN       returnCode;
  <span class="predefined-type">bool</span>            testPassed = <span class="predefined-constant">true</span>;
  SQLCHAR         InConnStr[MAX_CONNECT_STRING];
  SQLCHAR         OutConnStr[MAX_CONNECT_STRING];
  SQLSMALLINT     ConnStrLength;
  <span class="predefined-type">int</span> errflag = <span class="integer">0</span>;

  <span class="comment">//optarg = NULL;</span>
  <span class="keyword">if</span> (argc != <span class="integer">4</span>)
     errflag++;

  <span class="keyword">if</span> (!errflag )
  {
    strcpy ((<span class="predefined-type">char</span> *)dsnName, argv[<span class="integer">1</span>]);
    strcpy ((<span class="predefined-type">char</span> *)dsnName, argv[<span class="integer">1</span>]);
    strcpy ((<span class="predefined-type">char</span> *)user, argv[<span class="integer">2</span>]);
    strcpy ((<span class="predefined-type">char</span> *)password, argv[<span class="integer">3</span>]);
  }

  <span class="keyword">if</span> (errflag)
  {
    printf(<span class="string"><span class="delimiter">&quot;</span><span class="content">Command line error.</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>);
    printf(<span class="string"><span class="delimiter">&quot;</span><span class="content">Usage: %s &lt;datasource&gt; &lt;userid&gt; &lt;password&gt;</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>, argv[<span class="integer">0</span>] );
    <span class="keyword">return</span> FALSE;
  }

  <span class="comment">// Initialize handles to NULL</span>
  henv = SQL_NULL_HANDLE;
  hstmt = SQL_NULL_HANDLE;
  hdbc = SQL_NULL_HANDLE;

  <span class="comment">// Allocate Environment Handle</span>
  returnCode = SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &amp;henv);
  <span class="keyword">if</span> (!SQL_SUCCEEDED(returnCode))
     LogDiagnostics(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &amp;henv)</span><span class="delimiter">&quot;</span></span>,returnCode);

  <span class="comment">// Set ODBC version to 3.0</span>
  returnCode = SQLSetEnvAttr(henv, SQL_ATTR_ODBC_VERSION, (<span class="directive">void</span>*)SQL_OV_ODBC3, <span class="integer">0</span>);
  <span class="keyword">if</span> (!SQL_SUCCEEDED(returnCode))
     LogDiagnostics( <span class="string"><span class="delimiter">&quot;</span><span class="content">SQLSetEnvAttr(henv, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3, 0)</span><span class="delimiter">&quot;</span></span>
                   , returnCode
                   , <span class="predefined-constant">false</span>
                   );

  <span class="comment">// Allocate Connection handle</span>
  returnCode = SQLAllocHandle(SQL_HANDLE_DBC, henv, &amp;hdbc);
  <span class="keyword">if</span> (!SQL_SUCCEEDED(returnCode))
     LogDiagnostics(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQLAllocHandle(SQL_HANDLE_DBC, henv, &amp;hdbc)</span><span class="delimiter">&quot;</span></span>, returnCode);

  <span class="comment">//Connect to the database</span>
  sprintf((<span class="predefined-type">char</span>*)InConnStr,<span class="string"><span class="delimiter">&quot;</span><span class="content">DSN=%s;UID=%s;PWD=%s;%c</span><span class="delimiter">&quot;</span></span>,(<span class="predefined-type">char</span>*)dsnName, (<span class="predefined-type">char</span>*)user, (<span class="predefined-type">char</span>*)password,<span class="char">'\0'</span>);
  printf(<span class="string"><span class="delimiter">&quot;</span><span class="content">Using Connect String: %s</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>, InConnStr);
  returnCode = SQLDriverConnect( hdbc
                               , hWnd
                               , InConnStr
                               , SQL_NTS
                               , OutConnStr
                               , <span class="keyword">sizeof</span>(OutConnStr)
                               , &amp;ConnStrLength
                               , SQL_DRIVER_NOPROMPT
                               );
  <span class="keyword">if</span> (!SQL_SUCCEEDED(returnCode))
     LogDiagnostics(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQLDriverConnect</span><span class="delimiter">&quot;</span></span>,returnCode);
  printf(<span class="string"><span class="delimiter">&quot;</span><span class="content">Successfully connected using SQLDriverConnect.</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>);

  <span class="comment">//Allocate Statement handle</span>
  returnCode = SQLAllocHandle(SQL_HANDLE_STMT, hdbc, &amp;hstmt);
  <span class="keyword">if</span> (!SQL_SUCCEEDED(returnCode))
     LogDiagnostics(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQLAllocHandle(SQL_HANDLE_STMT, hdbc, &amp;hstmt)</span><span class="delimiter">&quot;</span></span>, returnCode);

  printf(<span class="string"><span class="delimiter">&quot;</span><span class="content">Drop sample table if it exists...</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>);
  <span class="comment">//Drop the test table if it exists</span>
  <span class="comment">//DROP IF EXISTS TASKS;</span>
  returnCode = SQLExecDirect(hstmt, (SQLCHAR*)<span class="string"><span class="delimiter">&quot;</span><span class="content">DROP TABLE IF EXISTS TASKS</span><span class="delimiter">&quot;</span></span>, SQL_NTS);
  <span class="keyword">if</span> (!SQL_SUCCEEDED(returnCode))
     LogDiagnostics(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQLExecDirect of DROP</span><span class="delimiter">&quot;</span></span>, returnCode);

  printf(<span class="string"><span class="delimiter">&quot;</span><span class="content">Creating sample table TASKS...</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>);
  <span class="comment">//Create a test table in default schema</span>
  <span class="comment">//CREATE TABLE TASKS (ID INT NOT NULL, TASK VARCHAR(10), LAST_UPDATE TIMESTAMP, PRIMARY KEY (C1));</span>
  returnCode =
    SQLExecDirect
    ( hstmt
    , (SQLCHAR*)<span class="string"><span class="delimiter">&quot;</span><span class="content">CREATE TABLE TASKS (ID INT NOT NULL, TASK CHAR(20), COMPLETED DATE, PRIMARY KEY (ID))</span><span class="delimiter">&quot;</span></span>
    , SQL_NTS
    );
  <span class="keyword">if</span> (!SQL_SUCCEEDED(returnCode))
     LogDiagnostics(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQLExecDirect of CREATE</span><span class="delimiter">&quot;</span></span>, returnCode);
  printf(<span class="string"><span class="delimiter">&quot;</span><span class="content">Table TASKS created using SQLExecDirect.</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>);

  printf(<span class="string"><span class="delimiter">&quot;</span><span class="content">Inserting data using SQLBindParameter, SQLPrepare, SQLExecute</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>);
  <span class="comment">//Insert few rows into test table using bound parameters</span>
  <span class="comment">//INSERT INTO TASKS VALUES (?, ?, ?);</span>
  SQLINTEGER intID;
  SQLLEN cbID = <span class="integer">0</span>, cbTask = SQL_NTS, cbCompleted = <span class="integer">0</span>;
  SQLCHAR strTask[<span class="integer">200</span>];
  SQL_DATE_STRUCT dsCompleted;

  returnCode = SQLBindParameter( hstmt
                               , <span class="integer">1</span>
                               , SQL_PARAM_INPUT
                               , SQL_C_SHORT
                               , SQL_INTEGER
                               , <span class="integer">0</span>
                               , <span class="integer">0</span>
                               , &amp;intID
                               , <span class="integer">0</span>
                               , &amp;cbID
                               );
  <span class="keyword">if</span> (!SQL_SUCCEEDED(returnCode))
     LogDiagnostics(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQLBindParameter 1</span><span class="delimiter">&quot;</span></span>, returnCode);

  returnCode = SQLBindParameter(hstmt, <span class="integer">2</span>, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_CHAR, <span class="integer">0</span>, <span class="integer">0</span>, &amp;strTask, <span class="integer">0</span>, &amp;cbTask);
  <span class="keyword">if</span> (!SQL_SUCCEEDED(returnCode))
     LogDiagnostics(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQLBindParameter 2</span><span class="delimiter">&quot;</span></span>, returnCode);

  returnCode = SQLBindParameter( hstmt
                               , <span class="integer">3</span>
                               , SQL_PARAM_INPUT
                               , SQL_C_TYPE_DATE
                               , SQL_DATE
                               , <span class="keyword">sizeof</span>(dsCompleted)
                               , <span class="integer">0</span>
                               , &amp;dsCompleted
                               , <span class="integer">0</span>
                               , &amp;cbCompleted
                               );
  <span class="keyword">if</span> (!SQL_SUCCEEDED(returnCode))
     LogDiagnostics(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQLBindParameter 3</span><span class="delimiter">&quot;</span></span>, returnCode);

  returnCode = SQLPrepare(hstmt, (SQLCHAR*)<span class="string"><span class="delimiter">&quot;</span><span class="content">INSERT INTO TASKS VALUES (?, ?, ?)</span><span class="delimiter">&quot;</span></span>, SQL_NTS);
  <span class="keyword">if</span> (!SQL_SUCCEEDED(returnCode))
     LogDiagnostics(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQLPrepare of INSERT</span><span class="delimiter">&quot;</span></span>, returnCode);

  intID = <span class="integer">1000</span>;
  strcpy ((<span class="predefined-type">char</span>*)strTask, <span class="string"><span class="delimiter">&quot;</span><span class="content">CREATE REPORTS</span><span class="delimiter">&quot;</span></span>);
  dsCompleted.year = <span class="integer">2014</span>;
  dsCompleted.month = <span class="integer">3</span>;
  dsCompleted.day = <span class="integer">22</span>;

  returnCode = SQLExecute(hstmt);
  <span class="keyword">if</span> (!SQL_SUCCEEDED(returnCode))
     LogDiagnostics(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQLExecute</span><span class="delimiter">&quot;</span></span>, returnCode);
  printf(<span class="string"><span class="delimiter">&quot;</span><span class="content">Data inserted.</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>);

  <span class="comment">//Select rows from test table and fetch the data</span>
  <span class="comment">//SELECT * from TASKS WHERE TASK LIKE '%REPORT%'</span>
  printf(<span class="string"><span class="delimiter">&quot;</span><span class="content">Fetching data using SQLExecDirect, SQLFetch, SQLGetData</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>);
  returnCode = SQLExecDirect(hstmt, (SQLCHAR*)<span class="string"><span class="delimiter">&quot;</span><span class="content">SELECT ID, TASK, COMPLETED FROM TASKS</span><span class="delimiter">&quot;</span></span>, SQL_NTS);
  <span class="keyword">if</span> (!SQL_SUCCEEDED(returnCode))
  LogDiagnostics(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQLExecDirect of SELECT</span><span class="delimiter">&quot;</span></span>, returnCode);

  <span class="comment">//loop thru resultset</span>
  <span class="keyword">while</span> (TRUE)
  {
    returnCode = SQLFetch(hstmt);
    <span class="keyword">if</span> (returnCode == SQL_ERROR || returnCode == SQL_SUCCESS_WITH_INFO)
    {
      LogDiagnostics(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQLFetch</span><span class="delimiter">&quot;</span></span>, returnCode);
    }
    <span class="keyword">if</span> (returnCode == SQL_SUCCESS || returnCode == SQL_SUCCESS_WITH_INFO)
    {
      SQLGetData(hstmt, <span class="integer">1</span>, SQL_C_SHORT, &amp;intID, <span class="integer">0</span>, &amp;cbID);
      SQLGetData(hstmt, <span class="integer">2</span>, SQL_C_CHAR, strTask, <span class="integer">20</span>, &amp;cbTask);
      SQLGetData(hstmt, <span class="integer">3</span>, SQL_C_TYPE_DATE, &amp;dsCompleted, <span class="keyword">sizeof</span>(dsCompleted), &amp;cbCompleted);
      printf( <span class="string"><span class="delimiter">&quot;</span><span class="content">Data selected: %d %s %d-%d-%d</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>
            , intID
            , strTask
            , dsCompleted.year
            , dsCompleted.month
            , dsCompleted.day
            );
    }
    <span class="keyword">else</span>
      <span class="keyword">break</span>;
  }

  <span class="comment">//Free Statement handle</span>
  returnCode = SQLFreeHandle(SQL_HANDLE_STMT, hstmt);
  <span class="keyword">if</span> (!SQL_SUCCEEDED(returnCode))
     LogDiagnostics(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQLFreeHandle(SQL_HANDLE_STMT, hstmt)</span><span class="delimiter">&quot;</span></span>, returnCode);
  hstmt = SQL_NULL_HANDLE;

  <span class="comment">//Disconnect</span>
  returnCode = SQLDisconnect(hdbc);
  <span class="keyword">if</span> (!SQL_SUCCEEDED(returnCode))
     LogDiagnostics(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQLDisconnect(hdbc)</span><span class="delimiter">&quot;</span></span>, returnCode);

  <span class="comment">//Free Connection handle</span>
  returnCode = SQLFreeHandle(SQL_HANDLE_DBC, hdbc);
  <span class="keyword">if</span> (!SQL_SUCCEEDED(returnCode))
     LogDiagnostics(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQLFreeHandle(SQL_HANDLE_DBC, hdbc)</span><span class="delimiter">&quot;</span></span>, returnCode);
  hdbc = SQL_NULL_HANDLE;

  <span class="comment">//Free Environment handle</span>
  returnCode = SQLFreeHandle(SQL_HANDLE_ENV, henv);
  <span class="keyword">if</span> (!SQL_SUCCEEDED(returnCode))
     LogDiagnostics(<span class="string"><span class="delimiter">&quot;</span><span class="content">SQLFreeHandle(SQL_HANDLE_ENV, henv)</span><span class="delimiter">&quot;</span></span>, returnCode);
  henv = SQL_NULL_HANDLE;

  printf(<span class="string"><span class="delimiter">&quot;</span><span class="content">Basic SQL ODBC Test Passed!</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>);
  exit(EXIT_SUCCESS);
}</code></pre>
</div>
</div>
</div>
<div class="sect3">
<h4 id="basicsql_build">10.1.2. Windows Build and Run Files for <code>basicsql</code></h4>
<div class="paragraph">
<p>The script files that are needed to build and run the sample program on Windows are not currently bundled with the ODBC driver.
Copy and paste the code from this appendix into the recommended files. To build and run the sample program on Windows,
see the instructions in <a href="#win_odbc_run_basicsql">Run Sample Program (<code>basicsql</code>)</a>.</p>
</div>
<div class="sect4">
<h5 id="__code_build_bat_code_build_script"><code>build.bat</code> (Build Script)</h5>
<div class="paragraph">
<p>You can download the <code>build.bat</code> example from
<a href="http://trafodion.incubator.apache.org/docs/latest/client_install/resources/source/build.bat" class="bare">http://trafodion.incubator.apache.org/docs/latest/client_install/resources/source/build.bat</a>.</p>
</div>
<div class="paragraph">
<p>Alternatively, copy and paste the following code into a file named <code>build.bat</code>, which is used to build the sample program on Windows:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>@echo off
REM @@@ START COPYRIGHT @@@
REM
REM Licensed to the Apache Software Foundation (ASF) under one
REM or more contributor license agreements.  See the NOTICE file
REM distributed with this work for additional information
REM regarding copyright ownership.  The ASF licenses this file
REM to you under the Apache License, Version 2.0 (the
REM "License"); you may not use this file except in compliance
REM with the License.  You may obtain a copy of the License at
REM
REM   http://www.apache.org/licenses/LICENSE-2.0
REM
REM Unless required by applicable law or agreed to in writing,
REM software distributed under the License is distributed on an
REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
REM KIND, either express or implied.  See the License for the
REM specific language governing permissions and limitations
REM under the License.
REM
REM @@@ END COPYRIGHT @@@

CL /c /Zi /nologo /W3 /WX- /O2 /D "NDEBUG" /D "_CRT_SECURE_NO_DEPRECATE" /D "_MBCS" /Gm /EHsc /GS /fp:precise /Zc:wchar_t /Zc:forScope /Fo"./" /Gd /errorReport:queue basicsql.cpp

link /OUT:"./basicsql.exe" /NOLOGO "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib" /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X64 /ERRORREPORT:QUEUE basicsql.obj</pre>
</div>
</div>
<div class="paragraph">
<p>To build the sample program on Windows, see the instructions in <a href="#win_odbc_run_basicsql">Run Sample Program (<code>basicsql</code>)</a>.</p>
</div>
</div>
<div class="sect4">
<h5 id="_run_code_run_bat_code">Run <code>run.bat</code></h5>
<div class="paragraph">
<p>You can download the <code>run.bat</code> example from
<a href="http://trafodion.incubator.apache.org/docs/latest/client_install/resources/source/run.bat" class="bare">http://trafodion.incubator.apache.org/docs/latest/client_install/resources/source/run.bat</a>.</p>
</div>
<div class="paragraph">
<p>Alternatively, copy and paste the following code into a file named <code>run.bat</code>, which is used to run the sample program on Windows:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>@echo off
REM @@@ START COPYRIGHT @@@
REM
REM Licensed to the Apache Software Foundation (ASF) under one
REM or more contributor license agreements.  See the NOTICE file
REM distributed with this work for additional information
REM regarding copyright ownership.  The ASF licenses this file
REM to you under the Apache License, Version 2.0 (the
REM "License"); you may not use this file except in compliance
REM with the License.  You may obtain a copy of the License at
REM
REM   http://www.apache.org/licenses/LICENSE-2.0
REM
REM Unless required by applicable law or agreed to in writing,
REM software distributed under the License is distributed on an
REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
REM KIND, either express or implied.  See the License for the
REM specific language governing permissions and limitations
REM under the License.
REM
REM @@@ END COPYRIGHT @@@

basicsql.exe Default_Datasource user1 pwd1</pre>
</div>
</div>
<div class="paragraph">
<p>To run the sample program on Windows, see the instructions in <a href="#win_odbc_run_basicsql">Run Sample Program (<code>basicsql</code>)</a>.</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div id="footer">
<div id="footer-text">
Version 2.0.0<br>
Last updated 2016-02-24 18:39:33 UTC
</div>
</div>
<script>
var _gaq = _gaq || [];
_gaq.push(['_setAccount','UA-72491210-1']);
_gaq.push(['_trackPageview']);
(function() {
  var ga = document.createElement('script');
  ga.type = 'text/javascript';
  ga.async = true;
  ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
  var s = document.getElementsByTagName('script')[0];
  s.parentNode.insertBefore(ga, s);
})();
</script>
</body>
</html>