<html>
<head>
    <base href="https://docs.jboss.org/author">
            <link rel="stylesheet" href="/author/s/en/2172/19/5/_/styles/combined.css?spaceKey=TEIID&amp;forWysiwyg=true" type="text/css">
    </head>
<body style="background: white;" bgcolor="white" class="email-body">
<div id="pageContent">
<div id="notificationFormat">
<div class="wiki-content">
<div class="email">
    <h2><a href="https://docs.jboss.org/author/display/TEIID/ODBC+Support">ODBC Support</a></h2>
    <h4>Page <b>edited</b> by             <a href="https://docs.jboss.org/author/display/~shawkins">Steven Hawkins</a>
    </h4>
        <br/>
                         <h4>Changes (9)</h4>
                                 
    
<div id="page-diffs">
                    <table class="diff" cellpadding="0" cellspacing="0">
    
            <tr><td class="diff-changed-lines" >Open Database Connectivity <span class="diff-changed-words"><span class="diff-deleted-chars"style="color:#999;background-color:#fdd;text-decoration:line-through;">\</span>(ODBC)</span> is a standard database access method developed by the SQL Access group in 1992. ODBC, just like JDBC in Java, allows consistent client access regardless of which database management system <span class="diff-changed-words"><span class="diff-deleted-chars"style="color:#999;background-color:#fdd;text-decoration:line-through;">\</span>(DBMS)</span> is handling the data.  ODBC uses a driver to translate the application&#39;s data queries into commands that the DBMS understands. For this to work, both the application and the DBMS must be <span class="diff-changed-words">ODBC<span class="diff-deleted-chars"style="color:#999;background-color:#fdd;text-decoration:line-through;">\</span>-compliant \-<span class="diff-added-chars"style="background-color: #dfd;">\</span>-</span> that is, the application must be capable of issuing ODBC commands and the DBMS must be capable of responding to them. <br></td></tr>
            <tr><td class="diff-unchanged" > <br></td></tr>
            <tr><td class="diff-deleted-lines" style="color:#999;background-color:#fdd;text-decoration:line-through;">Teiid can provide ODBC access to deployed VDBs in the Teiid runtime through [PostgreSQL|http://www.postgresql.org/]&#39;s ODBC driver. This is possible because Teiid has specialized handling that allows it emulate a PostgreSQL server and respond appropriate to expected metadata queries. <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">Teiid can provide ODBC access to deployed VDBs in the Teiid runtime through [PostgreSQL|http://www.postgresql.org/]&#39;s ODBC driver. This is possible because Teiid has a PostgreSQL server emulation layer accessible via socket clients. <br></td></tr>
            <tr><td class="diff-unchanged" > <br>{info}By default, ODBC is enabled and running on on port _35432_. <br>{info} <br> <br></td></tr>
            <tr><td class="diff-deleted-lines" style="color:#999;background-color:#fdd;text-decoration:line-through;">Before an application can use ODBC, you must first install the ODBC driver on same machine that the application is running on and then create a Data Source Name \(DSN) that represents a connection profile for your Teiid VDB. <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">The pg emulation is not complete.  The intention of the ODBC access is to provide non-JDBC connectivity to issue Teiid queries - not pgsql queries.  While many PostgreSQL constructs are supported the default behavior for queries matches Teiid&#39;s expectations.  See [System Properties] for optional properties that further emulate pgsql handling. <br></td></tr>
            <tr><td class="diff-unchanged" > <br></td></tr>
            <tr><td class="diff-deleted-lines" style="color:#999;background-color:#fdd;text-decoration:line-through;">{warning}Teiid currently only supports plain text passward authentication for ODBC. If the client/server are not configured to use SSL, the password will be sent in plain text over the network. If you need secure passwords in transit and are not using SSL, then consider installing a security domain that will accept safe password values from the client \(for example encrypted or hashed). <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">Before an application can use ODBC, you must first install the ODBC driver on same machine that the application is running on and then create a Data Source Name (DSN) that represents a connection profile for your Teiid VDB. <br></td></tr>
            <tr><td class="diff-unchanged" > <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">{warning}Teiid currently only supports plain text password authentication for ODBC. If the client/server are not configured to use SSL, the password will be sent in plain text over the network. If you need secure passwords in transit and are not using SSL, then consider installing a security domain that will accept safe password values from the client (for example encrypted or hashed). <br></td></tr>
            <tr><td class="diff-unchanged" >{warning} <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;"> <br>See [Teiid Security] for details on configuring SSL for the pg transport. <br></td></tr>
    
            </table>
    </div>                            <h4>Full Content</h4>
                    <div class="notificationGreySide">
        <p>Open Database Connectivity (ODBC) is a standard database access method developed by the SQL Access group in 1992. ODBC, just like JDBC in Java, allows consistent client access regardless of which database management system (DBMS) is handling the data.  ODBC uses a driver to translate the application's data queries into commands that the DBMS understands. For this to work, both the application and the DBMS must be ODBC-compliant &#45;&#45; that is, the application must be capable of issuing ODBC commands and the DBMS must be capable of responding to them.</p>

<p>Teiid can provide ODBC access to deployed VDBs in the Teiid runtime through <a href="http://www.postgresql.org/" class="external-link" rel="nofollow">PostgreSQL</a>'s ODBC driver. This is possible because Teiid has a PostgreSQL server emulation layer accessible via socket clients.</p>

<div class='panelMacro'><table class='infoMacro'><colgroup><col width='24'><col></colgroup><tr><td valign='top'><img src="/author/images/icons/emoticons/information.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>By default, ODBC is enabled and running on on port <em>35432</em>.</td></tr></table></div>

<p>The pg emulation is not complete.  The intention of the ODBC access is to provide non-JDBC connectivity to issue Teiid queries - not pgsql queries.  While many PostgreSQL constructs are supported the default behavior for queries matches Teiid's expectations.  See <a href="/author/display/TEIID/System+Properties" title="System Properties">System Properties</a> for optional properties that further emulate pgsql handling.</p>

<p>Before an application can use ODBC, you must first install the ODBC driver on same machine that the application is running on and then create a Data Source Name (DSN) that represents a connection profile for your Teiid VDB.</p>

<div class='panelMacro'><table class='warningMacro'><colgroup><col width='24'><col></colgroup><tr><td valign='top'><img src="/author/images/icons/emoticons/forbidden.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>Teiid currently only supports plain text password authentication for ODBC. If the client/server are not configured to use SSL, the password will be sent in plain text over the network. If you need secure passwords in transit and are not using SSL, then consider installing a security domain that will accept safe password values from the client (for example encrypted or hashed).</td></tr></table></div>

<p>See <a href="/author/display/TEIID/Teiid+Security" title="Teiid Security">Teiid Security</a> for details on configuring SSL for the pg transport.</p>
    </div>
        <div id="commentsSection" class="wiki-content pageSection">
        <div style="float: right;" class="grey">
                        <a href="https://docs.jboss.org/author/users/removespacenotification.action?spaceKey=TEIID">Stop watching space</a>
            <span style="padding: 0px 5px;">|</span>
                <a href="https://docs.jboss.org/author/users/editmyemailsettings.action">Change email notification preferences</a>
</div>
        <a href="https://docs.jboss.org/author/display/TEIID/ODBC+Support">View Online</a>
        |
        <a href="https://docs.jboss.org/author/pages/diffpagesbyversion.action?pageId=18646141&revisedVersion=4&originalVersion=3">View Changes</a>
                |
        <a href="https://docs.jboss.org/author/display/TEIID/ODBC+Support?showComments=true&amp;showCommentArea=true#addcomment">Add Comment</a>
            </div>
</div>
</div>
</div>
</div>
</body>
</html>