﻿<?xml version='1.0' encoding='UTF-8'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Teradata Download Center / Teradata JDBC Driver / Teradata JDBC Sample Programs </title><generator>InstantForum.NET v4.1.4</generator><description>Teradata Download Center</description><link>http://www.teradata.com/DownloadCenter/</link><webMaster>info.teradata@teradata.com</webMaster><lastBuildDate>Sat, 07 Nov 2009 21:35:20 GMT</lastBuildDate><ttl>20</ttl><item><title>Teradata JDBC Driver Learning Examples</title><link>http://www.teradata.com/DownloadCenter/Topic9361-99-1.aspx</link><description>This documentation represents proprietary information of Teradata Corporation, and is protected by US, foreign and international intellectual property laws, including US Federal copyright law, and as such, may not be disclosed to third parties, or otherwise copied or duplicated in any form, in whole or in part, without the prior written consent of Teradata Corporation. &lt;HR&gt;&lt;P&gt;The purpose of this documentation is to provide examples of programs that can be used as a guide for purposes of developing JDBC applications solely for use with the Teradata Database, and is provided as an illustration of how JDBC functions operate with the Teradata Database. &lt;/P&gt;&lt;P&gt;This documentation, including the example programs, are provided on an "AS-IS" basis, and under no circumstances will Teradata be liable for any damages (including direct, indirect, consequential, special, punitive, incidental damages) resulting from any use even if notified of the possibility of any damages. Teradata reserves the right to change or withdraw any of the information provided in this documentation without notice. &lt;/P&gt;&lt;HR&gt;&lt;P&gt;The learning examples are split into distinct modules. Every module consists of one or more examples within a general theme, exemplifying a specific aspect of the JDBC driver. All examples are thoroughly documented to explain newly encountered features as they are used. &lt;/P&gt;&lt;P&gt;The modules are as follows: &lt;/P&gt;&lt;TABLE class=BlackText border=1&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TH&gt;Module&lt;/TH&gt;&lt;TH&gt;Description&lt;/TH&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;Sets up the environment, creating necessary tables and indexes&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;Shows how to obtain result set meta data for a SQL statement&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;Illustrates performing insertions into the sample tables&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;Illustrates performing selections from the sample tables&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;Illustrates performing updates to the sample tables&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;Illustrates performing deletions from the sample tables&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;Illustrates creation and execution of stored procedures&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;Illustrates execution of multi-statement requests&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;Illustrates creation and execution of macros&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;Illustrates obtaining various information about the database&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;Illustrates searching for specific information about the database&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;11&lt;/TD&gt;&lt;TD&gt;Illustrates obtaining and modifying client access product options&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;12&lt;/TD&gt;&lt;TD&gt;Illustrates using the J2SE 5.0 (JDK 1.5) JdbcRowSetImpl&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;13&lt;/TD&gt;&lt;TD&gt;Illustrates using DataSources&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;TD&gt;Illustrates creation and execution of User-Defined Functions (UDFs)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;TD&gt;Illustrates Teradata-specific data type conversions&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;16&lt;/TD&gt;&lt;TD&gt;Illustrates the use of JDBC Escape Syntax&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;18&lt;/TD&gt;&lt;TD&gt;Illustrates the use of JDBC Updatable Result Set&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;19&lt;/TD&gt;&lt;TD&gt;Illustrates the use of SET QUERY_BAND statement&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;99&lt;/TD&gt;&lt;TD&gt;Cleans up the environment&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;The table below shows the example breakdown into modules, with the respective example file name and description. &lt;/P&gt;&lt;TABLE class=BlackText border=1&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TH&gt;Module&lt;/TH&gt;&lt;TH&gt;File Name &lt;/TH&gt;&lt;TH&gt;Program Description&lt;/TH&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9359-99-1.aspx" cmImpressionSent="1"&gt;T20000JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Set up the example environment (users, databases, tables, indexes)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9358-99-1.aspx" cmImpressionSent="1"&gt;T20001JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Set up the example environment (users, databases, tables, indexes)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9357-99-1.aspx" cmImpressionSent="1"&gt;T20002JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Set up the example environment (users, databases, tables, indexes)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9356-99-1.aspx" cmImpressionSent="1"&gt;T20003JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Set up the example environment (users, databases, global temporary tables, indexes)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9355-99-1.aspx" cmImpressionSent="1"&gt;T20100JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Execute a SQL statement and obtain any result set column meta data&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9354-99-1.aspx" cmImpressionSent="1"&gt;T20101JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Execute a SQL statement and obtain any result set column meta data&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9353-99-1.aspx" cmImpressionSent="1"&gt;T20200JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Insert non LOB columns into a row in a table, without using parameter markers&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9352-99-1.aspx" cmImpressionSent="1"&gt;T20201JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Insert non LOB columns into a row in a table, using parameter markers&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9351-99-1.aspx" cmImpressionSent="1"&gt;T20202JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Insert LOB columns into a row in a table, without using parameter markers&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9350-99-1.aspx" cmImpressionSent="1"&gt;T20203JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Insert LOB columns into a row in a table, using parameter markers&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9349-99-1.aspx" cmImpressionSent="1"&gt;T20204JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Insert data into a table and display the generated keys&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9348-99-1.aspx" cmImpressionSent="1"&gt;T20205JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Insert data into a table using FastLoad with auto-commit true&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9347-99-1.aspx" cmImpressionSent="1"&gt;T20206JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Insert data into a table using FastLoad with auto-commit false&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9346-99-1.aspx" cmImpressionSent="1"&gt;T20207JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Insert data into a table using FastLoad with auto-commit false and verify FastLoad sessions&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9345-99-1.aspx" cmImpressionSent="1"&gt;T20300JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Select non-LOB columns from a specific row, from a table, without using parameter markers for the predicate values. Also obtain column meta data.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9344-99-1.aspx" cmImpressionSent="1"&gt;T20301JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Select non-LOB columns from a specific row, from a table, using parameter markers for the predicate values. Also obtain column meta data.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9343-99-1.aspx" cmImpressionSent="1"&gt;T20302JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Select LOB columns from a specific row, from a table, without using parameter markers for the predicate values. Also obtain column meta data.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9342-99-1.aspx" cmImpressionSent="1"&gt;T20303JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Select LOB columns from a specific row, from a table, using parameter markers for the predicate values. Also obtain column meta data.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9341-99-1.aspx" cmImpressionSent="1"&gt;T20304JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Obtain result set metadata prior to executing the prepared statement&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9340-99-1.aspx" cmImpressionSent="1"&gt;T20305JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Obtain parameter metadata prior to executing the prepared statement&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9339-99-1.aspx" cmImpressionSent="1"&gt;T20306JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Select data from a table using FastExport without parameter marker&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9338-99-1.aspx" cmImpressionSent="1"&gt;T20307JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Select data from a table using FastExport with parameter marker&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9337-99-1.aspx" cmImpressionSent="1"&gt;T20308JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Select data from a table using FastExport with parameter marker and verify FastExport sessions&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9336-99-1.aspx" cmImpressionSent="1"&gt;T20400JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Update a non-LOB column from a specific row, from a table, without using parameter markers for the update and predicate values&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9335-99-1.aspx" cmImpressionSent="1"&gt;T20401JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Update a non-LOB column from a specific row, from a table, using parameter markers for the update and predicate values&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9334-99-1.aspx" cmImpressionSent="1"&gt;T20402JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Update a LOB column from a specific row, from a table, without using parameter markers for the update and predicate values&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9333-99-1.aspx" cmImpressionSent="1"&gt;T20403JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Update a LOB column from a specific row, from a table, using parameter markers for the update and predicate values&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9332-99-1.aspx" cmImpressionSent="1"&gt;T20404JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Update a LOB column from a specific row, from a table, using the set methods for the update and predicate values&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9331-99-1.aspx" cmImpressionSent="1"&gt;T20500JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Delete a specific row, from a table, without using parameter markers for predicate values&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9330-99-1.aspx" cmImpressionSent="1"&gt;T20501JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Delete a specific row, from a table, using parameter markers for the predicate values&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9329-99-1.aspx" cmImpressionSent="1"&gt;T20600JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Create (if allowed) and execute a stored procedure and obtain its results (no LOB parameters)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9328-99-1.aspx" cmImpressionSent="1"&gt;T20601JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Create (if allowed) and execute a stored procedure and obtain its results (LOB parameters)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9327-99-1.aspx" cmImpressionSent="1"&gt;T20602JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Create (if allowed) and execute an external stored procedure and obtain its results&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9326-99-1.aspx" cmImpressionSent="1"&gt;T20603JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Install (if allowed) a jar file for sample Java Stored Procedures&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9325-99-1.aspx" cmImpressionSent="1"&gt;T20604JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Create (if allowed) and execute a Java Stored Procedure (no LOB parameters)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9324-99-1.aspx" cmImpressionSent="1"&gt;T20605JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Create (if allowed) and execute a Java Stored Procedure (with a LOB parameter)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9323-99-1.aspx" cmImpressionSent="1"&gt;T20606JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Create (if allowed) and execute a SQL stored procedure and retrieve its dynamic result set&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9322-99-1.aspx" cmImpressionSent="1"&gt;T20607JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Create (if allowed) and execute a Java stored procedure and retrieve its dynamic result set&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9321-99-1.aspx" cmImpressionSent="1"&gt;T20608JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Create (if allowed) and execute a Java stored procedure and retrieve its multiple dynamic result sets&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9320-99-1.aspx" cmImpressionSent="1"&gt;T20700JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Execute a multi-statement request that contains only non-SELECT statements, and obtain the results&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9319-99-1.aspx" cmImpressionSent="1"&gt;T20701JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Execute a multi-statement request that contains only SELECT statements, and obtain the results&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9318-99-1.aspx" cmImpressionSent="1"&gt;T20702JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Execute a multi-statement request that contains both SELECT and non-SELECT statements, and obtain the results&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9317-99-1.aspx" cmImpressionSent="1"&gt;T20703JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Execute a multi-statement INSERT request and display the generated keys&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9316-99-1.aspx" cmImpressionSent="1"&gt;T20704JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Execute a multi-statement batch INSERT request and display the generated keys&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9315-99-1.aspx" cmImpressionSent="1"&gt;T20705JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Execute a multi-statement request and make all results available simultaneously&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9314-99-1.aspx" cmImpressionSent="1"&gt;T20800JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Execute a macro that contains only non-SELECT statements, and obtain the results&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9313-99-1.aspx" cmImpressionSent="1"&gt;T20801JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Execute a macro that contains only SELECT statements, and obtain the results.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9312-99-1.aspx" cmImpressionSent="1"&gt;T20802JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Execute a macro that contains both SELECT and non-SELECT statements, and obtain the results.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9311-99-1.aspx" cmImpressionSent="1"&gt;T20900JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Obtain meta data about the client access product&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9310-99-1.aspx" cmImpressionSent="1"&gt;T20901JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Obtain a list of reserved words&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9309-99-1.aspx" cmImpressionSent="1"&gt;T20902JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Obtain a list of all supported SQL data types&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9308-99-1.aspx" cmImpressionSent="1"&gt;T20903JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Obtain a list of all table types&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9307-99-1.aspx" cmImpressionSent="1"&gt;T20904JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Obtain table index meta data&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9306-99-1.aspx" cmImpressionSent="1"&gt;T20905JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Obtain the names of all databases&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9305-99-1.aspx" cmImpressionSent="1"&gt;T20906JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Obtain the names of all tables in all databases&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9304-99-1.aspx" cmImpressionSent="1"&gt;T20907JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Obtain the names of all columns in all tables in all databases&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9303-99-1.aspx" cmImpressionSent="1"&gt;T20908JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Obtain the names of all procedures in all databases&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9302-99-1.aspx" cmImpressionSent="1"&gt;T20909JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Obtain the names of all procedure columns in all databases&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9301-99-1.aspx" cmImpressionSent="1"&gt;T20910JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Obtain a list of primary key columns for a specific table&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9300-99-1.aspx" cmImpressionSent="1"&gt;T20911JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Obtain an optimal set of columns that uniquely identifies a row for a specific table&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9299-99-1.aspx" cmImpressionSent="1"&gt;T20912JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Obtain a list of the user-defined types (UDTs) defined in a particular schema&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9298-99-1.aspx" cmImpressionSent="1"&gt;T20913JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Obtain a description of the given attribute of the given type for a user-defined type (UDT) that is available in the given schema and catalog&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9297-99-1.aspx" cmImpressionSent="1"&gt;T20914JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Demonstrate use of SET SESSION RATE and MONITOR SESSION.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9296-99-1.aspx" cmImpressionSent="1"&gt;T21000JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Search for a specific table type&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9295-99-1.aspx" cmImpressionSent="1"&gt;T21001JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Search for specific databases by name&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9294-99-1.aspx" cmImpressionSent="1"&gt;T21002JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Search for specific databases by wildcard characters&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9293-99-1.aspx" cmImpressionSent="1"&gt;T21003JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Search for specific tables by name (a table here can actually any object that Teradata thinks of as in the "TVM" category, such as stored procedures and UDFs)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9292-99-1.aspx" cmImpressionSent="1"&gt;T21004JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Search for specific tables by wildcard characters&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9291-99-1.aspx" cmImpressionSent="1"&gt;T21005JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Search for specific columns by name&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9290-99-1.aspx" cmImpressionSent="1"&gt;T21006JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Search for specific columns by wildcard characters&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9289-99-1.aspx" cmImpressionSent="1"&gt;T21007JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Search for specific procedures by name&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9288-99-1.aspx" cmImpressionSent="1"&gt;T21008JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Search for specific procedures by name by wildcard characters&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9287-99-1.aspx" cmImpressionSent="1"&gt;T21009JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Search for specific procedure columns by name&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9286-99-1.aspx" cmImpressionSent="1"&gt;T21010JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Search for specific procedure columns by wildcard characters&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;11&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9285-99-1.aspx" cmImpressionSent="1"&gt;T21100JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Getting and setting connection options&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;11&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9284-99-1.aspx" cmImpressionSent="1"&gt;T21101JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Getting and setting statement options&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;11&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9283-99-1.aspx" cmImpressionSent="1"&gt;T21102JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Use transaction isolation level TRANSACTION_READ_UNCOMMITTED&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;11&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9282-99-1.aspx" cmImpressionSent="1"&gt;T21104JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Use URL/DataSource Parameter NEW_PASSWORD to automatically handle Database Password expiration&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;11&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9281-99-1.aspx" cmImpressionSent="1"&gt;T21105JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Use URL/DataSource Parameter USEXVIEWS&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;12&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9278-99-1.aspx" cmImpressionSent="1"&gt;T21200JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Create and use JdbcRowSetImpl, given a connection URL, user, and password&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;12&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9277-99-1.aspx" cmImpressionSent="1"&gt;T21201JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Create and use JdbcRowSetImpl, given an existing connection&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;12&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9276-99-1.aspx" cmImpressionSent="1"&gt;T21202JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Create and use JdbcRowSetImpl, given an existing result set&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;13&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9275-99-1.aspx" cmImpressionSent="1"&gt;T21300JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Programmatically create a DataSource (see note below)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;13&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9274-99-1.aspx" cmImpressionSent="1"&gt;T21301JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Programmatically create a ConnectionPoolDataSource (see note below)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;13&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9273-99-1.aspx" cmImpressionSent="1"&gt;T21302JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Obtain a connection from a DataSource (see note below)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9270-99-1.aspx" cmImpressionSent="1"&gt;T21400JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Create and execute a User-Defined Function (UDF)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9269-99-1.aspx" cmImpressionSent="1"&gt;T21401JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Install a jar file for sample Java User Defined Function (JUDF)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9268-99-1.aspx" cmImpressionSent="1"&gt;T21402JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Create and execute a Java User Defined Function (JUDF)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9267-99-1.aspx" cmImpressionSent="1"&gt;T21500JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Perform Teradata-specific data type conversions&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;16&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9266-99-1.aspx" cmImpressionSent="1"&gt;T21600JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Use JDBC Escape Syntax&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;18&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9265-99-1.aspx" cmImpressionSent="1"&gt;T21800JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Use JDBC Updatable Result Set from a non-prepared Statement&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;18&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9264-99-1.aspx" cmImpressionSent="1"&gt;T21801JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Use JDBC Updatable Result Set from a PreparedStatement&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;18&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9263-99-1.aspx" cmImpressionSent="1"&gt;T21802JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Use JDBC Updatable Result Set from a CallableStatement&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;19&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9262-99-1.aspx" cmImpressionSent="1"&gt;T21900JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Use SET QUERY_BAND statement&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;19&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9261-99-1.aspx" cmImpressionSent="1"&gt;T21901JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Use SET QUERY_BAND statement with PROXYUSER&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;99&lt;/TD&gt;&lt;TD&gt;&lt;A href="http://www.teradata.com/DownloadCenter/Topic9258-99-1.aspx" cmImpressionSent="1"&gt;T29900JD.java&lt;/A&gt;&lt;/TD&gt;&lt;TD&gt;Clean up the example environment (user, database, tables, indexes)&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;A sample application to test a connection is also provided, &lt;A href="http://www.teradata.com/DownloadCenter/Topic9360-99-1.aspx" cmImpressionSent="1"&gt;sample1.java&lt;/A&gt;. &lt;/P&gt;&lt;HR&gt;&lt;P&gt;Use the following procedure to run the Teradata JDBC Driver Learning Examples: &lt;/P&gt;&lt;OL type=1&gt;&lt;LI&gt;&lt;P&gt;Download a supported JDK to your development platform.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Download and copy &lt;CODE&gt;samples.jar&lt;/CODE&gt;, &lt;CODE&gt;terajdbc4.jar&lt;/CODE&gt;, and &lt;CODE&gt;tdgssconfig.jar&lt;/CODE&gt; to your development platform. Note: &lt;CODE&gt;tdgssjava.jar&lt;/CODE&gt; is also required for TTU 8.2/Teradata JDBC Driver 3.4 or earlier releases. The commands below assume that all the files are copied to the same directory on your development platform.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Go to the directory where &lt;CODE&gt;samples.jar&lt;/CODE&gt; is located and unjar the sample applications:&lt;/P&gt;&lt;P&gt;&lt;CODE&gt;jar xvf samples.jar&lt;/CODE&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Modify the sample application &lt;CODE&gt;sample1.java&lt;/CODE&gt; with your Teradata Database information.&lt;/P&gt;&lt;P&gt;You need to change the following:&lt;/P&gt;&lt;UL type=disc&gt;&lt;LI&gt;Name of the Teradata Database.&lt;/LI&gt;&lt;LI&gt;Userid and password for the Teradata Database.&lt;/LI&gt;&lt;/UL&gt;&lt;BR&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Compile the modified sample application by entering the following:&lt;/P&gt;&lt;P&gt;&lt;CODE&gt;javac sample1.java&lt;/CODE&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Run the application on Windows by entering the following:&lt;/P&gt;&lt;P&gt;&lt;CODE&gt;java -classpath .;terajdbc4.jar;tdgssconfig.jar sample1&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;Or run the application on UNIX by entering the following:&lt;/P&gt;&lt;P&gt;&lt;CODE&gt;java -classpath .:terajdbc4.jar:tdgssconfig.jar sample1&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;With TTU 8.2/Teradata JDBC Driver 3.4 or earlier releases, run the application on Windows by entering the following:&lt;BR&gt;&lt;CODE&gt;java -classpath .;terajdbc4.jar;tdgssjava.jar;tdgssconfig.jar sample1&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;With TTU 8.2/Teradata JDBC Driver 3.4 or earlier releases, run the application on UNIX by entering the following:&lt;BR&gt;&lt;CODE&gt;java -classpath .:terajdbc4.jar:tdgssjava.jar:tdgssconfig.jar sample1&lt;/CODE&gt;&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;STRONG&gt;Note:&lt;/STRONG&gt; The "." entry, representing the current directory, on the classpath in the commands above is what enables Java to locate the &lt;CODE&gt;sample1.class&lt;/CODE&gt; file. &lt;/P&gt;&lt;P&gt;Repeat steps 4, 5, and 6 for each of the other Learning Example programs. &lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Note:&lt;/STRONG&gt; The Java Stored Procedure samples in Module 6 must be compiled and placed into the &lt;CODE&gt;SampleJXSP.jar&lt;/CODE&gt; file before they can be installed on the Teradata Database. The steps listed below assume that you have already unjarred the contents of &lt;CODE&gt;samples.jar&lt;/CODE&gt; &lt;/P&gt;&lt;OL type=1&gt;&lt;LI&gt;&lt;P&gt;Compile the Java Stored Procedure samples by entering the following:&lt;/P&gt;&lt;P&gt;&lt;CODE&gt;javac -d . BookInfo.java DeptJobInfo.java EmpInfo.java&lt;/CODE&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Jar the Java Stored Procedure samples by entering the following:&lt;/P&gt;&lt;P&gt;&lt;CODE&gt;jar cvf SampleJXSP.jar com/teradata/sample/BookInfo.class com/teradata/sample/DeptJobInfo.class com/teradata/sample/EmpInfo.class&lt;/CODE&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Modify the sample application &lt;CODE&gt;T20603JD.java&lt;/CODE&gt; with your Teradata Database information.&lt;/P&gt;&lt;P&gt;You need to change the following:&lt;/P&gt;&lt;UL type=disc&gt;&lt;LI&gt;Name of the Teradata Database.&lt;/LI&gt;&lt;LI&gt;Userid and password for the Teradata Database.&lt;/LI&gt;&lt;/UL&gt;&lt;BR&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Compile the modified sample application by entering the following:&lt;/P&gt;&lt;P&gt;&lt;CODE&gt;javac T20603JD.java&lt;/CODE&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Run the application on Windows by entering the following:&lt;/P&gt;&lt;P&gt;&lt;CODE&gt;java -classpath .;terajdbc4.jar;tdgssconfig.jar T20603JD&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;Or run the application on UNIX by entering the following:&lt;/P&gt;&lt;P&gt;&lt;CODE&gt;java -classpath .:terajdbc4.jar:tdgssconfig.jar T20603JD&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;As shown above, &lt;CODE&gt;tdgssjava.jar&lt;/CODE&gt; must also be listed on the classpath for TTU 8.2/Teradata JDBC Driver 3.4 or earlier releases.&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;STRONG&gt;Note:&lt;/STRONG&gt;The Java User Defined Function sample in module 14 must be compiled and placed into the &lt;CODE&gt;SampleJavaUDF.jar&lt;/CODE&gt; file before they are installed on the Teradata database. The steps listed below assume that you have already unjarred the contents of &lt;CODE&gt;samples.jar&lt;/CODE&gt; &lt;/P&gt;&lt;OL type=1&gt;&lt;LI&gt;&lt;P&gt;Compile the Java User Defined Function sample by entering the following:&lt;/P&gt;&lt;P&gt;&lt;CODE&gt;javac -d . JavaUDFClass.java&lt;/CODE&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Jar the Java User Defined Function sample by entering the following:&lt;/P&gt;&lt;P&gt;&lt;CODE&gt;jar cvf SampleJavaUDF.jar com/teradata/sample/JavaUDFClass.class&lt;/CODE&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Modify the sample application &lt;CODE&gt;T21401JD.java&lt;/CODE&gt; with your Teradata Database information.&lt;/P&gt;&lt;P&gt;You need to change the following:&lt;/P&gt;&lt;UL type=disc&gt;&lt;LI&gt;Name of the Teradata Database.&lt;/LI&gt;&lt;LI&gt;Userid and password for the Teradata Database.&lt;/LI&gt;&lt;/UL&gt;&lt;BR&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Compile the modified sample application by entering the following:&lt;/P&gt;&lt;P&gt;&lt;CODE&gt;javac T21401JD.java&lt;/CODE&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Run the application on Windows by entering the following:&lt;/P&gt;&lt;P&gt;&lt;CODE&gt;java -classpath .;terajdbc4.jar;tdgssconfig.jar T21401JD&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;Or run the application on UNIX by entering the following:&lt;/P&gt;&lt;P&gt;&lt;CODE&gt;java -classpath .:terajdbc4.jar:tdgssconfig.jar T21401JD&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;As shown above, &lt;CODE&gt;tdgssjava.jar&lt;/CODE&gt; must also be listed on the classpath for TTU 8.2/Teradata JDBC Driver 3.4 or earlier releases.&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;STRONG&gt;Note:&lt;/STRONG&gt; The Module 13 DataSource Learning Examples require the &lt;CODE&gt;com.sun.jndi.fscontext.RefFSContextFactory&lt;/CODE&gt; class, which is included in the &lt;CODE&gt;fscontext.jar&lt;/CODE&gt; file of the J2EE SDK. In order to run the Module 13 DataSource Learning Examples, you need to download and install the J2EE SDK from Sun and include &lt;CODE&gt;fscontext.jar&lt;/CODE&gt; and &lt;CODE&gt;providerutil.jar&lt;/CODE&gt; on your classpath.</description><pubDate>Thu, 04 Sep 2008 14:35:18 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>sample1.java</title><link>http://www.teradata.com/DownloadCenter/Topic9360-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       sample1.java&lt;br&gt;//  Purpose:    This sample application will:&lt;br&gt;//               - log on&lt;br&gt;//               - log off&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class sample1&lt;br&gt;{&lt;br&gt;    public static void main (String [] args)&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Teradata Type 4 JDBC Driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            // Load the Teradata Driver&lt;br&gt;            Class.forName ("com.teradata.jdbc.TeraDriver");&lt;br&gt;&lt;br&gt;            // Connect to the Teradata database specified in the URL&lt;br&gt;            // and submit userid and password.&lt;br&gt;            System.out.println("Connecting to " + url);&lt;br&gt;            Connection con = DriverManager.getConnection (url, "guest", "please");&lt;br&gt;            System.out.println("Established successful connection");&lt;br&gt;&lt;br&gt;            con.close();&lt;br&gt;            System.out.println("Disconnected");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;}&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:18:30 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20000JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9359-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20000JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata DDL.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Drop table employee if it exists&lt;br&gt;//                -  Create table employee with the following columns:&lt;br&gt;//                       empID (INTEGER),&lt;br&gt;//                       empName (VARCHAR(30)),&lt;br&gt;//                       empDept (VARCHAR(50)),&lt;br&gt;//                       empJob (VARCHAR(300))&lt;br&gt;//                -  Create two table indexes: unique and non-unique&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.Statement,&lt;br&gt;//            java.sql.Statement.executeUpdate&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//  Please note that the samples assume that the user access to the&lt;br&gt;//  is set up before the examples are executed. Thus, only table/index&lt;br&gt;//  creation is demonstrated.&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20000JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Statements used in table creation&lt;br&gt;        String sDropTbl = "DROP TABLE employee";&lt;br&gt;        String sCreateTbl = "CREATE TABLE employee (empID INTEGER NOT NULL, " +&lt;br&gt;            "empName VARCHAR(30) NOT NULL, empDept VARCHAR(50) NOT NULL, " +&lt;br&gt;            "empJob VARCHAR(300), PRIMARY KEY(empID))";&lt;br&gt;        // Statements used in index creation. Both unique and non-unique indexes&lt;br&gt;        // will be created. Please note that these may not result in optimal&lt;br&gt;        // performance.&lt;br&gt;        String sCreateIdx = "CREATE INDEX (empName) ON employee";&lt;br&gt;        String sCreateIdx2 = "CREATE UNIQUE INDEX (empName, empDept) ON employee";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20000JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;            // Creating a Connection object. A Connection represents a session&lt;br&gt;            // with a specific database. Within the context of a Connection,&lt;br&gt;            // SQL statements are executed and results are returned.&lt;br&gt;            // Creating a database connection with the given database URL,&lt;br&gt;            // user name, and password&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection.&lt;br&gt;                // A Statement object is used for executing a static SQL&lt;br&gt;                // statement and obtaining the results produced by the statement.&lt;br&gt;                // Statement.executeUpdate method is used to execute a SQL&lt;br&gt;                // INSERT, UPDATE or DELETE statement. SQL statements that&lt;br&gt;                // return nothing, such as DDL statements, can be executed&lt;br&gt;                // as well. The method will return the row count for INSERT,&lt;br&gt;                // UPDATE, or DELETE, or zero for statements that return nothing.&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    // Cleanup procedure:&lt;br&gt;                    // If the sample table already exists, drop it.&lt;br&gt;                    // Please note that the "no table present" exception&lt;br&gt;                    // will be raised if and only if no table "employee" already&lt;br&gt;                    // exists, as during the very first execution of this&lt;br&gt;                    // example. If a user wants to replicate this error multiple&lt;br&gt;                    // times, the table will have to be manually removed before&lt;br&gt;                    // running this example again in order for the error to&lt;br&gt;                    // occur.&lt;br&gt;                    try&lt;br&gt;                    {&lt;br&gt;                        System.out.println(" Dropping table if present: "&lt;br&gt;                                           + sDropTbl);&lt;br&gt;                        // Executing the drop table command&lt;br&gt;                        stmt.executeUpdate(sDropTbl);&lt;br&gt;                        System.out.println(" Table dropped.");&lt;br&gt;                    }&lt;br&gt;                    catch (SQLException ex)&lt;br&gt;                    {&lt;br&gt;                        // If the table did not exist, no drop is required.&lt;br&gt;                        // Ignore the raised "no table present" exception by&lt;br&gt;                        // printing out the error message and swallowing the&lt;br&gt;                        // exception. If multiple exceptions are chained&lt;br&gt;                        // together, display information on all of them.&lt;br&gt;                        // The following code will demonstrate some of the&lt;br&gt;                        // methods available for retrieving information about&lt;br&gt;                        // SQLExceptions, some inherited from the Throwable&lt;br&gt;                        // class. Please refer to JDBC API for other&lt;br&gt;                        // method descriptions.&lt;br&gt;&lt;br&gt;                        while (ex != null)&lt;br&gt;                        {&lt;br&gt;                            // Display a short description of the exception.&lt;br&gt;                            // Returns information generated by the toString()&lt;br&gt;                            // method: a concatenation of three strings:&lt;br&gt;                            // - Name of the actual class of this object&lt;br&gt;                            // - ": " (a colon and a space)&lt;br&gt;                            // - Result of the getMessage() method for this&lt;br&gt;                            //   object&lt;br&gt;                            System.out.println(" Drop table exception " +&lt;br&gt;                                               "ignored: " + ex);&lt;br&gt;                            // Display vendor-specific exception code for this&lt;br&gt;                            // SQLException object.&lt;br&gt;                            System.out.println(" Error code: "&lt;br&gt;                                               + ex.getErrorCode());&lt;br&gt;                            // Display the SQLState for this SQLException object.&lt;br&gt;                            System.out.println(" SQL State: "&lt;br&gt;                                               + ex.getSQLState());&lt;br&gt;                            // Display the detail message string, if any.&lt;br&gt;                            System.out.println(" Message: "&lt;br&gt;                                              + ex.getMessage());&lt;br&gt;                            // Display the localized description of this&lt;br&gt;                            // exception, if any. Default implementation returns&lt;br&gt;                            // the same result as getMessage().&lt;br&gt;                            System.out.println(" Localized Message: "&lt;br&gt;                                               + ex.getLocalizedMessage());&lt;br&gt;&lt;br&gt;                            // Print this error and its backtrace to the&lt;br&gt;                            // standard error stream.&lt;br&gt;                            System.out.println(" Stack Trace: ");&lt;br&gt;                            ex.printStackTrace();&lt;br&gt;&lt;br&gt;                            // Retrieve the exception chained to this&lt;br&gt;                            // SQLException object, if any.&lt;br&gt;                            ex = ex.getNextException();&lt;br&gt;                        }&lt;br&gt;&lt;br&gt;                        System.out.println(" Table could not be dropped." +&lt;br&gt;                                           " Execution will continue...");&lt;br&gt;                    }&lt;br&gt;&lt;br&gt;                    // Create the sample table&lt;br&gt;                    System.out.println(" Creating table: " + sCreateTbl);&lt;br&gt;                    stmt.executeUpdate(sCreateTbl);&lt;br&gt;                    System.out.println(" Sample table created. ");&lt;br&gt;                    // Create table indexes&lt;br&gt;                    System.out.println(" Creating table indexes: "&lt;br&gt;                                       + sCreateIdx + " " + sCreateIdx2);&lt;br&gt;                    stmt.executeUpdate(sCreateIdx);&lt;br&gt;                    stmt.executeUpdate(sCreateIdx2);&lt;br&gt;                    System.out.println(" Table indexes created.");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20000JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20000JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:14:32 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20001JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9358-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20001JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata DDL.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Drop table employee2 if it exists&lt;br&gt;//                -  Create table employee2 with the following columns:&lt;br&gt;//                       empID (INTEGER),&lt;br&gt;//                       empName (VARCHAR(30)),&lt;br&gt;//                       empDept (VARCHAR(50)),&lt;br&gt;//                       empJob (VARCHAR(300)),&lt;br&gt;//                       empResume (CLOB),&lt;br&gt;//                       empPhoto (BLOB),&lt;br&gt;//                       empRawPhotoData (BYTEINT)&lt;br&gt;//                -  Create two table indexes: unique and non-unique&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.Statement,&lt;br&gt;//            java.sql.Statement.executeUpdate&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20001JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Statements used in table creation&lt;br&gt;        String sDropTbl = "DROP TABLE employee2";&lt;br&gt;        String sCreateTbl = "CREATE TABLE employee2 (empID INTEGER NOT NULL, " +&lt;br&gt;                "empName VARCHAR(30) NOT NULL, empDept VARCHAR(50) NOT NULL, " +&lt;br&gt;                "empJob VARCHAR(300), empResume CLOB, empPhoto BLOB, " +&lt;br&gt;                "empRawPhotoData BYTEINT DEFAULT 0, " +&lt;br&gt;                "CHECK (empRawPhotoData = 0 OR empRawPhotoData = 1), " +&lt;br&gt;                "PRIMARY KEY(empID))";&lt;br&gt;&lt;br&gt;        // Statements used in index creation. Both unique and non-unique indexes&lt;br&gt;        // will be created. Please note that these may not result in optimal&lt;br&gt;        // performance.&lt;br&gt;        String sCreateIdx = "CREATE INDEX (empName) ON employee2";&lt;br&gt;        String sCreateIdx2 = "CREATE UNIQUE INDEX (empName, empDept) ON employee2";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20001JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection.&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    // Cleanup procedure:&lt;br&gt;                    // If the sample table already exists, drop it.&lt;br&gt;                    try&lt;br&gt;                    {&lt;br&gt;                        System.out.println(" Dropping table if present: "&lt;br&gt;                                           + sDropTbl);&lt;br&gt;                        stmt.executeUpdate(sDropTbl);&lt;br&gt;                        System.out.println(" Table dropped.");&lt;br&gt;                    }&lt;br&gt;                    catch (SQLException ex)&lt;br&gt;                    {&lt;br&gt;                        // If the table did not exist, no drop is required.&lt;br&gt;                        // Ignore the raised "no table present" exception by&lt;br&gt;                        // printing out the error message and swallowing the&lt;br&gt;                        // exception.&lt;br&gt;                        System.out.println(" Drop table exception ignored: "&lt;br&gt;                                           + ex);&lt;br&gt;                        System.out.println(" Table could not be dropped." +&lt;br&gt;                                           " Execution will continue...");&lt;br&gt;                    }&lt;br&gt;&lt;br&gt;                    // Create the sample table&lt;br&gt;                    System.out.println(" Creating table: " + sCreateTbl);&lt;br&gt;                    stmt.executeUpdate(sCreateTbl);&lt;br&gt;                    System.out.println(" Sample table created. ");&lt;br&gt;                    // Create table indexes&lt;br&gt;                    System.out.println(" Creating table indexes: "&lt;br&gt;                                       + sCreateIdx + " " + sCreateIdx2);&lt;br&gt;                    stmt.executeUpdate(sCreateIdx);&lt;br&gt;                    stmt.executeUpdate(sCreateIdx2);&lt;br&gt;                    System.out.println(" Table indexes created.");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20001JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20001JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:14:18 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20002JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9357-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2006-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20002JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata DDL.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Drop table identityColumn if it exists&lt;br&gt;//                -  Create table books with the following columns:&lt;br&gt;//                       ISBN     (VARCHAR(13)),&lt;br&gt;//                       title    (VARCHAR(100)),&lt;br&gt;//                       author   (VARCHAR(50)),&lt;br&gt;//                       pulisher (VARCHAR(100)),&lt;br&gt;//                       idCol    (INTEGER GENERATED ALWAYS AS IDENTITY)&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.Statement,&lt;br&gt;//            java.sql.Statement.executeUpdate&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20002JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Statements used in table creation&lt;br&gt;        String sDropTbl = "DROP TABLE books";&lt;br&gt;        String sCreateTbl =&lt;br&gt;            "CREATE TABLE books ( "+&lt;br&gt;            "ISBN          VARCHAR(13), "+&lt;br&gt;            "bookTitle     VARCHAR(100), "+&lt;br&gt;            "bookAuthor    VARCHAR(50) Default 'Unknown', "+&lt;br&gt;            "bookPublisher VARCHAR(100) Default 'Advanced Books', "+&lt;br&gt;            "identityCol   INTEGER GENERATED ALWAYS AS IDENTITY"+&lt;br&gt;            "              (START WITH 1 INCREMENT BY 1))";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20002JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection.&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    // Cleanup procedure:&lt;br&gt;                    // If the sample table already exists, drop it.&lt;br&gt;                    try&lt;br&gt;                    {&lt;br&gt;                        System.out.println(" Dropping table if present: "&lt;br&gt;                                           + sDropTbl);&lt;br&gt;                        stmt.executeUpdate(sDropTbl);&lt;br&gt;                        System.out.println(" Table dropped.");&lt;br&gt;                    }&lt;br&gt;                    catch (SQLException ex)&lt;br&gt;                    {&lt;br&gt;                        // If the table did not exist, no drop is required.&lt;br&gt;                        // Ignore the raised "no table present" exception by&lt;br&gt;                        // printing out the error message and swallowing the&lt;br&gt;                        // exception.&lt;br&gt;                        System.out.println(" Drop table exception ignored: "&lt;br&gt;                                           + ex);&lt;br&gt;                        System.out.println(" Table could not be dropped." +&lt;br&gt;                                           " Execution will continue...");&lt;br&gt;                    }&lt;br&gt;&lt;br&gt;                    // Create the sample table&lt;br&gt;                    System.out.println(" Creating table: " + sCreateTbl);&lt;br&gt;                    stmt.executeUpdate(sCreateTbl);&lt;br&gt;                    System.out.println(" Sample table created. ");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20002JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20002JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:13:53 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20003JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9356-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2006-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20003JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate how to set up global temporary table, which is&lt;br&gt;//              required for lob updates. Used by T20404 to update lob.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Drop global temporary table JdbcLobUpdate if it exists&lt;br&gt;//                -  Create global temporary table JdbcLobUpdate with the&lt;br&gt;//                   following columns:&lt;br&gt;//                   id INTEGER NOT NULL,&lt;br&gt;//                   bval BLOB,&lt;br&gt;//                   cval CLOB CHARACTER SET UNICODE&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.Statement,&lt;br&gt;//            java.sql.Statement.executeUpdate&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata 12&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20003JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Statements used in table creation&lt;br&gt;        String sDropTbl = "DROP TABLE JdbcLobUpdate";&lt;br&gt;        String sCreateTbl =&lt;br&gt;            " CREATE GLOBAL TEMPORARY TABLE JdbcLobUpdate("+&lt;br&gt;            "   id INTEGER NOT NULL,"+&lt;br&gt;            "   bval BLOB,"+&lt;br&gt;            "   cval CLOB CHARACTER SET UNICODE)"+&lt;br&gt;            " UNIQUE PRIMARY INDEX upi_JdbcLobUpdate(id)"+&lt;br&gt;            " ON COMMIT PRESERVE ROWS";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20003JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection.&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    // Cleanup procedure:&lt;br&gt;                    // If the sample table already exists, drop it.&lt;br&gt;                    try&lt;br&gt;                    {&lt;br&gt;                        System.out.println(" Dropping table if present: "&lt;br&gt;                                           + sDropTbl);&lt;br&gt;                        stmt.executeUpdate(sDropTbl);&lt;br&gt;                        System.out.println(" Table dropped.");&lt;br&gt;                    }&lt;br&gt;                    catch (SQLException ex)&lt;br&gt;                    {&lt;br&gt;                        // If the table did not exist, no drop is required.&lt;br&gt;                        // Ignore the raised "no table present" exception by&lt;br&gt;                        // printing out the error message and swallowing the&lt;br&gt;                        // exception.&lt;br&gt;                        System.out.println(" Drop table exception ignored: "&lt;br&gt;                                           + ex);&lt;br&gt;                        System.out.println(" Table could not be dropped." +&lt;br&gt;                                           " Execution will continue...");&lt;br&gt;                    }&lt;br&gt;&lt;br&gt;                    // Create the global temporary table&lt;br&gt;                    System.out.println(" Creating table: " + sCreateTbl);&lt;br&gt;                    stmt.executeUpdate(sCreateTbl);&lt;br&gt;                    System.out.println(" Sample table created. ");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20003JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20003JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:13:29 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20100JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9355-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20100JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate the JDBC API for retrieving statement&lt;br&gt;//              result set meta data.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Prepare an SQL statement&lt;br&gt;//                -  Obtain result set meta data&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection,&lt;br&gt;//            java.sql.Statement, java.sql.Statement.executeQuery,&lt;br&gt;//            java.sql.ResultSet, java.sql.ResultSet.getMetaData,&lt;br&gt;//            java.sql.ResultSetMetaData&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20100JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Query statement selecting all columns of the table. Using this query,&lt;br&gt;        // result set column metadata can be retrieved.&lt;br&gt;        String sSelAll = " SELECT * FROM employee";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20100JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    // Performing the SELECT query using Statement.executeQuery&lt;br&gt;                    // method. This method executes a SQL statement that returns&lt;br&gt;                    // a single ResultSet. Only one ResultSet per Statement can&lt;br&gt;                    // be open at any point in time. If the reading of one&lt;br&gt;                    // ResultSet is interleaved with the reading of another,&lt;br&gt;                    // each must have been generated by different Statements.&lt;br&gt;                    // A ResultSet provides access to a table of data generated&lt;br&gt;                    // by executing a Statement. The table rows are retrieved&lt;br&gt;                    // in sequence. Within a row, its column values can be&lt;br&gt;                    // accessed in any order.&lt;br&gt;                    ResultSet rset = stmt.executeQuery(sSelAll);&lt;br&gt;                    // Retrieve the properties of the ResultSet object.&lt;br&gt;                    // A ResultSetMetaData object can be used to determine&lt;br&gt;                    // the types and properties of the columns in a ResultSet.&lt;br&gt;                    ResultSetMetaData rsmd = rset.getMetaData();&lt;br&gt;&lt;br&gt;                    // Retrieve the number of columns returned&lt;br&gt;                    int colCount = rsmd.getColumnCount();&lt;br&gt;                    System.out.println(" This table has " + colCount + " columns.");&lt;br&gt;&lt;br&gt;                    // For every column, display it's information.&lt;br&gt;                    System.out.println(" Displaying column information: ");&lt;br&gt;&lt;br&gt;                    int i = 1;     // Initialize loop counter&lt;br&gt;                    while(i &amp;lt;= colCount)&lt;br&gt;                    {&lt;br&gt;                        // This code will demonstrate all available methods for&lt;br&gt;                        // retrieving column meta data.&lt;br&gt;&lt;br&gt;                        System.out.println();&lt;br&gt;                        System.out.println(" Column " + i);&lt;br&gt;                        System.out.println(" ------------ ");&lt;br&gt;                        // Display the suggested column title for use in&lt;br&gt;                        // printouts and displays&lt;br&gt;                        System.out.println(" Column label: "&lt;br&gt;                                           + rsmd.getColumnLabel(i));&lt;br&gt;                        // Display the column name&lt;br&gt;                        System.out.println(" Column name: "&lt;br&gt;                                           + rsmd.getColumnName(i));&lt;br&gt;                        // Display the SQL type of a column.&lt;br&gt;                        System.out.println(" Column type: "&lt;br&gt;                                           + rsmd.getColumnType(i));&lt;br&gt;                        // Display the type name of a column&lt;br&gt;                        System.out.println(" Column type name: "&lt;br&gt;                                           + rsmd.getColumnTypeName(i));&lt;br&gt;                        // Display the class name of a column - DR89445&lt;br&gt;                        System.out.println(" Column class name: "&lt;br&gt;                                           + rsmd.getColumnClassName(i));&lt;br&gt;                        // Display information on whether NULL values are allowed&lt;br&gt;                        System.out.println(" NULLs allowed: "&lt;br&gt;                                           + rsmd.isNullable(i));&lt;br&gt;                        // Display the normal maximum width of a column in characters.&lt;br&gt;                        System.out.println(" Maximum character width: "&lt;br&gt;                                           + rsmd.getColumnDisplaySize(i));&lt;br&gt;                        // Display precision: the number of decimal digits&lt;br&gt;                        // Note: default value is 0.&lt;br&gt;                        System.out.println(" Column precision"&lt;br&gt;                                           + " (number of decimal places): "&lt;br&gt;                                           + rsmd.getPrecision(i));&lt;br&gt;                        // Display the number of digits to the right of the&lt;br&gt;                        // decimal point. Note: default value is 0.&lt;br&gt;                        System.out.println(" Precision to the right of"&lt;br&gt;                                           + " the decimal point: "&lt;br&gt;                                           + rsmd.getScale(i));&lt;br&gt;                        // Increment column counter&lt;br&gt;                        i++;&lt;br&gt;                    }&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20100JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information. Note that there could be multiple&lt;br&gt;            // error objects chained together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20100JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:13:13 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20101JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9354-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20101JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate the JDBC API for retrieving statement&lt;br&gt;//              result set meta data.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Prepare an SQL statement&lt;br&gt;//                -  Obtain result set meta data&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection,&lt;br&gt;//            java.sql.Statement, java.sql.Statement.executeQuery,&lt;br&gt;//            java.sql.ResultSet, java.sql.ResultSet.getMetaData,&lt;br&gt;//            java.sql.ResultSetMetaData&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20101JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Query statement selecting all columns of the table. Using this query,&lt;br&gt;        // column metadata can be retrieved.&lt;br&gt;        String sSelAll = " SELECT * FROM employee2";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20101JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    // Create a ResultSet object representing the data&lt;br&gt;                    // resulting from the query&lt;br&gt;                    ResultSet rset = stmt.executeQuery(sSelAll);&lt;br&gt;                    // Create a ResultSetMetaData object that allows&lt;br&gt;                    // meta data information retrieval about the query result&lt;br&gt;                    ResultSetMetaData rsmd = rset.getMetaData();&lt;br&gt;&lt;br&gt;                    // Retrieve the number of columns returned&lt;br&gt;                    int colCount = rsmd.getColumnCount();&lt;br&gt;                    System.out.println(" This table has " + colCount + " columns.");&lt;br&gt;&lt;br&gt;                    // For every column, display it's information.&lt;br&gt;                    System.out.println(" Displaying column information: ");&lt;br&gt;&lt;br&gt;                    int i = 1;     // Initialize loop counter&lt;br&gt;                    while(i &amp;lt;= colCount)&lt;br&gt;                    {&lt;br&gt;                        // This code will demonstrate all available methods for&lt;br&gt;                        // retrieving column meta data.&lt;br&gt;&lt;br&gt;                        System.out.println();&lt;br&gt;                        System.out.println(" Column " + i);&lt;br&gt;                        System.out.println(" ------------ ");&lt;br&gt;                        // Display the suggested column title for use in&lt;br&gt;                        // printouts and displays&lt;br&gt;                        System.out.println(" Column label: "&lt;br&gt;                                           + rsmd.getColumnLabel(i));&lt;br&gt;                        // Display the column name&lt;br&gt;                        System.out.println(" Column name: "&lt;br&gt;                                           + rsmd.getColumnName(i));&lt;br&gt;                        // Display the SQL type of a column.&lt;br&gt;                        System.out.println(" Column type: "&lt;br&gt;                                           + rsmd.getColumnType(i));&lt;br&gt;                        // Display the type name of a column&lt;br&gt;                        System.out.println(" Column type name: "&lt;br&gt;                                           + rsmd.getColumnTypeName(i));&lt;br&gt;                        // Display information on whether NULL values are allowed&lt;br&gt;                        System.out.println(" NULLs allowed: "&lt;br&gt;                                           + rsmd.isNullable(i));&lt;br&gt;                        // Display the normal maximum width of a column in characters.&lt;br&gt;                        System.out.println(" Maximum character width: "&lt;br&gt;                                           + rsmd.getColumnDisplaySize(i));&lt;br&gt;                        // Display precision: the number of decimal digits&lt;br&gt;                        // Note: default value is 0.&lt;br&gt;                        System.out.println(" Column precision"&lt;br&gt;                                           + " (number of decimal places): "&lt;br&gt;                                           + rsmd.getPrecision(i));&lt;br&gt;                        // Display the number of digits to the right of the&lt;br&gt;                        // decimal point. Note: default value is 0.&lt;br&gt;                        System.out.println(" Precision to the right of"&lt;br&gt;                                           + " the decimal point: "&lt;br&gt;                                           + rsmd.getScale(i));&lt;br&gt;                        // Increment column counter&lt;br&gt;                        i++;&lt;br&gt;                    }&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20101JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information. Note that there could be multiple&lt;br&gt;            // error objects chained together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20101JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:12:58 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20200JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9353-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20200JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate processing of basic INSERT statements&lt;br&gt;//              without using parameter markers.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Perform a series of insertions into the table&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection,&lt;br&gt;//            java.sql.Statement, java.sql.Statement.executeUpdate&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20200JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Preparing various insertion commands&lt;br&gt;        String[] sInsert =&lt;br&gt;            {"INSERT INTO employee VALUES(100001, 'Mike Smith',"&lt;br&gt;            + " 'Product Development', 'QA engineer responsible for planning,"&lt;br&gt;            + " developing and maintaining frameworks for test automation')",&lt;br&gt;            "INSERT INTO employee VALUES(100002, 'James Parker',"&lt;br&gt;            + " 'Marketing', 'Manager coordinating international sales')",&lt;br&gt;            "INSERT INTO employee VALUES(100003, 'Mary Jones',"&lt;br&gt;            + " 'Product Development', 'Software engineer responsible for"&lt;br&gt;            + " regression test plans')",&lt;br&gt;            "INSERT INTO employee VALUES(100004, 'John Walker',"&lt;br&gt;            + " 'Human Resources', 'Manager responsible for employee"&lt;br&gt;            + " benefits programs')",&lt;br&gt;            "INSERT INTO employee VALUES(100005, 'Steven Brown',"&lt;br&gt;            + " 'Customer Service', 'Software engineer providing technical"&lt;br&gt;            + " applications support')",&lt;br&gt;            "INSERT INTO employee VALUES(100006, 'Susan Young',"&lt;br&gt;            + " 'Product Development', 'QA engineer overlooking overseas testing')",&lt;br&gt;            "INSERT INTO employee VALUES(100007, 'Brian Lee', 'Marketing',"&lt;br&gt;            + " 'Team leader managing market research')"};&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20200JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    int RowCount;     // Return value for row count&lt;br&gt;&lt;br&gt;                    // The following code will demonstrate performing a series&lt;br&gt;                    // of insertions into the table using the SQL INSERT&lt;br&gt;                    // statements. Numerous inserts are performed here to aid in&lt;br&gt;                    // subsequent examples.&lt;br&gt;&lt;br&gt;                    // Retrieve the number of insertions to be performed&lt;br&gt;                    int len = sInsert.length;&lt;br&gt;                    // Perform insertions and display row counts as returned&lt;br&gt;                    // by the Statement.executeUpdate method.&lt;br&gt;                    for (int i = 0; i &amp;lt; len; i++)&lt;br&gt;                    {&lt;br&gt;                        System.out.println(" Attempting an insertion: "&lt;br&gt;                                           + sInsert[i]);&lt;br&gt;                        RowCount = stmt.executeUpdate(sInsert[i]);&lt;br&gt;                        System.out.println(" Insertion completed successfully: "&lt;br&gt;                                           + RowCount + " row(s) inserted.");&lt;br&gt;                    }&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20200JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20200JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:11:12 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20201JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9352-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20201JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate processing of basic INSERT statements&lt;br&gt;//              using parameter markers.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Perform a insertion into the table using&lt;br&gt;//                   parameter markers for the values&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.PreparedStatement,&lt;br&gt;//            java.sql.PreparedStatement.executeUpdate&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20201JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Strings representing a prepared statement and its parameter values,&lt;br&gt;        // respectively&lt;br&gt;        String sInsert = "INSERT INTO employee VALUES(?,?,?,?)";&lt;br&gt;        int Id = 100008;&lt;br&gt;        String Name = "Robert Martinez";&lt;br&gt;        String Department = "Human Resources";&lt;br&gt;        String Description = "Recruiter in charge of university relations";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20201JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a PreparedStatement object from an active&lt;br&gt;                // connection. A PreparedStatement is an object that represents&lt;br&gt;                // a precompiled SQL statement and allows for efficient&lt;br&gt;                // execution of the precompiled SQL statement multiple times.&lt;br&gt;                System.out.println(" Preparing this SQL statement for execution: "&lt;br&gt;                                   + sInsert);&lt;br&gt;                PreparedStatement pstmt = con.prepareStatement(sInsert);&lt;br&gt;                System.out.println(" Prepared statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    int RowCount;     // Return value for row count&lt;br&gt;&lt;br&gt;                    // The following code will perform an INSERT into the table&lt;br&gt;                    // using a prepared statement using the&lt;br&gt;                    // PreparedStatement.executeUpdate method to execute SQL.&lt;br&gt;                    System.out.println(" Attempting an insertion...");&lt;br&gt;&lt;br&gt;                    // Set parameter values indicated by ? (dynamic update)&lt;br&gt;                    // PreparedStatement.setInt and PreparedStatement.setString&lt;br&gt;                    // methods will be demonstrated. Please refer to the&lt;br&gt;                    // supporting driver documentation for the full list of&lt;br&gt;                    // methods, their implementations, and their return values.&lt;br&gt;                    System.out.println(" Using setInt() and setString() to " +&lt;br&gt;                                       "assign values to parameter markers:");&lt;br&gt;                    pstmt.setInt(1, Id);&lt;br&gt;                    System.out.println(" FIRST ? set to: " + Id);&lt;br&gt;                    pstmt.setString(2, Name);&lt;br&gt;                    System.out.println(" SECOND ? set to: " + Name);&lt;br&gt;                    pstmt.setString(3, Department);&lt;br&gt;                    System.out.println(" THIRD ? set to: " + Department);&lt;br&gt;                    pstmt.setString(4, Description);&lt;br&gt;                    System.out.println(" FOURTH ? set to: " + Description);&lt;br&gt;&lt;br&gt;                    // Once all of the parameter values have been set, call&lt;br&gt;                    // executeUpdate to execute the now complete SQL command.&lt;br&gt;                    // Display row count returned by the method.&lt;br&gt;                    RowCount = pstmt.executeUpdate();&lt;br&gt;                    System.out.println(" Insertion completed successfully: "&lt;br&gt;                                       + RowCount + " row(s) inserted.");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    pstmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20201JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20201JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:10:56 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20202JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9351-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20202JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate insertion of LOB values without using&lt;br&gt;//              parameter markers.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Perform an insertion into the table&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection,&lt;br&gt;//            java.sql.Statement, java.sql.Statement.executeUpdate&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20202JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // String representing a SQL INSERT statement with LOB parameters.&lt;br&gt;        // Please note that there are two ways of inserting LOB values:&lt;br&gt;        // using binary/character input streams and using SQL binary/character&lt;br&gt;        // literals. Please refer to the Teradata SQL manual for the complete&lt;br&gt;        // description of SQL literals.&lt;br&gt;        // For the CLOB value, a character string will be used. For the BLOB&lt;br&gt;        // value, a hexadecimal literal will be used, representing binary data.&lt;br&gt;        // Once the BLOB/CLOB values are in the correct format, the statement&lt;br&gt;        // is executed using the Statement.executeUpdate method.&lt;br&gt;        // Please note that the empRawPhotoData is set in this case to&lt;br&gt;        // denote the insertion of BLOB data using hexadecimal literals.&lt;br&gt;        String sInsert = "INSERT INTO employee2 VALUES (100001, 'Mike Smith',"&lt;br&gt;            + " 'Product Development', 'QA engineer responsible for planning,"&lt;br&gt;            + " developing and maintaining frameworks for test automation',"&lt;br&gt;            + " 'Resume of Mike Smith.',"&lt;br&gt;            + " '800FA01004480000D8FFE00FDB0040104A464946000101104A46FFDB'XB, 1)";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20202JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(&lt;br&gt;                  " Attempting to connect to Teradata via JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                // Perform an insertion into the table&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    int RowCount;     // Return value for row count&lt;br&gt;&lt;br&gt;                    // The following code will perform an INSERT into the table&lt;br&gt;                    // and display the update count.&lt;br&gt;                    System.out.println(" Attempting an insertion: " + sInsert);&lt;br&gt;                    RowCount = stmt.executeUpdate(sInsert);&lt;br&gt;                    System.out.println(" Insertion completed successfully: "&lt;br&gt;                                           + RowCount + " row(s) inserted.");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20202JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20202JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:10:21 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20203JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9350-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20203JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate insertion of LOB values using parameter&lt;br&gt;//              markers.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Perform a series of insertions into the table using&lt;br&gt;//                   parameter markers for the values&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.PreparedStatement,&lt;br&gt;//            java.sql.PreparedStatement.executeUpdate&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;import java.io.*;&lt;br&gt;&lt;br&gt;public class T20203JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException, FileNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Strings representing a prepared statement and its parameter values,&lt;br&gt;        // respectively&lt;br&gt;        String sInsert = "INSERT INTO employee2 VALUES(?,?,?,?,?,?,?)";&lt;br&gt;        int[] Id = {100002, 100003, 100004, 100005, 100006, 100007, 100008};&lt;br&gt;        String[] Name = {"James Parker", "Mary Jones", "John Walker",&lt;br&gt;            "Steven Brown", "Susan Young", "Brian Lee", "Robert Martinez"};&lt;br&gt;        String[] Department =&lt;br&gt;            {"Marketing", "Product Development", "Human Resources",&lt;br&gt;            "Customer Service", "Product Development", "Marketing",&lt;br&gt;            "Human Resources"};&lt;br&gt;        String[] Description =&lt;br&gt;            {"Manager coordinating international sales",&lt;br&gt;            "Software engineer responsible for regression test plans",&lt;br&gt;            "Manager responsible for employee benefits programs",&lt;br&gt;            "Software engineer providing technical applications support",&lt;br&gt;            "QA engineer overlooking overseas testing",&lt;br&gt;            "Team leader managing market research",&lt;br&gt;            "Recruiter in charge of university relations"};&lt;br&gt;        // Flag setting signaling that the BLOB data was inserted by&lt;br&gt;        // streaming data out of a file&lt;br&gt;        byte isRaw = 0;&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20203JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(&lt;br&gt;                  " Attempting to connect to Teradata via JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                System.out.println(" Preparing this SQL statement for execution: "&lt;br&gt;                                   + sInsert);&lt;br&gt;                // Creating a prepared statement object from an active connection&lt;br&gt;                PreparedStatement pstmt = con.prepareStatement(sInsert);&lt;br&gt;                System.out.println(" Prepared statement object created.");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    int RowCount;     // Return value for row count&lt;br&gt;&lt;br&gt;                    // The following code will perform a series of INSERTions&lt;br&gt;                    // into the table using a prepared statement.&lt;br&gt;&lt;br&gt;                    // Retrieving the number of insertions by using ID field&lt;br&gt;                    // to count, since ID can never be null&lt;br&gt;                    int len = Id.length;&lt;br&gt;&lt;br&gt;                    for (int i = 0; i &amp;lt; len; i++)&lt;br&gt;                    {&lt;br&gt;                        System.out.println(" Attempting an insertion...");&lt;br&gt;&lt;br&gt;                        // Set parameter values indicated by ? (dynamic update)&lt;br&gt;                        // PreparedStatement.setInt, PreparedStatement.setString&lt;br&gt;                        // PreparedStatement.setAsciiStream, and&lt;br&gt;                        // PreparedStatement.setBinaryStream methods will be&lt;br&gt;                        // demonstrated. Please refer to the supporting driver&lt;br&gt;                        // documentation for the full list of methods,&lt;br&gt;                        // their implementations, and their return values.&lt;br&gt;&lt;br&gt;                        System.out.println(&lt;br&gt;                            " Using setInt() and setString() to assign"&lt;br&gt;                            + " values to parameter markers 1-4:");&lt;br&gt;                        // Set employee ID number&lt;br&gt;                        pstmt.setInt(1, Id[i]);&lt;br&gt;                        System.out.println(" FIRST ? set to: " + Id[i]);&lt;br&gt;                        // Set employee name&lt;br&gt;                        pstmt.setString(2, Name[i]);&lt;br&gt;                        System.out.println(" SECOND ? set to: " + Name[i]);&lt;br&gt;                        // Set employee department name&lt;br&gt;                        pstmt.setString(3, Department[i]);&lt;br&gt;                        System.out.println(" THIRD ? set to: " + Department[i]);&lt;br&gt;                        // Set job description&lt;br&gt;                        pstmt.setString(4, Description[i]);&lt;br&gt;                        System.out.println(" FOURTH ? set to: " + Description[i]);&lt;br&gt;&lt;br&gt;                        System.out.println(&lt;br&gt;                            " Using setAsciiStream() and setBinaryStream()"&lt;br&gt;                            + " to assign values to parameter markers 5-6:");&lt;br&gt;                        // Create a new file object to enable access to the&lt;br&gt;                        // resume document&lt;br&gt;                        File res = new File(Id[i] + ".txt");&lt;br&gt;                        // Create a new file input stream object to enable&lt;br&gt;                        // reading of data from the text file&lt;br&gt;                        FileInputStream empResume = new FileInputStream(res);&lt;br&gt;                        // Set employee resume CLOB: set the parameter value&lt;br&gt;                        // to the input stream above, which will have the&lt;br&gt;                        // specified number of bytes.&lt;br&gt;                        pstmt.setAsciiStream(5, empResume, (int)(res.length()));&lt;br&gt;                        System.out.println(" FIFTH ? set to the file: " +&lt;br&gt;                                           Id[i] + ".txt");&lt;br&gt;&lt;br&gt;                        // Create a new file object to enable access to the&lt;br&gt;                        // photograph&lt;br&gt;                        File photo = new File(Id[i] + ".jpg");&lt;br&gt;                        // Create a new file input stream object to enable&lt;br&gt;                        // reading of data from the binary file&lt;br&gt;                        FileInputStream empPhoto = new FileInputStream(photo);&lt;br&gt;                        // Set employee photo BLOB: set the parameter value&lt;br&gt;                        // to the input stream above, which will have the&lt;br&gt;                        // specified number of bytes.&lt;br&gt;                        pstmt.setBinaryStream(6, empPhoto, (int)(photo.length()));&lt;br&gt;                        System.out.println(" SIXTH ? set to the file: " +&lt;br&gt;                                           Id[i] + ".jpg");&lt;br&gt;                        // Set insertion type flag, 0 for insertion from a file&lt;br&gt;                        pstmt.setByte(7, isRaw);&lt;br&gt;                        System.out.println(" SEVENTH ? set to : " + isRaw);&lt;br&gt;&lt;br&gt;                        // Call without parameter to execute the SQL command&lt;br&gt;                        RowCount = pstmt.executeUpdate();&lt;br&gt;                        System.out.println(" Insertion completed successfully: "&lt;br&gt;                            + RowCount + " row(s) inserted.");&lt;br&gt;                    }&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    pstmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20203JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20203JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:10:08 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20204JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9349-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2006-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20204JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate the retrievel of auto-generated keys&lt;br&gt;//              after an INSERT query.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Insert a row into table books indicating the&lt;br&gt;//                   generated key flag RETURN_GENERATED_KEYS&lt;br&gt;//                -  Retrieve the generated key&lt;br&gt;//                -  Display the generated keys result set&lt;br&gt;//                -  Insert a row into table books indicating the&lt;br&gt;//                   column names that will be made available&lt;br&gt;//                -  Retrieve the generated keys&lt;br&gt;//                -  Display the generated keys result set&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.PreparedStatement,&lt;br&gt;//            java.sql.PreparedStatement.executeUpdate,&lt;br&gt;//            java.sql.PreparedStatement.getGeneratedKeys,&lt;br&gt;//            java.sql.ResultSet, java.sql.ResultSet.getMetaData,&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20204JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create and drop tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Creation of the SQL INSERT statement and its parameter value&lt;br&gt;        String sInsertQuery = "INSERT into books "&lt;br&gt;                       + " (ISBN, bookTitle, bookAuthor, bookPublisher)"&lt;br&gt;                       + " values(?, ?, ?, ?)";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20204JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                System.out.println(" Execute a PreparedStatement request "+&lt;br&gt;                                   "with the flag GET_GENERATED_KEYS. ");&lt;br&gt;                // Execute a PreparedStatement request and retrieve the&lt;br&gt;                // identity column&lt;br&gt;                requestSingleColumn(con, sInsertQuery);&lt;br&gt;&lt;br&gt;                System.out.println(" Execute a PreparedStatement request "+&lt;br&gt;                                   "indicating which column names should be "+&lt;br&gt;                                   "made available for retrieval. ");&lt;br&gt;                // Execute a PreparedStatement batch request and retrieve the&lt;br&gt;                // specified columns using getGeneratedKeys&lt;br&gt;                requestMultipleColumns(con, sInsertQuery);&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20204JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;&lt;br&gt;    static void requestSingleColumn(Connection con, String sInsertQuery)&lt;br&gt;        throws SQLException&lt;br&gt;    {&lt;br&gt;        System.out.println(" Preparing this SQL statement for execution: "&lt;br&gt;                           + sInsertQuery);&lt;br&gt;        // Creating a prepared statement object from an active connection&lt;br&gt;        // and indicating that the generated key will be returned.&lt;br&gt;        PreparedStatement pstmt = con.prepareStatement(sInsertQuery,&lt;br&gt;            Statement.RETURN_GENERATED_KEYS);&lt;br&gt;        System.out.println(" Prepared statement object created. ");&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            // Set parameter values indicated by ? (dynamic update)&lt;br&gt;            System.out.println(" Using setString() to bind value to " +&lt;br&gt;                               "the parameter marker:");&lt;br&gt;            pstmt.setString(1, "1-57345-785-X");&lt;br&gt;            pstmt.setString(2, "SQL for Beginners");&lt;br&gt;            pstmt.setString(3, "Smith, John");&lt;br&gt;            pstmt.setString(4, "Able Books");&lt;br&gt;&lt;br&gt;            // The following code will perform an INSERT query&lt;br&gt;            // on the table.&lt;br&gt;&lt;br&gt;            System.out.println(" Executing query. ");&lt;br&gt;            // Submit a query, returning an update count&lt;br&gt;            int updateCount = pstmt.executeUpdate();&lt;br&gt;            System.out.println(" Obtained update count: " + updateCount);&lt;br&gt;&lt;br&gt;            System.out.println(" Retrieving generated keys.");&lt;br&gt;            // Retrieve generated key&lt;br&gt;            ResultSet rs = pstmt.getGeneratedKeys();&lt;br&gt;            // set result set to the first row&lt;br&gt;            rs.next();&lt;br&gt;&lt;br&gt;            // Extract and display generated keys&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println(" DISPLAYING GENERATED KEY:");&lt;br&gt;            System.out.println(" ---------------------------");&lt;br&gt;&lt;br&gt;            // retrieve and display identity column value&lt;br&gt;            int identityCol = rs.getInt(1);&lt;br&gt;            System.out.println(" Identity Column Value: " + identityCol);&lt;br&gt;        }&lt;br&gt;        finally&lt;br&gt;        {&lt;br&gt;            // Close the statement&lt;br&gt;            pstmt.close();&lt;br&gt;            System.out.println(" PreparedStatement object closed.");&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;&lt;br&gt;    static void requestMultipleColumns(Connection con, String sInsertQuery)&lt;br&gt;        throws SQLException&lt;br&gt;    {&lt;br&gt;        // Specifying the column names that should be returned in a String array&lt;br&gt;        String columnNames[] = {"bookTitle", "bookAuthor", "identityCol"};&lt;br&gt;&lt;br&gt;        System.out.println(" Preparing this SQL statement for execution: "&lt;br&gt;                           + sInsertQuery);&lt;br&gt;&lt;br&gt;        // Creating a prepared statement object from an active connection&lt;br&gt;        // and passing the columnNames, which is a list of columns to be&lt;br&gt;        // returned from getGeneratedKeys&lt;br&gt;        PreparedStatement pstmt = con.prepareStatement(sInsertQuery,&lt;br&gt;                                                       columnNames);&lt;br&gt;        System.out.println(" Prepared statement object created. ");&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            // Set parameter values indicated by ? (dynamic update)&lt;br&gt;            System.out.println(" Using setString() to bind value to " +&lt;br&gt;                               "the parameter marker. ");&lt;br&gt;            pstmt.setString(1, "1-68345-785-X");&lt;br&gt;            pstmt.setString(2, "Advanced SQL");&lt;br&gt;            pstmt.setString(3, "White, Joseph");&lt;br&gt;            pstmt.setString(4, "Able Books");&lt;br&gt;&lt;br&gt;            // The following code will perform an INSERT query&lt;br&gt;            // on the table.&lt;br&gt;&lt;br&gt;            System.out.println(" Executing query. ");&lt;br&gt;            // Submit a query, returning an update count&lt;br&gt;            int updateCount = pstmt.executeUpdate();&lt;br&gt;            System.out.println(" Obtained update count: " + updateCount);&lt;br&gt;&lt;br&gt;            System.out.println(" Retrieving generated keys.");&lt;br&gt;            // Retrieve generated key&lt;br&gt;            ResultSet rs = pstmt.getGeneratedKeys();&lt;br&gt;            // set the result set to the first row&lt;br&gt;            rs.next();&lt;br&gt;&lt;br&gt;            // Extract and display generated keys&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println(" DISPLAYING GENERATED KEY:");&lt;br&gt;            System.out.println(" ---------------------------");&lt;br&gt;&lt;br&gt;            // retrieve and display specified column value&lt;br&gt;            String bookTitle = rs.getString(1);&lt;br&gt;            String bookAuthor = rs.getString(2);&lt;br&gt;            int identityCol = rs.getInt(3);&lt;br&gt;            System.out.println(" Book Title :           " + bookTitle);&lt;br&gt;            System.out.println(" Book Author:           " + bookAuthor);&lt;br&gt;            System.out.println(" Identity Column Value: " + identityCol);&lt;br&gt;        }&lt;br&gt;        finally&lt;br&gt;        {&lt;br&gt;            // Close the statement&lt;br&gt;            pstmt.close();&lt;br&gt;            System.out.println(" PreparedStatement object closed.");&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;} // End class T20204JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:09:55 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20205JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9348-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2006-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20205JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate FastLoad of data rows with auto-commit true.&lt;br&gt;//&lt;br&gt;//     The program will:&lt;br&gt;//       -  Connect as user guest/please&lt;br&gt;//       -  Insert data rows into a table using FastLoad with auto-commit true&lt;br&gt;//       -  Verify the updateCount returned by executeBatch&lt;br&gt;//       -  Verify that no SQLWarning has occurred&lt;br&gt;//       -  Verify that the correct number of data rows were inserted (fastloaded)&lt;br&gt;//       -  Disconnect&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.PreparedStatement,&lt;br&gt;//            java.sql.PreparedStatement.executeBatch&lt;br&gt;//&lt;br&gt;//  Version: new sample&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.io.*;&lt;br&gt;import java.sql.*;&lt;br&gt;import java.util.Arrays;&lt;br&gt;&lt;br&gt;/**&lt;br&gt; * FastLoad with auto-commit true.&lt;br&gt; */&lt;br&gt;public class T20205JD {&lt;br&gt;    // Name of the user able to create and drop tables&lt;br&gt;    public static String user = "guest";&lt;br&gt;    public static String password = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8,TYPE=FASTLOAD";&lt;br&gt;&lt;br&gt;        // Size of CHAR column&lt;br&gt;        int strLen = 100;&lt;br&gt;&lt;br&gt;        // Name of sample table&lt;br&gt;        String tableName = "T20205JD";&lt;br&gt;&lt;br&gt;        // CREATE TABLE statement&lt;br&gt;        String createTable = "CREATE TABLE " + tableName + "," +&lt;br&gt;                                "NO FALLBACK," +&lt;br&gt;                                "NO BEFORE JOURNAL," +&lt;br&gt;                                "NO AFTER JOURNAL," +&lt;br&gt;                                "CHECKSUM = DEFAULT" +&lt;br&gt;                                "(" +&lt;br&gt;                                " L_INDEX INTEGER NOT NULL," +&lt;br&gt;                                " L_TEXT CHAR(" + strLen + ")" +&lt;br&gt;                                " CHARACTER SET UNICODE NOT CASESPECIFIC" +&lt;br&gt;                                ") " +&lt;br&gt;                              "UNIQUE PRIMARY INDEX ( L_INDEX&amp;nbsp";&lt;br&gt;&lt;br&gt;        // INSERT statement&lt;br&gt;        String insertTable = "INSERT INTO " + tableName + " VALUES(?,?)";&lt;br&gt;&lt;br&gt;        // SELECT statement&lt;br&gt;        String selectTable = "SELECT COUNT(*) FROM " + tableName;&lt;br&gt;&lt;br&gt;        try {&lt;br&gt;            System.out.println("Sample T20205JD starting: " + new java.util.Date());&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver...");&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" Teradata JDBC driver loaded.");&lt;br&gt;&lt;br&gt;            System.out.println(" Attempting to connect to Teradata...");&lt;br&gt;            Connection con = DriverManager.getConnection(url, user, password);&lt;br&gt;            System.out.println(" Connection to Teradata established.");&lt;br&gt;&lt;br&gt;            try {&lt;br&gt;                System.out.println(" Creating a Statement object...");&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Created a Statement object.");&lt;br&gt;&lt;br&gt;                try {&lt;br&gt;                    try {&lt;br&gt;                        stmt.executeUpdate("DROP TABLE " + tableName);&lt;br&gt;                    } catch (SQLException e) {&lt;br&gt;                        // Do nothing because the table likely does not exist yet!&lt;br&gt;                        System.out.println(" Drop table exception ignored: " + e);&lt;br&gt;                    }&lt;br&gt;                    System.out.println(" Creating table " + tableName + "...");&lt;br&gt;                    stmt.executeUpdate(createTable);&lt;br&gt;                    System.out.println(" Created table " + tableName + ".");&lt;br&gt;&lt;br&gt;                    System.out.println(" Creating a PreparedStatement object...");&lt;br&gt;                    PreparedStatement pstmt = con.prepareStatement(insertTable);&lt;br&gt;                    System.out.println(" Created a PreparedStatement object...");&lt;br&gt;&lt;br&gt;                    try {&lt;br&gt;                        int numRows = 0;&lt;br&gt;                        int batchCount = 0;&lt;br&gt;                        char[] charBuf = new char[strLen];&lt;br&gt;                        Arrays.fill(charBuf, 'a');&lt;br&gt;                        String strBuf = new String(charBuf);&lt;br&gt;&lt;br&gt;                        // Note that auto-commit is true by default,&lt;br&gt;                        // thus an auto-commit mode of 'true' is assumed here!&lt;br&gt;&lt;br&gt;                        System.out.println(" Binding data rows...");&lt;br&gt;                        pstmt.setInt(1, 1);&lt;br&gt;                        pstmt.setString(2, strBuf);&lt;br&gt;                        pstmt.addBatch();&lt;br&gt;                        batchCount++;&lt;br&gt;&lt;br&gt;                        pstmt.setInt(1, 2);&lt;br&gt;                        pstmt.setString(2, strBuf);&lt;br&gt;                        pstmt.addBatch();&lt;br&gt;                        batchCount++;&lt;br&gt;&lt;br&gt;                        System.out.println(" Inserting data rows...");&lt;br&gt;                        int updateCounts[] = pstmt.executeBatch();&lt;br&gt;                        if (updateCounts == null) {&lt;br&gt;                            System.out.println(&lt;br&gt;                                "ERROR: A null update count was returned!");&lt;br&gt;                        } else {&lt;br&gt;                            if (updateCounts.length != batchCount) {&lt;br&gt;                                System.out.println(&lt;br&gt;                                    "ERROR: The update count does not match the"&lt;br&gt;                                    + " number of rows batched: expected "&lt;br&gt;                                    + batchCount + ", got " + updateCounts.length);&lt;br&gt;                            }&lt;br&gt;                            for (int i = 0; i &amp;lt; updateCounts.length; i++) {&lt;br&gt;                                if (updateCounts[i] != 1) {&lt;br&gt;                                    System.out.println(&lt;br&gt;                                        "ERROR: The update count for row " + (i+1)&lt;br&gt;                                        + " failed: expected 1, got "&lt;br&gt;                                        + updateCounts[i]);&lt;br&gt;                                }&lt;br&gt;                            }&lt;br&gt;                            numRows += updateCounts.length;&lt;br&gt;                        }&lt;br&gt;&lt;br&gt;                        // Note that at this point no further executeBatch is&lt;br&gt;                        // permitted unless all rows in the destination table&lt;br&gt;                        // are deleted.&lt;br&gt;&lt;br&gt;                        SQLWarning w = pstmt.getWarnings();&lt;br&gt;                        // Note that there could be multiple SQLWarning objects&lt;br&gt;                        // chained together.&lt;br&gt;                        while (w != null) {&lt;br&gt;                            System.out.println("*** SQLWarning caught ***");&lt;br&gt;                            StringWriter sw = new StringWriter();&lt;br&gt;                            w.printStackTrace(new PrintWriter(sw, true));&lt;br&gt;                            System.out.println("SQL State = " + w.getSQLState()&lt;br&gt;                                + ", Error Code = " + w.getErrorCode() +&lt;br&gt;                                "" + sw.toString());&lt;br&gt;                            w = w.getNextWarning();&lt;br&gt;                        }&lt;br&gt;&lt;br&gt;                        System.out.println(" Selecting data rows...");&lt;br&gt;                        ResultSet rs = stmt.executeQuery(selectTable);&lt;br&gt;                        try {&lt;br&gt;                            int rowCount = 0;&lt;br&gt;                            ResultSetMetaData rsmd = rs.getMetaData();&lt;br&gt;                            if (rs.next()) {&lt;br&gt;                                rowCount = rs.getInt(1);&lt;br&gt;                                System.out.println("  " + tableName + " row "&lt;br&gt;                                    + rsmd.getColumnName(1) + "=" + rowCount);&lt;br&gt;                            }&lt;br&gt;                            if (rowCount != numRows) {&lt;br&gt;                                System.out.println(&lt;br&gt;                                    "ERROR: Didn't retrieve enough rows: expected "&lt;br&gt;                                    + numRows + ", got " + rowCount + "!");&lt;br&gt;                            }&lt;br&gt;                        } finally {&lt;br&gt;                            rs.close();&lt;br&gt;                        }&lt;br&gt;                    } finally {&lt;br&gt;                        System.out.println(" Closing PreparedStatement object...");&lt;br&gt;                        pstmt.close();&lt;br&gt;                        System.out.println(" PreparedStatement object closed.");&lt;br&gt;                    }&lt;br&gt;                } finally {&lt;br&gt;                    System.out.println(" Closing Statement object...");&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed.");&lt;br&gt;                }&lt;br&gt;            } finally {&lt;br&gt;                System.out.println(" Closing Connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed.");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println("Sample T20205JD finished. " + new java.util.Date());&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;}&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:09:42 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20206JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9347-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2006-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20206JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate FastLoad of data rows with auto-commit false.&lt;br&gt;//&lt;br&gt;//       The program will:&lt;br&gt;//         -  Connect as user guest/please&lt;br&gt;//         -  Insert data rows into a table using FastLoad with auto-commit false&lt;br&gt;//         -  Verify the updateCount returned by executeBatch&lt;br&gt;//         -  Verify that no SQLWarning has occurred&lt;br&gt;//         -  Verify that the correct number of data rows were inserted (fastloaded)&lt;br&gt;//         -  Disconnect&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.PreparedStatement,&lt;br&gt;//            java.sql.PreparedStatement.executeBatch&lt;br&gt;//&lt;br&gt;//  Version: new sample&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.io.*;&lt;br&gt;import java.sql.*;&lt;br&gt;import java.util.Arrays;&lt;br&gt;&lt;br&gt;/**&lt;br&gt; * FastLoad with auto-commit false.&lt;br&gt; */&lt;br&gt;public class T20206JD {&lt;br&gt;    // Name of the user able to create and drop tables&lt;br&gt;    public static String user = "guest";&lt;br&gt;    public static String password = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8,TYPE=FASTLOAD";&lt;br&gt;&lt;br&gt;        // Size of CHAR column&lt;br&gt;        int strLen = 100;&lt;br&gt;&lt;br&gt;        // Name of sample table&lt;br&gt;        String tableName = "T20206JD";&lt;br&gt;&lt;br&gt;        // CREATE TABLE statement&lt;br&gt;        String createTable = "CREATE TABLE " + tableName + "," +&lt;br&gt;                                "NO FALLBACK," +&lt;br&gt;                                "NO BEFORE JOURNAL," +&lt;br&gt;                                "NO AFTER JOURNAL," +&lt;br&gt;                                "CHECKSUM = DEFAULT" +&lt;br&gt;                                "(" +&lt;br&gt;                                " L_INDEX INTEGER NOT NULL," +&lt;br&gt;                                " L_TEXT CHAR(" + strLen + ")" +&lt;br&gt;                                " CHARACTER SET UNICODE NOT CASESPECIFIC" +&lt;br&gt;                                ") " +&lt;br&gt;                              "UNIQUE PRIMARY INDEX ( L_INDEX&amp;nbsp";&lt;br&gt;&lt;br&gt;        // INSERT statement&lt;br&gt;        String insertTable = "INSERT INTO " + tableName + " VALUES(?,?)";&lt;br&gt;&lt;br&gt;        // SELECT statement&lt;br&gt;        String selectTable = "SELECT COUNT(*) FROM " + tableName;&lt;br&gt;&lt;br&gt;        try {&lt;br&gt;            System.out.println("Sample T20206JD starting: " + new java.util.Date());&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver...");&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" Teradata JDBC driver loaded.");&lt;br&gt;&lt;br&gt;            System.out.println(" Attempting to connect to Teradata...");&lt;br&gt;            Connection con = DriverManager.getConnection(url, user, password);&lt;br&gt;            System.out.println(" Connection to Teradata established.");&lt;br&gt;&lt;br&gt;            try {&lt;br&gt;                System.out.println(" Creating a Statement object...");&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Created a Statement object.");&lt;br&gt;&lt;br&gt;                try {&lt;br&gt;                    try {&lt;br&gt;                        stmt.executeUpdate("DROP TABLE " + tableName);&lt;br&gt;                    } catch (SQLException e) {&lt;br&gt;                        // Do nothing because the table likely does not exist yet!&lt;br&gt;                        System.out.println(" Drop table exception ignored: " + e);&lt;br&gt;                    }&lt;br&gt;                    System.out.println(" Creating table " + tableName + "...");&lt;br&gt;                    stmt.executeUpdate(createTable);&lt;br&gt;                    System.out.println(" Created table " + tableName + ".");&lt;br&gt;&lt;br&gt;                    System.out.println(" Creating a PreparedStatement object...");&lt;br&gt;                    PreparedStatement pstmt = con.prepareStatement(insertTable);&lt;br&gt;                    System.out.println(" Created a PreparedStatement object...");&lt;br&gt;&lt;br&gt;                    try {&lt;br&gt;                        int numRows = 0;&lt;br&gt;                        char[] charBuf = new char[strLen];&lt;br&gt;                        Arrays.fill(charBuf, 'a');&lt;br&gt;                        String strBuf = new String(charBuf);&lt;br&gt;&lt;br&gt;                        con.setAutoCommit(false);&lt;br&gt;&lt;br&gt;                        System.out.println(" Binding data rows...");&lt;br&gt;                        int batchCount = 0;&lt;br&gt;                        pstmt.setInt(1, 1);&lt;br&gt;                        pstmt.setString(2, strBuf);&lt;br&gt;                        pstmt.addBatch();&lt;br&gt;                        batchCount++;&lt;br&gt;&lt;br&gt;                        pstmt.setInt(1, 2);&lt;br&gt;                        pstmt.setString(2, strBuf);&lt;br&gt;                        pstmt.addBatch();&lt;br&gt;                        batchCount++;&lt;br&gt;&lt;br&gt;                        System.out.println(" Inserting data rows...");&lt;br&gt;                        int updateCounts[] = pstmt.executeBatch();&lt;br&gt;                        if (updateCounts == null) {&lt;br&gt;                            System.out.println(&lt;br&gt;                                "ERROR: A null update count was returned!");&lt;br&gt;                        } else {&lt;br&gt;                            if (updateCounts.length != batchCount) {&lt;br&gt;                                System.out.println(&lt;br&gt;                                    "WARNING: The update count does not match the"&lt;br&gt;                                    + " number of rows batched: expected "&lt;br&gt;                                    + batchCount + ", got " + updateCounts.length);&lt;br&gt;                            }&lt;br&gt;                            for (int i = 0; i &amp;lt; updateCounts.length; i++) {&lt;br&gt;                                if (updateCounts[i] != 1) {&lt;br&gt;                                    System.out.println(&lt;br&gt;                                        "WARNING: The update count for row " + (i+1)&lt;br&gt;                                        + " failed: expected 1, got "&lt;br&gt;                                        + updateCounts[i]);&lt;br&gt;                                }&lt;br&gt;                            }&lt;br&gt;                            numRows += updateCounts.length;&lt;br&gt;                        }&lt;br&gt;&lt;br&gt;                        SQLWarning w = pstmt.getWarnings();&lt;br&gt;                        while (w != null) {&lt;br&gt;                            System.out.println("*** SQLWarning caught ***");&lt;br&gt;                            StringWriter sw = new StringWriter();&lt;br&gt;                            w.printStackTrace(new PrintWriter(sw, true));&lt;br&gt;                            System.out.println("SQL State = " + w.getSQLState()&lt;br&gt;                                + ", Error Code = " + w.getErrorCode() +&lt;br&gt;                                "" + sw.toString());&lt;br&gt;                            w = w.getNextWarning();&lt;br&gt;                        }&lt;br&gt;&lt;br&gt;                        System.out.println(" Binding data rows...");&lt;br&gt;                        batchCount = 0;&lt;br&gt;                        pstmt.setInt(1, 3);&lt;br&gt;                        pstmt.setString(2, strBuf);&lt;br&gt;                        pstmt.addBatch();&lt;br&gt;                        batchCount++;&lt;br&gt;&lt;br&gt;                        pstmt.setInt(1, 4);&lt;br&gt;                        pstmt.setString(2, strBuf);&lt;br&gt;                        pstmt.addBatch();&lt;br&gt;                        batchCount++;&lt;br&gt;&lt;br&gt;                        System.out.println(" Inserting data rows...");&lt;br&gt;                        updateCounts = pstmt.executeBatch();&lt;br&gt;                        if (updateCounts == null) {&lt;br&gt;                            System.out.println(&lt;br&gt;                                "ERROR: A null update count was returned!");&lt;br&gt;                        } else {&lt;br&gt;                            if (updateCounts.length != batchCount) {&lt;br&gt;                                System.out.println(&lt;br&gt;                                    "WARNING: The update count does not match the"&lt;br&gt;                                    + " number of rows batched: expected "&lt;br&gt;                                    + batchCount + ", got " + updateCounts.length);&lt;br&gt;                            }&lt;br&gt;                            for (int i = 0; i &amp;lt; updateCounts.length; i++) {&lt;br&gt;                                if (updateCounts[i] != 1) {&lt;br&gt;                                    System.out.println(&lt;br&gt;                                        "WARNING: The update count for row " + (i+1)&lt;br&gt;                                        + " failed: expected 1, got "&lt;br&gt;                                        + updateCounts[i]);&lt;br&gt;                                }&lt;br&gt;                            }&lt;br&gt;                            numRows += updateCounts.length;&lt;br&gt;                        }&lt;br&gt;&lt;br&gt;                        w = pstmt.getWarnings();&lt;br&gt;                        while (w != null) {&lt;br&gt;                            System.out.println("*** SQLWarning caught ***");&lt;br&gt;                            StringWriter sw = new StringWriter();&lt;br&gt;                            w.printStackTrace(new PrintWriter(sw, true));&lt;br&gt;                            System.out.println("SQL State = " + w.getSQLState()&lt;br&gt;                                + ", Error Code = " + w.getErrorCode()&lt;br&gt;                                +"" + sw.toString());&lt;br&gt;                            w = w.getNextWarning();&lt;br&gt;                        }&lt;br&gt;&lt;br&gt;                        con.commit();&lt;br&gt;                        // Note that at this point no further executeBatch is&lt;br&gt;                        // permitted unless all rows in the destination table are&lt;br&gt;                        // deleted!&lt;br&gt;&lt;br&gt;                        con.setAutoCommit(true);&lt;br&gt;&lt;br&gt;                        System.out.println(" Selecting data rows...");&lt;br&gt;                        ResultSet rs = stmt.executeQuery(selectTable);&lt;br&gt;                        try {&lt;br&gt;                            int rowCount = 0;&lt;br&gt;                            ResultSetMetaData rsmd = rs.getMetaData();&lt;br&gt;                            if (rs.next()) {&lt;br&gt;                                rowCount = rs.getInt(1);&lt;br&gt;                                System.out.println("  " + tableName + " row "&lt;br&gt;                                    + rsmd.getColumnName(1) + "=" + rowCount);&lt;br&gt;                            }&lt;br&gt;                            if (rowCount != numRows) {&lt;br&gt;                                System.out.println(&lt;br&gt;                                    "ERROR: Didn't retrieve enough rows: expected "&lt;br&gt;                                    + numRows + ", got " + rowCount);&lt;br&gt;                            }&lt;br&gt;                        } finally {&lt;br&gt;                            rs.close();&lt;br&gt;                        }&lt;br&gt;                    } catch (SQLException e) {&lt;br&gt;                        try {&lt;br&gt;                            System.out.println(&lt;br&gt;                                " Rolling back due to exception: " + e);&lt;br&gt;                            con.rollback();&lt;br&gt;                        } catch (SQLException ex) {&lt;br&gt;                            System.out.println(&lt;br&gt;                                " Chaining exception from rollback: " + ex);&lt;br&gt;                            e.setNextException(ex);&lt;br&gt;                        }&lt;br&gt;                        throw e;&lt;br&gt;                    } finally {&lt;br&gt;                        System.out.println(" Closing PreparedStatement object...");&lt;br&gt;                        pstmt.close();&lt;br&gt;                        System.out.println(" PreparedStatement object closed.");&lt;br&gt;                    }&lt;br&gt;                } finally {&lt;br&gt;                    System.out.println(" Closing Statement object...");&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed.");&lt;br&gt;                }&lt;br&gt;            } finally {&lt;br&gt;                System.out.println(" Closing Connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed.");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println("Sample T20206JD finished. " + new java.util.Date());&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;}&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:09:28 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20207JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9346-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2006-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//               TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20207JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate FastLoad of data rows with auto-commit false&lt;br&gt;//              and verify FastLoad sessions.&lt;br&gt;//&lt;br&gt;//        The program will:&lt;br&gt;//          -  Connect as user guest/please&lt;br&gt;//          -  Insert data rows into a table using FastLoad with auto-commit false&lt;br&gt;//          -  Verify the updateCount returned by executeBatch&lt;br&gt;//          -  Verify that no SQLWarning has occurred&lt;br&gt;//          -  Verify the sessions used to FastLoad&lt;br&gt;//          -  Verify that the correct number of data rows were inserted (fastloaded)&lt;br&gt;//          -  Disconnect&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.PreparedStatement,&lt;br&gt;//            java.sql.PreparedStatement.executeBatch&lt;br&gt;//&lt;br&gt;//  Version: new sample&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.io.*;&lt;br&gt;import java.sql.*;&lt;br&gt;import java.util.Arrays;&lt;br&gt;&lt;br&gt;/**&lt;br&gt; * FastLoad with auto-commit false and verify FastLoad sessions.&lt;br&gt; */&lt;br&gt;public class T20207JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create and drop tables&lt;br&gt;    public static String user = "guest";&lt;br&gt;    public static String password = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // URL Parameter for SESSIONS&lt;br&gt;        int sessions = 1;&lt;br&gt;&lt;br&gt;        // URL to be passed to the JDBC driver&lt;br&gt;        String url =&lt;br&gt;            "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8,TYPE=FASTLOAD,SESSIONS="&lt;br&gt;            + sessions;&lt;br&gt;&lt;br&gt;        // Size of CHAR column&lt;br&gt;        int strLen = 100;&lt;br&gt;&lt;br&gt;        // Name of sample table&lt;br&gt;        String tableName = "T20207JD";&lt;br&gt;&lt;br&gt;        // CREATE TABLE statement&lt;br&gt;        String createTable = "CREATE TABLE " + tableName + "," +&lt;br&gt;                                "NO FALLBACK," +&lt;br&gt;                                "NO BEFORE JOURNAL," +&lt;br&gt;                                "NO AFTER JOURNAL," +&lt;br&gt;                                "CHECKSUM = DEFAULT" +&lt;br&gt;                                "(" +&lt;br&gt;                                " L_INDEX INTEGER NOT NULL," +&lt;br&gt;                                " L_TEXT CHAR(" + strLen + ")" +&lt;br&gt;                                " CHARACTER SET UNICODE NOT CASESPECIFIC" +&lt;br&gt;                                ") " +&lt;br&gt;                              "UNIQUE PRIMARY INDEX ( L_INDEX&amp;nbsp";&lt;br&gt;&lt;br&gt;        // INSERT statement&lt;br&gt;        String insertTable = "INSERT INTO " + tableName + " VALUES(?,?)";&lt;br&gt;&lt;br&gt;        // SELECT statement&lt;br&gt;        String selectTable = "SELECT COUNT(*) FROM " + tableName;&lt;br&gt;&lt;br&gt;        try {&lt;br&gt;            System.out.println("Sample T20207JD starting: " + new java.util.Date());&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver...");&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" Teradata JDBC driver loaded.");&lt;br&gt;&lt;br&gt;            System.out.println(" Attempting to connect to Teradata...");&lt;br&gt;            Connection con = DriverManager.getConnection(url, user, password);&lt;br&gt;            System.out.println(" Connection to Teradata established.");&lt;br&gt;&lt;br&gt;            try {&lt;br&gt;                System.out.println(" Creating a Statement object...");&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Created a Statement object.");&lt;br&gt;&lt;br&gt;                try {&lt;br&gt;                    try {&lt;br&gt;                        stmt.executeUpdate("DROP TABLE " + tableName);&lt;br&gt;                    } catch (SQLException e) {&lt;br&gt;                        // Do nothing because the table likely does not exist yet!&lt;br&gt;                        System.out.println(" Drop table exception ignored: " + e);&lt;br&gt;                    }&lt;br&gt;                    System.out.println(" Creating table " + tableName + "...");&lt;br&gt;                    stmt.executeUpdate(createTable);&lt;br&gt;                    System.out.println(" Created table " + tableName + ".");&lt;br&gt;&lt;br&gt;                    System.out.println(" Creating a PreparedStatement object...");&lt;br&gt;                    PreparedStatement pstmt = con.prepareStatement(insertTable);&lt;br&gt;                    System.out.println(" Created a PreparedStatement object...");&lt;br&gt;&lt;br&gt;                    try {&lt;br&gt;                        int numRows = 0;&lt;br&gt;                        char[] charBuf = new char[strLen];&lt;br&gt;                        Arrays.fill(charBuf, 'a');&lt;br&gt;                        String strBuf = new String(charBuf);&lt;br&gt;&lt;br&gt;                        con.setAutoCommit(false);&lt;br&gt;&lt;br&gt;                        System.out.println(" Binding data rows...");&lt;br&gt;                        int batchCount = 0;&lt;br&gt;                        pstmt.setInt(1, 1);&lt;br&gt;                        pstmt.setString(2, strBuf);&lt;br&gt;                        pstmt.addBatch();&lt;br&gt;                        batchCount++;&lt;br&gt;&lt;br&gt;                        pstmt.setInt(1, 2);&lt;br&gt;                        pstmt.setString(2, strBuf);&lt;br&gt;                        pstmt.addBatch();&lt;br&gt;                        batchCount++;&lt;br&gt;&lt;br&gt;                        System.out.println(" Inserting data rows...");&lt;br&gt;                        int updateCounts[] = pstmt.executeBatch();&lt;br&gt;                        if (updateCounts == null) {&lt;br&gt;                            System.out.println(&lt;br&gt;                                "ERROR: A null update count was returned!");&lt;br&gt;                        } else {&lt;br&gt;                            if (updateCounts.length != batchCount) {&lt;br&gt;                                System.out.println(&lt;br&gt;                                    "WARNING: The update count does not match the"&lt;br&gt;                                    + " number of rows batched: expected "&lt;br&gt;                                    + batchCount + ", got " + updateCounts.length);&lt;br&gt;                            }&lt;br&gt;                            for (int i = 0; i &amp;lt; updateCounts.length; i++) {&lt;br&gt;                                if (updateCounts[i] != 1) {&lt;br&gt;                                    System.out.println(&lt;br&gt;                                        "WARNING: The update count for row " + (i+1)&lt;br&gt;                                        + " failed: expected 1, got "&lt;br&gt;                                        + updateCounts[i]);&lt;br&gt;                                }&lt;br&gt;                            }&lt;br&gt;                            numRows += updateCounts.length;&lt;br&gt;                        }&lt;br&gt;&lt;br&gt;                        SQLWarning w = pstmt.getWarnings();&lt;br&gt;                        while (w != null) {&lt;br&gt;                            System.out.println("*** SQLWarning caught ***");&lt;br&gt;                            StringWriter sw = new StringWriter();&lt;br&gt;                            w.printStackTrace(new PrintWriter(sw, true));&lt;br&gt;                            System.out.println("SQL State = " + w.getSQLState()&lt;br&gt;                                + ", Error Code = " + w.getErrorCode()&lt;br&gt;                                + "" + sw.toString());&lt;br&gt;                            w = w.getNextWarning();&lt;br&gt;                        }&lt;br&gt;&lt;br&gt;                        // Note that FastLoad sessions can only be verified while&lt;br&gt;                        // FastLoad is active with auto-commit set to false,&lt;br&gt;                        // i.e. a setXXX method must have been called and commit&lt;br&gt;                        // must NOT have been performed yet!&lt;br&gt;                        verifyFastLoadSessions(con, pstmt.hashCode(), sessions);&lt;br&gt;&lt;br&gt;                        con.commit();&lt;br&gt;                        // Note that at this point no further executeBatch is&lt;br&gt;                        // permitted unless all rows in the destination table are&lt;br&gt;                        // deleted!&lt;br&gt;&lt;br&gt;                        con.setAutoCommit(true);&lt;br&gt;&lt;br&gt;                        System.out.println(" Selecting data rows...");&lt;br&gt;                        ResultSet rs = stmt.executeQuery(selectTable);&lt;br&gt;                        try {&lt;br&gt;                            int rowCount = 0;&lt;br&gt;                            ResultSetMetaData rsmd = rs.getMetaData();&lt;br&gt;                            if (rs.next()) {&lt;br&gt;                                rowCount = rs.getInt(1);&lt;br&gt;                                System.out.println("  " + tableName + " row "&lt;br&gt;                                    + rsmd.getColumnName(1) + "=" + rowCount);&lt;br&gt;                            }&lt;br&gt;                            if (rowCount != numRows) {&lt;br&gt;                                System.out.println(&lt;br&gt;                                    "ERROR: Didn't retrieve enough rows: expected "&lt;br&gt;                                    + numRows + ", got " + rowCount);&lt;br&gt;                            }&lt;br&gt;                        } finally {&lt;br&gt;                            rs.close();&lt;br&gt;                        }&lt;br&gt;                    } catch (SQLException e) {&lt;br&gt;                        try {&lt;br&gt;                            System.out.println(&lt;br&gt;                                " Rolling back due to exception: " + e);&lt;br&gt;                            con.rollback();&lt;br&gt;                        } catch (SQLException ex) {&lt;br&gt;                            System.out.println(&lt;br&gt;                                " Chaining exception from rollback: " + ex);&lt;br&gt;                            e.setNextException(ex);&lt;br&gt;                        }&lt;br&gt;                        throw e;&lt;br&gt;                    } finally {&lt;br&gt;                        System.out.println(" Closing PreparedStatement object...");&lt;br&gt;                        pstmt.close();&lt;br&gt;                        System.out.println(" PreparedStatement object closed.");&lt;br&gt;                    }&lt;br&gt;                } finally {&lt;br&gt;                    System.out.println(" Closing Statement object...");&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed.");&lt;br&gt;                }&lt;br&gt;            } finally {&lt;br&gt;                System.out.println(" Closing Connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed.");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println("Sample T20207JD finished. " + new java.util.Date());&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;&lt;br&gt;    private static void verifyFastLoadSessions(Connection con, int hashCode,&lt;br&gt;        int sessions)&lt;br&gt;    throws SQLException&lt;br&gt;    {&lt;br&gt;        System.out.println(" Verifying FastLoad SESSIONS for PreparedStatement="&lt;br&gt;            + hashCode + "...");&lt;br&gt;&lt;br&gt;        // Note that the method for verifying FastLoad SESSIONS may change at any&lt;br&gt;        // time without prior notice!&lt;br&gt;&lt;br&gt;        String amps = con.nativeSQL("{fn teradata_amp_count()}");&lt;br&gt;        System.out.println("  AMP count = " + amps);&lt;br&gt;        int consExpected = sessions &amp;lt; Integer.parseInt(amps) ? sessions&lt;br&gt;            : Integer.parseInt(amps);&lt;br&gt;&lt;br&gt;        String lsnList = con.nativeSQL("{fn teradata_logon_sequence_number()}");&lt;br&gt;        System.out.println("  LSN(s) = " + lsnList);&lt;br&gt;&lt;br&gt;        String lsnArray[] = lsnList.split(",");&lt;br&gt;        if ((lsnArray.length &amp;amp; 1) == 1) {&lt;br&gt;            System.out.println(&lt;br&gt;                "ERROR: Expected an even count of delimited strings, indicating pairs"&lt;br&gt;                + " of PreparedStatement hash codes and LSNs, but received an odd"&lt;br&gt;                + " count instead!");&lt;br&gt;            throw new IllegalStateException (&lt;br&gt;                "Received invalid list from teradata_logon_sequence_number") ;&lt;br&gt;        }&lt;br&gt;&lt;br&gt;        for (int i = 0; i &amp;lt; lsnArray.length; i += 2) {&lt;br&gt;            int hashCodeForLSN = Integer.parseInt(lsnArray[i]);&lt;br&gt;            int lsnForHashCode = Integer.parseInt(lsnArray[i+1]);&lt;br&gt;            if (hashCodeForLSN == hashCode)&lt;br&gt;            {&lt;br&gt;                System.out.println("  LogonSequenceNo=" + lsnForHashCode&lt;br&gt;                    + " for PreparedStatement=" + hashCode);&lt;br&gt;&lt;br&gt;                String selectSessionCount = "SELECT COUNT(*) FROM DBC.SessionInfo"&lt;br&gt;                    + " WHERE Partition='FASTLOAD' AND LogonSequenceNo=?";&lt;br&gt;&lt;br&gt;                PreparedStatement pstmt1 = con.prepareStatement(selectSessionCount);&lt;br&gt;                try {&lt;br&gt;                    byte bytes[] = new byte[4];&lt;br&gt;                    bytes[1] = (byte) ((lsnForHashCode &amp;gt;&amp;gt; 24) &amp;amp; 0xFF);&lt;br&gt;                    bytes[0] = (byte) ((lsnForHashCode &amp;gt;&amp;gt; 16) &amp;amp; 0xFF);&lt;br&gt;                    bytes[3] = (byte) ((lsnForHashCode &amp;gt;&amp;gt; 8) &amp;amp; 0xFF);&lt;br&gt;                    bytes[2] = (byte) (lsnForHashCode &amp;amp; 0xFF);&lt;br&gt;                    pstmt1.setBytes(1, bytes);&lt;br&gt;                    ResultSet rs1 = pstmt1.executeQuery();&lt;br&gt;                    try {&lt;br&gt;                        int consFound = 0;&lt;br&gt;                        if (rs1.next()) {&lt;br&gt;                            ResultSetMetaData rsmd = rs1.getMetaData();&lt;br&gt;                            consFound = rs1.getInt(1);&lt;br&gt;                            System.out.println("  FastLoadConnection session "&lt;br&gt;                                + rsmd.getColumnName(1) + "=" + consFound&lt;br&gt;                                + " for LogonSequenceNo=" + lsnForHashCode);&lt;br&gt;                        }&lt;br&gt;                        if (consFound != consExpected) {&lt;br&gt;                            System.out.println(&lt;br&gt;                                "ERROR: Did not detect a correct count of"&lt;br&gt;                                + " FastLoadConnection session(s): expected "&lt;br&gt;                                + consExpected + ", got " + consFound);&lt;br&gt;                        }&lt;br&gt;                    } finally {&lt;br&gt;                        rs1.close();&lt;br&gt;                    }&lt;br&gt;&lt;br&gt;                    String selectSessionNums =&lt;br&gt;                        "SELECT SessionNo,Partition FROM DBC.SessionInfo"&lt;br&gt;                            + " WHERE LogonSequenceNo=?"&lt;br&gt;                            + " ORDER BY SessionNo,Partition";&lt;br&gt;&lt;br&gt;                    PreparedStatement pstmt2 =&lt;br&gt;                        con.prepareStatement(selectSessionNums);&lt;br&gt;&lt;br&gt;                    try {&lt;br&gt;                        pstmt2.setBytes(1, bytes);&lt;br&gt;                        ResultSet rs2 = pstmt2.executeQuery();&lt;br&gt;                        try {&lt;br&gt;                            ResultSetMetaData rsmd = rs2.getMetaData();&lt;br&gt;                            while (rs2.next()) {&lt;br&gt;                                System.out.println("  Found " + rsmd.getColumnName(2)&lt;br&gt;                                    + "=" + rs2.getObject(2) + " with "&lt;br&gt;                                    + rsmd.getColumnName(1) + "=" + rs2.getObject(1)&lt;br&gt;                                    + " for LogonSequenceNo=" + lsnForHashCode);&lt;br&gt;                            }&lt;br&gt;                        } finally {&lt;br&gt;                            rs2.close();&lt;br&gt;                        }&lt;br&gt;                    } finally {&lt;br&gt;                        pstmt2.close();&lt;br&gt;                    }&lt;br&gt;                } finally {&lt;br&gt;                    pstmt1.close();&lt;br&gt;                }&lt;br&gt;                break;&lt;br&gt;            }&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;}&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:09:01 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20300JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9345-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20300JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata SQL using the JDBC API by&lt;br&gt;//              performing a SELECT query on the table without using&lt;br&gt;//              parameter markers.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Select a row from table employee&lt;br&gt;//                -  Display the medatata associated with the&lt;br&gt;//                   column values of the selected row.&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection,&lt;br&gt;//            java.sql.Statement, java.sql.Statement.executeQuery,&lt;br&gt;//            java.sql.ResultSet, java.sql.ResultSet.getMetaData,&lt;br&gt;//            java.sql.ResultSetMetaData&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20300JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create and drop tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Creation of the SQL SELECT statement&lt;br&gt;        String sSelect = "SELECT empID, empName, empJob FROM employee " +&lt;br&gt;                         "WHERE empDept = 'Product Development' ORDER BY empID";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20300JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    // The following code will perform a SELECT query on the table.&lt;br&gt;&lt;br&gt;                    System.out.println(" Using executeQuery() to execute the " +&lt;br&gt;                                       "following SQL statement: " + sSelect);&lt;br&gt;                    // Submit a query, creating a result set object&lt;br&gt;                    ResultSet rs = stmt.executeQuery(sSelect);&lt;br&gt;                    // Display result set table column meta data&lt;br&gt;                    displayRSMetaData(rs);&lt;br&gt;&lt;br&gt;                    // Extract and display result set table data&lt;br&gt;                    System.out.println();&lt;br&gt;                    System.out.println(" DISPLAYING RESULT SET DATA:");&lt;br&gt;                    System.out.println(" ---------------------------");&lt;br&gt;&lt;br&gt;                    int rowCount = 0;   // result set row counter&lt;br&gt;                    int numData;        // placeholder for integer data&lt;br&gt;                    String charData;    // placeholder for character data&lt;br&gt;&lt;br&gt;                    // iterate through all returned rows and display them&lt;br&gt;                    while (rs.next())&lt;br&gt;                    {&lt;br&gt;                        rowCount++;   // increment retrieved row counter&lt;br&gt;                        System.out.println();&lt;br&gt;&lt;br&gt;                        System.out.println(" ROW " + rowCount + ": ");&lt;br&gt;                        // retrieve and display first column value&lt;br&gt;                        numData = rs.getInt(1);&lt;br&gt;                        System.out.println(" Employee ID: " + numData);&lt;br&gt;                        // retrieve and display second column value&lt;br&gt;                        charData = rs.getString(2);&lt;br&gt;                        System.out.println(" Name: " + charData);&lt;br&gt;                        // retrieve and display third column data&lt;br&gt;                        charData = rs.getString(3);&lt;br&gt;                        System.out.println(" Job Description: " + charData);&lt;br&gt;                   }&lt;br&gt;                   System.out.println(" " + rowCount + " Row(s) returned.");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed.");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20300JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;&lt;br&gt;    private static void displayRSMetaData(ResultSet rs) throws SQLException&lt;br&gt;    {&lt;br&gt;        // This code will demonstrate all available methods for&lt;br&gt;        // retrieving table column meta data. Please note that some&lt;br&gt;        // methods are meaningful only for numeric columns.&lt;br&gt;&lt;br&gt;        // Retrieve result set meta data to get information on the columns&lt;br&gt;        ResultSetMetaData rsmd = rs.getMetaData();&lt;br&gt;        // Retrieve the number of columns returned&lt;br&gt;        int colCount = rsmd.getColumnCount();&lt;br&gt;        System.out.println(" DISPLAYING RESULT SET COLUMN META DATA:");&lt;br&gt;        System.out.println(" -----------------------------------------");&lt;br&gt;        System.out.println(" The resulting table has " + colCount + " columns:");&lt;br&gt;        // For every column, display it's meta data.&lt;br&gt;&lt;br&gt;        int i = 1; // Initialize loop counter&lt;br&gt;        while (i &amp;lt;= colCount)&lt;br&gt;        {&lt;br&gt;            // Demonstrating all methods for retrieving column meta data&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println(" Column " + i);&lt;br&gt;            System.out.println(" ------------ ");&lt;br&gt;            // Display the suggested column title for use in&lt;br&gt;            // printouts and displays&lt;br&gt;            System.out.println(" Column label: "&lt;br&gt;                               + rsmd.getColumnLabel(i));&lt;br&gt;            // Display the column name&lt;br&gt;            System.out.println(" Column name: "&lt;br&gt;                               + rsmd.getColumnName(i));&lt;br&gt;            // Display the SQL type of a column.&lt;br&gt;            System.out.println(" Column type: "&lt;br&gt;                               + rsmd.getColumnType(i));&lt;br&gt;            // Display the type name of a column&lt;br&gt;            System.out.println(" Column type name: "&lt;br&gt;                               + rsmd.getColumnTypeName(i));&lt;br&gt;            // Display information on whether NULL values are allowed&lt;br&gt;            System.out.println(" NULLs allowed: "&lt;br&gt;                               + rsmd.isNullable(i));&lt;br&gt;            // Display the normal maximum width of a column in characters.&lt;br&gt;            System.out.println(" Maximum character width: "&lt;br&gt;                               + rsmd.getColumnDisplaySize(i));&lt;br&gt;            // Display precision: the number of decimal digits&lt;br&gt;            // Note: default value is 0.&lt;br&gt;            System.out.println(" Column precision"&lt;br&gt;                               + " (number of decimal places): "&lt;br&gt;                               + rsmd.getPrecision(i));&lt;br&gt;            // Display the number of digits to the right of the&lt;br&gt;            // decimal point. Note: default value is 0.&lt;br&gt;            System.out.println(" Precision to the right of"&lt;br&gt;                               + " the decimal point: "&lt;br&gt;                               + rsmd.getScale(i));&lt;br&gt;            // Increment column counter&lt;br&gt;            i++;&lt;br&gt;        }&lt;br&gt;    } // end displayRSMetaData(...)&lt;br&gt;} // End class T20300JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:07:00 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20301JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9344-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//               TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20301JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata SQL using the JDBC API by&lt;br&gt;//              performing a SELECT query on the table using&lt;br&gt;//              parameter markers.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Select a row from table employee&lt;br&gt;//                -  Display the medatata associated with the&lt;br&gt;//                   column values of the selected row.&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.PreparedStatement,&lt;br&gt;//            java.sql.PreparedStatement.executeQuery,&lt;br&gt;//            java.sql.ResultSet, java.sql.ResultSet.getMetaData,&lt;br&gt;//            java.sql.ResultSetMetaData&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20301JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create and drop tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Creation of the SQL SELECT statement and its parameter value&lt;br&gt;        String sSelect = "SELECT empID, empName, empJob FROM employee"&lt;br&gt;                       + " WHERE empDept = ? ORDER BY empID";&lt;br&gt;        String selectCond = "Product Development";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20301JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                System.out.println(" Preparing this SQL statement for execution: "&lt;br&gt;                                   + sSelect);&lt;br&gt;                // Creating a prepared statement object from an active connection&lt;br&gt;                PreparedStatement pstmt = con.prepareStatement(sSelect);&lt;br&gt;                System.out.println(" Prepared statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    // Set parameter values indicated by ? (dynamic update)&lt;br&gt;                    System.out.println(" Using setString() to bind value to " +&lt;br&gt;                                       "the parameter marker:");&lt;br&gt;                    pstmt.setString(1, selectCond);&lt;br&gt;                    System.out.println(" FIRST ? set to: " + selectCond);&lt;br&gt;&lt;br&gt;                    // The following code will perform a SELECT query&lt;br&gt;                    // on the table.&lt;br&gt;&lt;br&gt;                    // Submit a query, creating a result set object&lt;br&gt;                    ResultSet rs = pstmt.executeQuery();&lt;br&gt;                    // Display result set table column meta data&lt;br&gt;                    displayRSMetaData(rs);&lt;br&gt;&lt;br&gt;                    // Extract and display result set table data&lt;br&gt;                    System.out.println();&lt;br&gt;                    System.out.println(" DISPLAYING RESULT SET DATA:");&lt;br&gt;                    System.out.println(" ---------------------------");&lt;br&gt;&lt;br&gt;                    int rowCount = 0;   // result set row counter&lt;br&gt;                    int numData;        // placeholder for integer data&lt;br&gt;                    String charData;    // placeholder for character data&lt;br&gt;&lt;br&gt;                    // iterate through all returned rows and display them&lt;br&gt;                    while (rs.next())&lt;br&gt;                    {&lt;br&gt;                        rowCount++;   // increment retrieved row counter&lt;br&gt;                        System.out.println();&lt;br&gt;                        System.out.println(" ROW " + rowCount + ": ");&lt;br&gt;                        // retrieve and display first column value&lt;br&gt;                        numData = rs.getInt(1);&lt;br&gt;                        System.out.println(" Employee ID: " + numData);&lt;br&gt;                        // retrieve and display second column value&lt;br&gt;                        charData = rs.getString(2);&lt;br&gt;                        System.out.println(" Name: " + charData);&lt;br&gt;                        // retrieve and display third column value&lt;br&gt;                        charData = rs.getString(3);&lt;br&gt;                        System.out.println(" Job Description: " + charData);&lt;br&gt;                   }&lt;br&gt;                   System.out.println(" " + rowCount + " Row(s) returned.");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    pstmt.close();&lt;br&gt;                    System.out.println(" PreparedStatement object closed.");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20301JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;&lt;br&gt;    private static void displayRSMetaData(ResultSet rs) throws SQLException&lt;br&gt;    {&lt;br&gt;        // This code will demonstrate all available methods for&lt;br&gt;        // retrieving table column meta data.&lt;br&gt;&lt;br&gt;        // Retrieve result set meta data to get information on the columns&lt;br&gt;        ResultSetMetaData rsmd = rs.getMetaData();&lt;br&gt;        // Retrieve the number of columns returned&lt;br&gt;        int colCount = rsmd.getColumnCount();&lt;br&gt;        System.out.println(" DISPLAYING RESULT SET COLUMN META DATA:");&lt;br&gt;        System.out.println(" -----------------------------------------");&lt;br&gt;        System.out.println(" The resulting table has " + colCount + " columns:");&lt;br&gt;        // For every column, display it's meta data.&lt;br&gt;&lt;br&gt;        int i = 1; // Initialize loop counter&lt;br&gt;        while (i &amp;lt;= colCount)&lt;br&gt;        {&lt;br&gt;            // Demonstrating all methods for retrieving column meta data&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println(" Column " + i);&lt;br&gt;            System.out.println(" ------------ ");&lt;br&gt;            // Display the suggested column title for use in&lt;br&gt;            // printouts and displays&lt;br&gt;            System.out.println(" Column label: "&lt;br&gt;                               + rsmd.getColumnLabel(i));&lt;br&gt;            // Display the column name&lt;br&gt;            System.out.println(" Column name: "&lt;br&gt;                               + rsmd.getColumnName(i));&lt;br&gt;            // Display the SQL type of a column.&lt;br&gt;            System.out.println(" Column type: "&lt;br&gt;                               + rsmd.getColumnType(i));&lt;br&gt;            // Display the type name of a column&lt;br&gt;            System.out.println(" Column type name: "&lt;br&gt;                               + rsmd.getColumnTypeName(i));&lt;br&gt;            // Display information on whether NULL values are allowed&lt;br&gt;            System.out.println(" NULLs allowed: "&lt;br&gt;                               + rsmd.isNullable(i));&lt;br&gt;            // Display the normal maximum width of a column in characters.&lt;br&gt;            System.out.println(" Maximum character width: "&lt;br&gt;                               + rsmd.getColumnDisplaySize(i));&lt;br&gt;            // Display precision: the number of decimal digits&lt;br&gt;            // Note: default value is 0.&lt;br&gt;            System.out.println(" Column precision"&lt;br&gt;                               + " (number of decimal places): "&lt;br&gt;                               + rsmd.getPrecision(i));&lt;br&gt;            // Display the number of digits to the right of the&lt;br&gt;            // decimal point. Note: default value is 0.&lt;br&gt;            System.out.println(" Precision to the right of"&lt;br&gt;                               + " the decimal point: "&lt;br&gt;                               + rsmd.getScale(i));&lt;br&gt;            // Increment column counter&lt;br&gt;            i++;&lt;br&gt;        }&lt;br&gt;    } // end displayRSMetaData(...)&lt;br&gt;} // End class T20301JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:06:47 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20302JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9343-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20302JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata SQL using the JDBC API by&lt;br&gt;//              performing a SELECT query on the table without using&lt;br&gt;//              parameter markers.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Select a row from table employee2,&lt;br&gt;//                   retrieving LOB column values&lt;br&gt;//                -  Display the medatata associated with the&lt;br&gt;//                   column values of the selected row.&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection,&lt;br&gt;//            java.sql.Statement, java.sql.Statement.executeQuery,&lt;br&gt;//            java.sql.ResultSet, java.sql.ResultSet.getMetaData,&lt;br&gt;//            java.sql.ResultSetMetaData&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;import java.io.*;&lt;br&gt;&lt;br&gt;public class T20302JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create and drop tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;    // Define maximum buffer size for reading in/writing out data&lt;br&gt;    private static final int BUFFERSIZE = 100;&lt;br&gt;    // Constant defining the number of initial bytes displayed to the user&lt;br&gt;    private static final int DISPLAYSIZE = 50;&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Creation of the SQL SELECT statement&lt;br&gt;        String sSelect =&lt;br&gt;            "SELECT empName, empID, empResume, empPhoto, empRawPhotoData " +&lt;br&gt;            "FROM employee2 WHERE empDept = 'Product Development' " +&lt;br&gt;            "ORDER BY empName";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20302JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            //Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    // The following code will perform a SELECT query.&lt;br&gt;                    // Clob/Blob values will be retrieved from the database&lt;br&gt;                    // and written to the specified files.&lt;br&gt;                    // For those values of empPhoto which were inserted using&lt;br&gt;                    // binary literals, writing the information out into a jpeg&lt;br&gt;                    // format is meaningless. For these cases, a character&lt;br&gt;                    // representation of the binary data (in hex format)&lt;br&gt;                    // will be displayed instead and written into a text file.&lt;br&gt;                    // A given number of first bytes of data will be displayed,&lt;br&gt;                    // bounded from above by the DISPLAYSIZE constant.&lt;br&gt;&lt;br&gt;                    System.out.println(" Using executeQuery() to execute the " +&lt;br&gt;                                       "following SQL statement: " + sSelect);&lt;br&gt;                    // Submit a query, creating a result set object&lt;br&gt;                    ResultSet rs = stmt.executeQuery(sSelect);&lt;br&gt;                    // Display table column meta data&lt;br&gt;                    displayRSMetaData(rs);&lt;br&gt;&lt;br&gt;                    // Extract and display result set table data&lt;br&gt;                    System.out.println();&lt;br&gt;                    System.out.println(" DISPLAYING RESULT SET DATA:");&lt;br&gt;                    System.out.println(" ---------------------------");&lt;br&gt;&lt;br&gt;                    int rowCount = 0;&lt;br&gt;                    while(rs.next())&lt;br&gt;                    {&lt;br&gt;                        // Advance row counter&lt;br&gt;                        rowCount++;&lt;br&gt;&lt;br&gt;                        // Extract column values&lt;br&gt;                        String name = rs.getString("empName");&lt;br&gt;                        int id = rs.getInt("empID");&lt;br&gt;                        Clob clob = rs.getClob("empResume");&lt;br&gt;                        Blob blob = rs.getBlob("empPhoto");&lt;br&gt;                        int isRaw =&lt;br&gt;                            new Byte(rs.getByte("empRawPhotoData")).intValue();&lt;br&gt;                        // Create file names for writing out BLOB/CLOB values.&lt;br&gt;                        // Refer to the note above for file format explanation.&lt;br&gt;                        String cfilename = id + "resumeT20302.txt";&lt;br&gt;                        String bfilename = id + "photoT20302.jpg";&lt;br&gt;&lt;br&gt;                        System.out.println(" ROW " + rowCount);&lt;br&gt;                        System.out.println(" ----------");&lt;br&gt;                        System.out.println(" COLUMN empName : " + name);&lt;br&gt;                        System.out.println(" COLUMN empID : " + id);&lt;br&gt;                        System.out.print(" COLUMN empResume : ");&lt;br&gt;                        createClobFile(clob, cfilename);&lt;br&gt;                        System.out.print(" COLUMN empPhoto : ");&lt;br&gt;                        createBlobFile(blob, bfilename, isRaw);&lt;br&gt;                        System.out.println(" COLUMN empRawPhotoData : " + isRaw);&lt;br&gt;                    }&lt;br&gt;                    System.out.println(" " + rowCount + " Row(s) returned.");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20302JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;&lt;br&gt;&lt;br&gt;    private static void displayRSMetaData(ResultSet rs) throws SQLException&lt;br&gt;    {&lt;br&gt;        // This code will demonstrate all available methods for&lt;br&gt;        // retrieving table column meta data.&lt;br&gt;&lt;br&gt;        // Retrieve result set meta data to get information on the columns&lt;br&gt;        ResultSetMetaData rsmd = rs.getMetaData();&lt;br&gt;        // Retrieve the number of columns returned&lt;br&gt;        int colCount = rsmd.getColumnCount();&lt;br&gt;        System.out.println(" DISPLAYING RESULT SET COLUMN META DATA:");&lt;br&gt;        System.out.println(" -----------------------------------------");&lt;br&gt;        System.out.println(" The resulting table has " + colCount + " columns:");&lt;br&gt;        // For every column, display it's meta data.&lt;br&gt;&lt;br&gt;        int i = 1; // Initialize loop counter&lt;br&gt;        while (i &amp;lt;= colCount)&lt;br&gt;        {&lt;br&gt;            // Demonstrating all methods for retrieving column meta data&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println(" Column " + i);&lt;br&gt;            System.out.println(" ------------ ");&lt;br&gt;            // Display the suggested column title for use in&lt;br&gt;            // printouts and displays&lt;br&gt;            System.out.println(" Column label: "&lt;br&gt;                               + rsmd.getColumnLabel(i));&lt;br&gt;            // Display the column name&lt;br&gt;            System.out.println(" Column name: "&lt;br&gt;                               + rsmd.getColumnName(i));&lt;br&gt;            // Display the SQL type of a column.&lt;br&gt;            System.out.println(" Column type: "&lt;br&gt;                               + rsmd.getColumnType(i));&lt;br&gt;            // Display the type name of a column&lt;br&gt;            System.out.println(" Column type name: "&lt;br&gt;                               + rsmd.getColumnTypeName(i));&lt;br&gt;            // Display information on whether NULL values are allowed&lt;br&gt;            System.out.println(" NULLs allowed: "&lt;br&gt;                               + rsmd.isNullable(i));&lt;br&gt;            // Display the normal maximum width of a column in characters.&lt;br&gt;            System.out.println(" Maximum character width: "&lt;br&gt;                               + rsmd.getColumnDisplaySize(i));&lt;br&gt;            // Display precision: the number of decimal digits&lt;br&gt;            // Note: default value is 0.&lt;br&gt;            System.out.println(" Column precision"&lt;br&gt;                               + " (number of decimal places): "&lt;br&gt;                               + rsmd.getPrecision(i));&lt;br&gt;            // Display the number of digits to the right of the&lt;br&gt;            // decimal point. Note: default value is 0.&lt;br&gt;            System.out.println(" Precision to the right of"&lt;br&gt;                               + " the decimal point: "&lt;br&gt;                               + rsmd.getScale(i));&lt;br&gt;            // Increment column counter&lt;br&gt;            i++;&lt;br&gt;        }&lt;br&gt;    } // end displayRSMetaData(...)&lt;br&gt;&lt;br&gt;&lt;br&gt;    private static void createClobFile(Clob clob, String filename)&lt;br&gt;        throws SQLException&lt;br&gt;    {&lt;br&gt;        // This function will read in the Clob data one character at a time&lt;br&gt;        // and write it to the file designated by the string 'filename'&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println("Clob of length = " + clob.length() + " bytes. ");&lt;br&gt;            // Display the first |DISPLAYSIZE| characters&lt;br&gt;            // Set the character data retrieval limit for the display of the&lt;br&gt;            // initial DISPLAYSIZE bytes and retrieve data.&lt;br&gt;            int dispsize = (int)(Math.min(clob.length(), (long)DISPLAYSIZE));&lt;br&gt;            String display = clob.getSubString(1, dispsize);&lt;br&gt;            System.out.println(" First " + DISPLAYSIZE + " bytes (if available): "&lt;br&gt;                               + display);&lt;br&gt;&lt;br&gt;            // Create a file writer object to send clob data to a file&lt;br&gt;            FileWriter fos = new FileWriter(filename);&lt;br&gt;            // Create a character stream reader object to retrieve data&lt;br&gt;            Reader c = clob.getCharacterStream();&lt;br&gt;&lt;br&gt;            // Initializing a buffer for reading in clob data&lt;br&gt;            char[] charBuffer = new char[BUFFERSIZE];&lt;br&gt;            // Initialize a dummy variable representing number of characters&lt;br&gt;            // read into the buffer&lt;br&gt;            int charCount = 0;&lt;br&gt;            // While data is available, read it into a buffer and read out&lt;br&gt;            // to the designated file&lt;br&gt;            while ( (charCount = c.read(charBuffer, 0, BUFFERSIZE)) != -1)&lt;br&gt;            {&lt;br&gt;                // Write out the retrieved character data&lt;br&gt;                fos.write(charBuffer, 0, charCount);&lt;br&gt;            }&lt;br&gt;            // Display success message&lt;br&gt;            System.out.println(" File creation completed successfully. Please "&lt;br&gt;                               + "refer to the following file: " + filename);&lt;br&gt;            // close file/data streams&lt;br&gt;            c.close();&lt;br&gt;            fos.close();&lt;br&gt;        }&lt;br&gt;        catch (IOException ex)&lt;br&gt;        {&lt;br&gt;            System.out.println(" Error writing Clob : " + ex.getMessage());&lt;br&gt;            ex.printStackTrace();&lt;br&gt;        }&lt;br&gt;    } // End createClobFile(...)&lt;br&gt;&lt;br&gt;&lt;br&gt;    private static void createBlobFile(Blob blob, String filename, int litDisplay)&lt;br&gt;    throws SQLException&lt;br&gt;    {&lt;br&gt;        // This function will read in the Blob data one byte at a time&lt;br&gt;        // and write it to the file designated by the string 'filename'.&lt;br&gt;        // A format in which the binary data will be stored to the file&lt;br&gt;        // will depend on the manner in which that data was inserted.&lt;br&gt;        // The litDisplay flag will be used to decide whether a literal&lt;br&gt;        // representation of the binary data is required, in which case,&lt;br&gt;        // this function will write the character representation of the binary data&lt;br&gt;        // (in hexadecimal format) into the file designated by the string 'filename'&lt;br&gt;&lt;br&gt;        // If all parameter values are valid&lt;br&gt;        if ((litDisplay == 0) || (litDisplay == 1))&lt;br&gt;        {&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Display blob zize information&lt;br&gt;                System.out.println(" Blob of length = " + blob.length() + " bytes.");&lt;br&gt;                // Display the first |DISPLAYSIZE| characters&lt;br&gt;                // Set the character data retrieval limit for the display of the&lt;br&gt;                // initial DISPLAYSIZE bytes and retrieve data&lt;br&gt;                int dispsize = (int)(Math.min(blob.length(), (long)DISPLAYSIZE));&lt;br&gt;                byte [] disp = blob.getBytes(1, dispsize);&lt;br&gt;                String dispStr = "";&lt;br&gt;                for (int i = 0; i &amp;lt; dispsize; i++)&lt;br&gt;                {&lt;br&gt;                    int val = disp[i] &amp;amp; 0xFF;&lt;br&gt;                    // Display the character representation of retrieved data&lt;br&gt;                    if (val &amp;lt; 16)&lt;br&gt;                    {    dispStr += '0' + Integer.toHexString(val).toUpperCase();}&lt;br&gt;                    else&lt;br&gt;                    {    dispStr += Integer.toHexString(val).toUpperCase();}&lt;br&gt;                }&lt;br&gt;                System.out.println(" First " + DISPLAYSIZE + " bytes (if available): "&lt;br&gt;                                   + dispStr);&lt;br&gt;&lt;br&gt;                // If a conversion into character representation is required&lt;br&gt;                if (litDisplay == 1)&lt;br&gt;                {&lt;br&gt;                    writeBlobCharRep(blob, filename + ".txt");&lt;br&gt;                }&lt;br&gt;                else // If a straightforward transfer of binary data is required&lt;br&gt;                {&lt;br&gt;                    // Create a file output stream object to send blob data to a file&lt;br&gt;                    FileOutputStream fos = new FileOutputStream(filename);&lt;br&gt;                    // Create a binary input stream object to retrieve data&lt;br&gt;                    InputStream b = blob.getBinaryStream();&lt;br&gt;&lt;br&gt;                    // Initializing a buffer for reading in blob data&lt;br&gt;                    byte[] byteBuffer = new byte[BUFFERSIZE];&lt;br&gt;                    // Initialize a dummy variable representing number of bytes&lt;br&gt;                    // read into the buffer&lt;br&gt;                    int byteCount = 0;&lt;br&gt;                    // While data is available, read it into a buffer and read out&lt;br&gt;                    // to the designated file&lt;br&gt;                    while ( (byteCount = b.read(byteBuffer, 0, BUFFERSIZE)) != -1)&lt;br&gt;                    {&lt;br&gt;                        // Write out the retrieved character data&lt;br&gt;                        fos.write(byteBuffer, 0, byteCount);&lt;br&gt;                    }&lt;br&gt;                    // Display success message&lt;br&gt;                    System.out.println(" File creation completed successfully."&lt;br&gt;                        + " Please refer to the following file: " + filename);&lt;br&gt;                    // close file/data streams&lt;br&gt;                    b.close();&lt;br&gt;                    fos.close();&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            catch (IOException ex)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error writing Blob : " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;            }&lt;br&gt;        }&lt;br&gt;        else // if some other parameter value was passed&lt;br&gt;        {&lt;br&gt;            throw new IllegalArgumentException(&lt;br&gt;                " Invalid parameter value. litDisplay must hold a value of 0 or 1.");&lt;br&gt;        }&lt;br&gt;    } // End createBlobFile(...)&lt;br&gt;&lt;br&gt;&lt;br&gt;    private static void writeBlobCharRep(Blob blob, String filename)&lt;br&gt;        throws SQLException&lt;br&gt;    {&lt;br&gt;        // This function will read in the Blob data one byte at a time&lt;br&gt;        // and will write the character representation of the binary data&lt;br&gt;        // (in hexadecimal format) into the file designated by the string 'filename'&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            // Create a file writer object to send character data to a file&lt;br&gt;            FileWriter fos = new FileWriter(filename);&lt;br&gt;            // Create a binary input stream object to retrieve data&lt;br&gt;            InputStream b = blob.getBinaryStream();&lt;br&gt;&lt;br&gt;            // Initialize a buffer for reading in blob data&lt;br&gt;            byte[] byteBuffer = new byte[BUFFERSIZE];&lt;br&gt;            // Initialize a string to hold character representation of&lt;br&gt;            // binary data&lt;br&gt;            String byteStr = "";&lt;br&gt;            // Initialize a dummy variable representing number of bytes&lt;br&gt;            // read into the buffer&lt;br&gt;            int byteCount = 0;&lt;br&gt;            // While data is available, read it into a buffer and write out&lt;br&gt;            // its character representatin&lt;br&gt;            while ( (byteCount = b.read(byteBuffer, 0, BUFFERSIZE)) != -1)&lt;br&gt;            {&lt;br&gt;                for (int i = 0; i &amp;lt; byteCount; i++)&lt;br&gt;                {&lt;br&gt;                    // Isolate the integer value of the byte read&lt;br&gt;                    // Note that a conversion to an unsigned integer&lt;br&gt;                    // has been made.&lt;br&gt;                    int val = byteBuffer[i] &amp;amp; 0xFF;&lt;br&gt;                    if (val &amp;lt; 16)&lt;br&gt;                    {   byteStr += '0' + Integer.toHexString(val).toUpperCase();}&lt;br&gt;                    else&lt;br&gt;                    {   byteStr += Integer.toHexString(val).toUpperCase();}&lt;br&gt;                }&lt;br&gt;                // Write out the representation of the retrieved binary data&lt;br&gt;                fos.write(byteStr);&lt;br&gt;            }&lt;br&gt;            // Display success message&lt;br&gt;            System.out.println(" File creation completed successfully. Please "&lt;br&gt;                               + "refer to the following file: " + filename);&lt;br&gt;            // close file/data streams&lt;br&gt;            b.close();&lt;br&gt;            fos.close();&lt;br&gt;        }&lt;br&gt;        catch (IOException ex)&lt;br&gt;        {&lt;br&gt;            System.out.println(" Error writing Blob : " + ex.getMessage());&lt;br&gt;            ex.printStackTrace();&lt;br&gt;        }&lt;br&gt;    } // End writeBlobCharRep(...)&lt;br&gt;&lt;br&gt;} // End class T20302JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:06:34 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20303JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9342-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20303JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata SQL using the JDBC API by&lt;br&gt;//              performing a SELECT query on the table using&lt;br&gt;//              parameter markers.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Select a row from table employee2,&lt;br&gt;//                   retrieving LOB column values&lt;br&gt;//                -  Display the medatata associated with the&lt;br&gt;//                   column values of the selected row.&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.PreparedStatement,&lt;br&gt;//            java.sql.PreparedStatement.executeQuery,&lt;br&gt;//            java.sql.ResultSet, java.sql.ResultSet.getMetaData,&lt;br&gt;//            java.sql.ResultSetMetaData&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;import java.io.*;&lt;br&gt;&lt;br&gt;public class T20303JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create and drop tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;    // Define maximum buffer size for reading in/writing out data&lt;br&gt;    private static final int BUFFERSIZE = 100;&lt;br&gt;    // Constant defining the number of initial bytes displayed to the user&lt;br&gt;    private static final int DISPLAYSIZE = 50;&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Creation of the SQL SELECT statement and its parameter value&lt;br&gt;        String sSelect =&lt;br&gt;            "SELECT empName, empID, empResume, empPhoto, empRawPhotoData " +&lt;br&gt;            "FROM employee2 WHERE empDept = ? ORDER BY empName";&lt;br&gt;        String department = "Product Development";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20303JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            //Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                System.out.println(" Preparing this SQL statement for" +&lt;br&gt;                                   " execution: " + sSelect);&lt;br&gt;                // Creating a prepared statement object from an active connection&lt;br&gt;                PreparedStatement pstmt = con.prepareStatement(sSelect);&lt;br&gt;                System.out.println(" Prepared statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    // Set parameter values indicated by ? (dynamic update)&lt;br&gt;                    System.out.println(" Using setString() to bind value "&lt;br&gt;                                       + "to the parameter marker:");&lt;br&gt;                    pstmt.setString(1, department);&lt;br&gt;                    System.out.println(" FIRST ? set to: " + department);&lt;br&gt;&lt;br&gt;                    // The following code will perform a SELECT query.&lt;br&gt;                    // Clob/Blob values will be retrieved from the database&lt;br&gt;                    // and written to the specified files.&lt;br&gt;                    // For those values of empPhoto which were inserted using&lt;br&gt;                    // binary literals, writing the information out into a jpeg&lt;br&gt;                    // format is meaningless. For these cases, a character&lt;br&gt;                    // representation of the binary data (in hex format)&lt;br&gt;                    // will be displayed instead and written into a text file.&lt;br&gt;                    // A given number of first bytes of data will be displayed,&lt;br&gt;                    // bounded from above by the DISPLAYSIZE constant.&lt;br&gt;&lt;br&gt;                    // Submit a query, creating a result set object&lt;br&gt;                    ResultSet rs = pstmt.executeQuery();&lt;br&gt;                    // Display result set table column meta data&lt;br&gt;                    displayRSMetaData(rs);&lt;br&gt;&lt;br&gt;                    // Extract and display result set table data&lt;br&gt;                    System.out.println();&lt;br&gt;                    System.out.println(" DISPLAYING RESULT SET DATA:");&lt;br&gt;                    System.out.println(" ---------------------------");&lt;br&gt;&lt;br&gt;                    int rowCount = 0;&lt;br&gt;                    while(rs.next())&lt;br&gt;                    {&lt;br&gt;                        // Advance row counter&lt;br&gt;                        rowCount++;&lt;br&gt;&lt;br&gt;                        // Extract column values&lt;br&gt;                        String name = rs.getString("empName");&lt;br&gt;                        int id = rs.getInt("empID");&lt;br&gt;                        Clob clob = rs.getClob("empResume");&lt;br&gt;                        Blob blob = rs.getBlob("empPhoto");&lt;br&gt;                        int isRaw =&lt;br&gt;                            new Byte(rs.getByte("empRawPhotoData")).intValue();&lt;br&gt;                        // Create file names for writing out BLOB/CLOB values.&lt;br&gt;                        // Refer to the note above for file format explanation.&lt;br&gt;                        String cfilename = id + "resumeT20303.txt";&lt;br&gt;                        String bfilename = id + "photoT20303.jpg";&lt;br&gt;&lt;br&gt;                        System.out.println(" ROW " + rowCount);&lt;br&gt;                        System.out.println(" ----------");&lt;br&gt;                        System.out.println(" COLUMN empName : " + name);&lt;br&gt;                        System.out.println(" COLUMN empID : " + id);&lt;br&gt;                        System.out.print(" COLUMN empResume : ");&lt;br&gt;                        createClobFile(clob, cfilename);&lt;br&gt;                        System.out.print(" COLUMN empPhoto : ");&lt;br&gt;                        createBlobFile(blob, bfilename, isRaw);&lt;br&gt;                        System.out.println(" COLUMN empRawPhotoData : " + isRaw);&lt;br&gt;                    }&lt;br&gt;                    System.out.println(" " + rowCount + " Row(s) returned.");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    pstmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20303JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;&lt;br&gt;    private static void displayRSMetaData(ResultSet rs) throws SQLException&lt;br&gt;    {&lt;br&gt;        // This code will demonstrate all available methods for&lt;br&gt;        // retrieving table column meta data.&lt;br&gt;&lt;br&gt;        // Retrieve result set meta data to get information on the columns&lt;br&gt;        ResultSetMetaData rsmd = rs.getMetaData();&lt;br&gt;        // Retrieve the number of columns returned&lt;br&gt;        int colCount = rsmd.getColumnCount();&lt;br&gt;        System.out.println(" DISPLAYING RESULT SET COLUMN META DATA:");&lt;br&gt;        System.out.println(" -----------------------------------------");&lt;br&gt;        System.out.println(" The resulting table has " + colCount + " columns:");&lt;br&gt;        // For every column, display it's meta data.&lt;br&gt;&lt;br&gt;        int i = 1; // Initialize loop counter&lt;br&gt;        while (i &amp;lt;= colCount)&lt;br&gt;        {&lt;br&gt;            // Demonstrating all methods for retrieving column meta data&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println(" Column " + i);&lt;br&gt;            System.out.println(" ------------ ");&lt;br&gt;            // Display the suggested column title for use in&lt;br&gt;            // printouts and displays&lt;br&gt;            System.out.println(" Column label: "&lt;br&gt;                               + rsmd.getColumnLabel(i));&lt;br&gt;            // Display the column name&lt;br&gt;            System.out.println(" Column name: "&lt;br&gt;                               + rsmd.getColumnName(i));&lt;br&gt;            // Display the SQL type of a column.&lt;br&gt;            System.out.println(" Column type: "&lt;br&gt;                               + rsmd.getColumnType(i));&lt;br&gt;            // Display the type name of a column&lt;br&gt;            System.out.println(" Column type name: "&lt;br&gt;                               + rsmd.getColumnTypeName(i));&lt;br&gt;            // Display information on whether NULL values are allowed&lt;br&gt;            System.out.println(" NULLs allowed: "&lt;br&gt;                               + rsmd.isNullable(i));&lt;br&gt;            // Display the normal maximum width of a column in characters.&lt;br&gt;            System.out.println(" Maximum character width: "&lt;br&gt;                               + rsmd.getColumnDisplaySize(i));&lt;br&gt;            // Display precision: the number of decimal digits&lt;br&gt;            // Note: default value is 0.&lt;br&gt;            System.out.println(" Column precision"&lt;br&gt;                               + " (number of decimal places): "&lt;br&gt;                               + rsmd.getPrecision(i));&lt;br&gt;            // Display the number of digits to the right of the&lt;br&gt;            // decimal point. Note: default value is 0.&lt;br&gt;            System.out.println(" Precision to the right of"&lt;br&gt;                               + " the decimal point: "&lt;br&gt;                               + rsmd.getScale(i));&lt;br&gt;            // Increment column counter&lt;br&gt;            i++;&lt;br&gt;        }&lt;br&gt;    } // end displayRSMetaData(...)&lt;br&gt;&lt;br&gt;&lt;br&gt;    private static void createClobFile(Clob clob, String filename)&lt;br&gt;        throws SQLException&lt;br&gt;    {&lt;br&gt;        // This function will read in the Clob data one character at a time&lt;br&gt;        // and write it to the file designated by the string 'filename'&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println("Clob of length = " + clob.length() + " bytes. ");&lt;br&gt;            // Display the first |DISPLAYSIZE| characters&lt;br&gt;            // Set the character data retrieval limit for the display of the&lt;br&gt;            // initial DISPLAYSIZE bytes and retrieve data.&lt;br&gt;            int dispsize = (int)(Math.min(clob.length(), (long)DISPLAYSIZE));&lt;br&gt;            String display = clob.getSubString(1, dispsize);&lt;br&gt;            System.out.println(" First " + DISPLAYSIZE + " bytes (if available): "&lt;br&gt;                               + display);&lt;br&gt;&lt;br&gt;            // Create a file writer object to send clob data to a file&lt;br&gt;            FileWriter fos = new FileWriter(filename);&lt;br&gt;            // Create a character stream reader object to retrieve data&lt;br&gt;            Reader c = clob.getCharacterStream();&lt;br&gt;&lt;br&gt;            // Initializing a buffer for reading in clob data&lt;br&gt;            char[] charBuffer = new char[BUFFERSIZE];&lt;br&gt;            // Initialize a dummy variable representing number of characters&lt;br&gt;            // read into the buffer&lt;br&gt;            int charCount = 0;&lt;br&gt;            // While data is available, read it into a buffer and read out&lt;br&gt;            // to the designated file&lt;br&gt;            while ( (charCount = c.read(charBuffer, 0, BUFFERSIZE)) != -1)&lt;br&gt;            {&lt;br&gt;                // Write out the retrieved character data&lt;br&gt;                fos.write(charBuffer, 0, charCount);&lt;br&gt;            }&lt;br&gt;            // Display success message&lt;br&gt;            System.out.println(" File creation completed successfully. Please "&lt;br&gt;                               + "refer to the following file: " + filename);&lt;br&gt;            // close file/data streams&lt;br&gt;            c.close();&lt;br&gt;            fos.close();&lt;br&gt;        }&lt;br&gt;        catch (IOException ex)&lt;br&gt;        {&lt;br&gt;            System.out.println(" Error writing Clob : " + ex.getMessage());&lt;br&gt;            ex.printStackTrace();&lt;br&gt;        }&lt;br&gt;    } // End createClobFile(...)&lt;br&gt;&lt;br&gt;&lt;br&gt;    private static void createBlobFile(Blob blob, String filename, int litDisplay)&lt;br&gt;    throws SQLException&lt;br&gt;    {&lt;br&gt;        // This function will read in the Blob data one byte at a time&lt;br&gt;        // and write it to the file designated by the string 'filename'.&lt;br&gt;        // A format in which the binary data will be stored to the file&lt;br&gt;        // will depend on the manner in which that data was inserted.&lt;br&gt;        // The litDisplay flag will be used to decide whether a literal&lt;br&gt;        // representation of the binary data is required, in which case,&lt;br&gt;        // this function will write the character representation of the binary data&lt;br&gt;        // (in hexadecimal format) into the file designated by the string 'filename'&lt;br&gt;&lt;br&gt;        // If all parameter values are valid&lt;br&gt;        if ((litDisplay == 0) || (litDisplay == 1))&lt;br&gt;        {&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Display blob zize information&lt;br&gt;                System.out.println(" Blob of length = " + blob.length() + " bytes.");&lt;br&gt;                // Display the first |DISPLAYSIZE| characters&lt;br&gt;                // Set the character data retrieval limit for the display of the&lt;br&gt;                // initial DISPLAYSIZE bytes and retrieve data&lt;br&gt;                int dispsize = (int)(Math.min(blob.length(), (long)DISPLAYSIZE));&lt;br&gt;                byte [] disp = blob.getBytes(1, dispsize);&lt;br&gt;                String dispStr = "";&lt;br&gt;                for (int i = 0; i &amp;lt; dispsize; i++)&lt;br&gt;                {&lt;br&gt;                    int val = disp[i] &amp;amp; 0xFF;&lt;br&gt;                    // Display the character representation of retrieved data&lt;br&gt;                    if (val &amp;lt; 16)&lt;br&gt;                    {    dispStr += '0' + Integer.toHexString(val).toUpperCase();}&lt;br&gt;                    else&lt;br&gt;                    {    dispStr += Integer.toHexString(val).toUpperCase();}&lt;br&gt;                }&lt;br&gt;                System.out.println(" First " + DISPLAYSIZE + " bytes (if available): "&lt;br&gt;                                   + dispStr);&lt;br&gt;&lt;br&gt;                // If a conversion into character representation is required&lt;br&gt;                if (litDisplay == 1)&lt;br&gt;                {&lt;br&gt;                    writeBlobCharRep(blob, filename + ".txt");&lt;br&gt;                }&lt;br&gt;                else // If a straightforward transfer of binary data is required&lt;br&gt;                {&lt;br&gt;                    // Create a file output stream object to send blob data to a file&lt;br&gt;                    FileOutputStream fos = new FileOutputStream(filename);&lt;br&gt;                    // Create a binary input stream object to retrieve data&lt;br&gt;                    InputStream b = blob.getBinaryStream();&lt;br&gt;&lt;br&gt;                    // Initializing a buffer for reading in blob data&lt;br&gt;                    byte[] byteBuffer = new byte[BUFFERSIZE];&lt;br&gt;                    // Initialize a dummy variable representing number of bytes&lt;br&gt;                    // read into the buffer&lt;br&gt;                    int byteCount = 0;&lt;br&gt;                    // While data is available, read it into a buffer and read out&lt;br&gt;                    // to the designated file&lt;br&gt;                    while ( (byteCount = b.read(byteBuffer, 0, BUFFERSIZE)) != -1)&lt;br&gt;                    {&lt;br&gt;                        // Write out the retrieved character data&lt;br&gt;                        fos.write(byteBuffer, 0, byteCount);&lt;br&gt;                    }&lt;br&gt;                    // Display success message&lt;br&gt;                    System.out.println(" File creation completed successfully."&lt;br&gt;                        + " Please refer to the following file: " + filename);&lt;br&gt;                    // close file/data streams&lt;br&gt;                    b.close();&lt;br&gt;                    fos.close();&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            catch (IOException ex)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error writing Blob : " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;            }&lt;br&gt;        }&lt;br&gt;        else // if some other parameter value was passed&lt;br&gt;        {&lt;br&gt;            throw new IllegalArgumentException(&lt;br&gt;                " Invalid parameter value. litDisplay must hold a value of 0 or 1.");&lt;br&gt;        }&lt;br&gt;    } // End createBlobFile(...)&lt;br&gt;&lt;br&gt;&lt;br&gt;    private static void writeBlobCharRep(Blob blob, String filename)&lt;br&gt;        throws SQLException&lt;br&gt;    {&lt;br&gt;        // This function will read in the Blob data one byte at a time&lt;br&gt;        // and will write the character representation of the binary data&lt;br&gt;        // (in hexadecimal format) into the file designated by the string 'filename'&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            // Create a file writer object to send character data to a file&lt;br&gt;            FileWriter fos = new FileWriter(filename);&lt;br&gt;            // Create a binary input stream object to retrieve data&lt;br&gt;            InputStream b = blob.getBinaryStream();&lt;br&gt;&lt;br&gt;            // Initialize a buffer for reading in blob data&lt;br&gt;            byte[] byteBuffer = new byte[BUFFERSIZE];&lt;br&gt;            // Initialize a string to hold character representation of&lt;br&gt;            // binary data&lt;br&gt;            String byteStr = "";&lt;br&gt;            // Initialize a dummy variable representing number of bytes&lt;br&gt;            // read into the buffer&lt;br&gt;            int byteCount = 0;&lt;br&gt;            // While data is available, read it into a buffer and write out&lt;br&gt;            // its character representatin&lt;br&gt;            while ( (byteCount = b.read(byteBuffer, 0, BUFFERSIZE)) != -1)&lt;br&gt;            {&lt;br&gt;                for (int i = 0; i &amp;lt; byteCount; i++)&lt;br&gt;                {&lt;br&gt;                    // Isolate the integer value of the byte read&lt;br&gt;                    // Note that a conversion to an unsigned integer&lt;br&gt;                    // has been made.&lt;br&gt;                    int val = byteBuffer[i] &amp;amp; 0xFF;&lt;br&gt;                    if (val &amp;lt; 16)&lt;br&gt;                    {   byteStr += '0' + Integer.toHexString(val).toUpperCase();}&lt;br&gt;                    else&lt;br&gt;                    {   byteStr += Integer.toHexString(val).toUpperCase();}&lt;br&gt;                }&lt;br&gt;                // Write out the representation of the retrieved binary data&lt;br&gt;                fos.write(byteStr);&lt;br&gt;            }&lt;br&gt;            // Display success message&lt;br&gt;            System.out.println(" File creation completed successfully. Please "&lt;br&gt;                               + "refer to the following file: " + filename);&lt;br&gt;            // close file/data streams&lt;br&gt;            b.close();&lt;br&gt;            fos.close();&lt;br&gt;        }&lt;br&gt;        catch (IOException ex)&lt;br&gt;        {&lt;br&gt;            System.out.println(" Error writing Blob : " + ex.getMessage());&lt;br&gt;            ex.printStackTrace();&lt;br&gt;        }&lt;br&gt;    } // End writeBlobCharRep(...)&lt;br&gt;&lt;br&gt;} // End class T20303JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:06:21 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20304JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9341-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2005-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20304JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata SQL using the JDBC API by&lt;br&gt;//              performing a SELECT query on the table using&lt;br&gt;//              parameter markers.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Prepare a statement which selects a row&lt;br&gt;//                   from table employee&lt;br&gt;//                -  Display the medatata associated with the&lt;br&gt;//                   column values of the prepared statement&lt;br&gt;//                -  Execute the select statement&lt;br&gt;//                -  Display the results&lt;br&gt;//                -  Disconnect&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.PreparedStatement,&lt;br&gt;//            java.sql.PreparedStatement.getMetaData,&lt;br&gt;//            java.sql.PreparedStatement.executeQuery,&lt;br&gt;//            java.sql.ResultSet,&lt;br&gt;//            java.sql.ResultSetMetaData&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20304JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create and drop tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Creation of the SQL SELECT statement and its parameter value&lt;br&gt;        String sSelect = "SELECT empID, empName, empJob FROM employee"&lt;br&gt;                       + " WHERE empDept = ? ORDER BY empID";&lt;br&gt;        String selectCond = "Product Development";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20304JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                System.out.println(" Preparing this SQL statement for execution: "&lt;br&gt;                                   + sSelect);&lt;br&gt;                // Creating a prepared statement object from an active connection&lt;br&gt;                PreparedStatement pstmt = con.prepareStatement(sSelect);&lt;br&gt;                System.out.println(" Prepared statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    System.out.println(" Display the PreparedStatement meta data"&lt;br&gt;                        + " before executing the request");&lt;br&gt;                    displayRSMetaData(pstmt.getMetaData());&lt;br&gt;                    System.out.println();&lt;br&gt;&lt;br&gt;                    // Set parameter values indicated by ? (dynamic update)&lt;br&gt;                    System.out.println(" Using setString() to bind value to " +&lt;br&gt;                                       "the parameter marker:");&lt;br&gt;                    pstmt.setString(1, selectCond);&lt;br&gt;                    System.out.println(" FIRST ? set to: " + selectCond);&lt;br&gt;&lt;br&gt;                    // The following code will perform a SELECT query&lt;br&gt;                    // on the table.&lt;br&gt;&lt;br&gt;                    // Submit a query, creating a result set object&lt;br&gt;                    ResultSet rs = pstmt.executeQuery();&lt;br&gt;&lt;br&gt;                    // Extract and display result set table data&lt;br&gt;                    System.out.println();&lt;br&gt;                    System.out.println(" DISPLAYING RESULT SET DATA:");&lt;br&gt;                    System.out.println(" ---------------------------");&lt;br&gt;&lt;br&gt;                    int rowCount = 0;   // result set row counter&lt;br&gt;                    int numData;        // placeholder for integer data&lt;br&gt;                    String charData;    // placeholder for character data&lt;br&gt;&lt;br&gt;                    // iterate through all returned rows and display them&lt;br&gt;                    while (rs.next())&lt;br&gt;                    {&lt;br&gt;                        rowCount++;   // increment retrieved row counter&lt;br&gt;                        System.out.println();&lt;br&gt;                        System.out.println(" ROW " + rowCount + ": ");&lt;br&gt;                        // retrieve and display first column value&lt;br&gt;                        numData = rs.getInt(1);&lt;br&gt;                        System.out.println(" Employee ID: " + numData);&lt;br&gt;                        // retrieve and display second column value&lt;br&gt;                        charData = rs.getString(2);&lt;br&gt;                        System.out.println(" Name: " + charData);&lt;br&gt;                        // retrieve and display third column value&lt;br&gt;                        charData = rs.getString(3);&lt;br&gt;                        System.out.println(" Job Description: " + charData);&lt;br&gt;                   }&lt;br&gt;                   System.out.println(" " + rowCount + " Row(s) returned.");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    pstmt.close();&lt;br&gt;                    System.out.println(" PreparedStatement object closed.");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20304JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;&lt;br&gt;    private static void displayRSMetaData(ResultSetMetaData rsmd) throws SQLException&lt;br&gt;    {&lt;br&gt;        // This code will demonstrate all available methods for&lt;br&gt;        // retrieving table column meta data.&lt;br&gt;&lt;br&gt;        // Retrieve the number of columns returned&lt;br&gt;        int colCount = rsmd.getColumnCount();&lt;br&gt;        System.out.println(&lt;br&gt;            " DISPLAYING RESULT SET COLUMN META DATA BEFORE EXECUTING STATEMENT:");&lt;br&gt;        System.out.println(" -----------------------------------------");&lt;br&gt;        System.out.println(" The resulting table has " + colCount + " columns:");&lt;br&gt;        // For every column, display it's meta data.&lt;br&gt;&lt;br&gt;        int i = 1; // Initialize loop counter&lt;br&gt;        while (i &amp;lt;= colCount)&lt;br&gt;        {&lt;br&gt;            // Demonstrating all methods for retrieving column meta data&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println(" Column " + i);&lt;br&gt;            System.out.println(" ------------ ");&lt;br&gt;            // Display the suggested column title for use in&lt;br&gt;            // printouts and displays&lt;br&gt;            System.out.println(" Column label: "&lt;br&gt;                               + rsmd.getColumnLabel(i));&lt;br&gt;            // Display the column name&lt;br&gt;            System.out.println(" Column name: "&lt;br&gt;                               + rsmd.getColumnName(i));&lt;br&gt;            // Display the SQL type of a column.&lt;br&gt;            System.out.println(" Column type: "&lt;br&gt;                               + rsmd.getColumnType(i));&lt;br&gt;            // Display the type name of a column&lt;br&gt;            System.out.println(" Column type name: "&lt;br&gt;                               + rsmd.getColumnTypeName(i));&lt;br&gt;            // Display information on whether NULL values are allowed&lt;br&gt;            System.out.println(" NULLs allowed: "&lt;br&gt;                               + rsmd.isNullable(i));&lt;br&gt;            // Display the normal maximum width of a column in characters.&lt;br&gt;            System.out.println(" Maximum character width: "&lt;br&gt;                               + rsmd.getColumnDisplaySize(i));&lt;br&gt;            // Display precision: the number of decimal digits&lt;br&gt;            // Note: default value is 0.&lt;br&gt;            System.out.println(" Column precision"&lt;br&gt;                               + " (number of decimal places): "&lt;br&gt;                               + rsmd.getPrecision(i));&lt;br&gt;            // Display the number of digits to the right of the&lt;br&gt;            // decimal point. Note: default value is 0.&lt;br&gt;            System.out.println(" Precision to the right of"&lt;br&gt;                               + " the decimal point: "&lt;br&gt;                               + rsmd.getScale(i));&lt;br&gt;            // Increment column counter&lt;br&gt;            i++;&lt;br&gt;        }&lt;br&gt;    } // end displayRSMetaData(...)&lt;br&gt;} // End class T20304JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:06:06 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20305JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9340-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2006-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//              TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20305JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate the JDBC API for retrieving information&lt;br&gt;//              about the types and properties of the parameters in&lt;br&gt;//              a PreparedStatement.&lt;br&gt;//&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Prepare an SQL statement&lt;br&gt;//                -  Obtain and Display Parameter MetaData&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection,&lt;br&gt;//            java.sql.PreparedStatement,&lt;br&gt;//            java.sql.PreparedStatement.getParameterMetaData,&lt;br&gt;//            java.sql.ParameterMetaData.getParameterClassName,&lt;br&gt;//            java.sql.ParameterMetaData.getParameterCount,&lt;br&gt;//            java.sql.ParameterMetaData.getParameterMode,&lt;br&gt;//            java.sql.ParameterMetaData.getParameterType,&lt;br&gt;//            java.sql.ParameterMetaData.getParameterTypeName,&lt;br&gt;//            java.sql.ParameterMetaData.getPrecision,&lt;br&gt;//            java.sql.ParameterMetaData.getScale,&lt;br&gt;//            java.sql.ParameterMetaData.isNullable,&lt;br&gt;//            java.sql.ParameterMetaData.isSigned&lt;br&gt;//&lt;br&gt;//  Version: Created for Teradata V2R6.2&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20305JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Insert statement with parameters. Using this to create a PreparedStatement,&lt;br&gt;        // we can determine the properties of each parameter.&lt;br&gt;        String sInsert = "INSERT INTO employee2 VALUES(?,?,?,?,?,?,?)";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20305JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a PreparedStatement object from an active connection&lt;br&gt;                PreparedStatement prepStmt = con.prepareStatement(sInsert);&lt;br&gt;                System.out.println(" PreparedStatement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    // Create a ParameterMetaData object representing the&lt;br&gt;                    // properties of the PreparedStatement Parameters&lt;br&gt;                    ParameterMetaData parmMetaData = prepStmt.getParameterMetaData();&lt;br&gt;&lt;br&gt;                    // Retrieve the number of parameters returned&lt;br&gt;                    int parmCount = parmMetaData.getParameterCount();&lt;br&gt;                    System.out.println(" This PreparedStatement  has " + parmCount&lt;br&gt;                        + " parameters.");&lt;br&gt;&lt;br&gt;                    // For every parameter, display it's information.&lt;br&gt;                    System.out.println(" Displaying parameter information: ");&lt;br&gt;&lt;br&gt;                    int i = 1;     // Initialize loop counter&lt;br&gt;                    while(i &amp;lt;= parmCount)&lt;br&gt;                    {&lt;br&gt;                        // This code will demonstrate all available methods for&lt;br&gt;                        // retrieving parameter meta data.&lt;br&gt;&lt;br&gt;                        System.out.println();&lt;br&gt;                        System.out.println(" Parameter " + i);&lt;br&gt;                        System.out.println(" ------------ ");&lt;br&gt;                        // Display the parameter's Java Class Name&lt;br&gt;                        System.out.println(" Parameter ClassName: "&lt;br&gt;                                           + parmMetaData.getParameterClassName(i));&lt;br&gt;                        // Display the parameter's Mode&lt;br&gt;                        String modeText = "";&lt;br&gt;                        switch (parmMetaData.getParameterMode(i)) {&lt;br&gt;                        case ParameterMetaData.parameterModeIn:&lt;br&gt;                          modeText += "ModeIn";&lt;br&gt;                          break;&lt;br&gt;                        case ParameterMetaData.parameterModeInOut:&lt;br&gt;                          modeText += "ModeInOut";&lt;br&gt;                          break;&lt;br&gt;                        case ParameterMetaData.parameterModeOut:&lt;br&gt;                          modeText += "ModeOut";&lt;br&gt;                          break;&lt;br&gt;                        case ParameterMetaData.parameterModeUnknown:&lt;br&gt;                          modeText += "ModeUnknown";&lt;br&gt;                          break;&lt;br&gt;                        default:&lt;br&gt;                          break;&lt;br&gt;                        }&lt;br&gt;                        System.out.println(" Parameter Mode: "&lt;br&gt;                                           + modeText);&lt;br&gt;&lt;br&gt;                        // Display the SQL type of the parameter.&lt;br&gt;                        System.out.println(" Parameter type: "&lt;br&gt;                                           + parmMetaData.getParameterType(i));&lt;br&gt;&lt;br&gt;                        // Display the database-specific type name of the parameter.&lt;br&gt;                        System.out.println(" Parameter type name: "&lt;br&gt;                                           + parmMetaData.getParameterTypeName(i));&lt;br&gt;&lt;br&gt;&lt;br&gt;                        // Display precision: the number of decimal digits&lt;br&gt;                        // Note: default value is 0.&lt;br&gt;                        System.out.println(" Parameter precision"&lt;br&gt;                                           + " (number of decimal places): "&lt;br&gt;                                           + parmMetaData.getPrecision(i));&lt;br&gt;                        // Display the number of digits to the right of the&lt;br&gt;                        // decimal point. Note: default value is 0.&lt;br&gt;                        System.out.println(" Precision to the right of"&lt;br&gt;                                           + " the decimal point: "&lt;br&gt;                                           + parmMetaData.getScale(i));&lt;br&gt;&lt;br&gt;                        // Display information on whether NULL values are allowed&lt;br&gt;                        String nullableText = "";&lt;br&gt;                        switch (parmMetaData.isNullable(i)) {&lt;br&gt;                          case ParameterMetaData.parameterNullable:&lt;br&gt;                            nullableText += "Yes";&lt;br&gt;                            break;&lt;br&gt;                          case ParameterMetaData.parameterNoNulls:&lt;br&gt;                            nullableText += "No";&lt;br&gt;                            break;&lt;br&gt;                          case ParameterMetaData.parameterNullableUnknown:&lt;br&gt;                            nullableText += "Unknown";&lt;br&gt;                            break;&lt;br&gt;                          default:&lt;br&gt;                            break;&lt;br&gt;                        }&lt;br&gt;                       System.out.println(" NULLs allowed: "&lt;br&gt;                                          + nullableText);&lt;br&gt;&lt;br&gt;                       // Display information on whether value is signed&lt;br&gt;                       System.out.println(" Signed: "&lt;br&gt;                                          + parmMetaData.isSigned(i));&lt;br&gt;                        // Increment column counter&lt;br&gt;                        i++;&lt;br&gt;                    }&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the Preparedstatement&lt;br&gt;                    prepStmt.close();&lt;br&gt;                    System.out.println(" PreparedStatement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20305JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information. Note that there could be multiple&lt;br&gt;            // error objects chained together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20305JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:05:53 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20306JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9339-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20306JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate FastExport of data rows without parameter marker.&lt;br&gt;//&lt;br&gt;//     The program will:&lt;br&gt;//       -  Connect as user guest/please&lt;br&gt;//       -  Insert data rows into a table&lt;br&gt;//       -  Select data rows from a table using FastExport without parameter marker&lt;br&gt;//       -  Verify that no SQLWarning has occurred&lt;br&gt;//       -  Disconnect&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.PreparedStatement,&lt;br&gt;//            java.sql.PreparedStatement.executeQuery&lt;br&gt;//&lt;br&gt;//  Version: new sample&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.io.*;&lt;br&gt;import java.sql.*;&lt;br&gt;import java.util.Arrays;&lt;br&gt;&lt;br&gt;/**&lt;br&gt; * FastExport without parameter marker.&lt;br&gt; */&lt;br&gt;public class T20306JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to select a table&lt;br&gt;    public static String user = "guest";&lt;br&gt;    public static String password = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // URL to be passed to the JDBC driver&lt;br&gt;        String url =&lt;br&gt;            "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8,TYPE=FASTEXPORT";&lt;br&gt;&lt;br&gt;        // Name of sample program&lt;br&gt;        String progName = T20306JD.class.getName();&lt;br&gt;&lt;br&gt;        // Size of CHAR column&lt;br&gt;        int strLen = 100;&lt;br&gt;&lt;br&gt;        // Name of sample table&lt;br&gt;        String tableName = progName;&lt;br&gt;&lt;br&gt;        // CREATE TABLE statement&lt;br&gt;        String createTable = "CREATE TABLE " + tableName + "," +&lt;br&gt;                                "NO FALLBACK," +&lt;br&gt;                                "NO BEFORE JOURNAL," +&lt;br&gt;                                "NO AFTER JOURNAL," +&lt;br&gt;                                "CHECKSUM = DEFAULT" +&lt;br&gt;                                "(" +&lt;br&gt;                                " L_INDEX INTEGER NOT NULL," +&lt;br&gt;                                " L_SMALLINT SMALLINT," +&lt;br&gt;                                " L_DATE DATE," +&lt;br&gt;                                " L_TEXT VARCHAR(" + strLen + ")" +&lt;br&gt;                                " CHARACTER SET UNICODE NOT CASESPECIFIC" +&lt;br&gt;                                ") " +&lt;br&gt;                              "UNIQUE PRIMARY INDEX ( L_INDEX&amp;nbsp";&lt;br&gt;&lt;br&gt;        // INSERT statement&lt;br&gt;        String insertTable = "INSERT INTO " + tableName + " VALUES(?,?,?,?)";&lt;br&gt;&lt;br&gt;        // SELECT statement&lt;br&gt;        String selectTable =&lt;br&gt;            "SELECT L_INDEX, L_SMALLINT, L_DATE, L_TEXT FROM " + tableName;&lt;br&gt;&lt;br&gt;        try {&lt;br&gt;            System.out.println(&lt;br&gt;                "Sample " + progName + " starting: " + new java.util.Date());&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver...");&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" Teradata JDBC driver loaded.");&lt;br&gt;&lt;br&gt;            System.out.println(" Attempting to connect to Teradata...");&lt;br&gt;            Connection con = DriverManager.getConnection(url, user, password);&lt;br&gt;            System.out.println(" Connection to Teradata established.");&lt;br&gt;&lt;br&gt;            try {&lt;br&gt;                System.out.println(" Creating a Statement object...");&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Created a Statement object.");&lt;br&gt;&lt;br&gt;                try {&lt;br&gt;                    try {&lt;br&gt;                        stmt.executeUpdate("DROP TABLE " + tableName);&lt;br&gt;                    } catch (SQLException e) {&lt;br&gt;                        // Do nothing because the table likely does not exist yet!&lt;br&gt;                        System.out.println(" Drop table exception ignored: " + e);&lt;br&gt;                    }&lt;br&gt;                    System.out.println(" Creating table " + tableName + "...");&lt;br&gt;                    stmt.executeUpdate(createTable);&lt;br&gt;                    System.out.println(" Created table " + tableName + ".");&lt;br&gt;&lt;br&gt;                    System.out.println(&lt;br&gt;                        " Creating a PreparedStatement object for INSERT...");&lt;br&gt;                    PreparedStatement pstmt1 = con.prepareStatement(insertTable);&lt;br&gt;                    System.out.println(&lt;br&gt;                        " Created a PreparedStatement object for INSERT...");&lt;br&gt;&lt;br&gt;                    try {&lt;br&gt;                        con.clearWarnings();&lt;br&gt;&lt;br&gt;                        System.out.println(&lt;br&gt;                            " Creating a PreparedStatement object for SELECT...");&lt;br&gt;                        PreparedStatement pstmt2 = con.prepareStatement(selectTable);&lt;br&gt;                        System.out.println(&lt;br&gt;                            " Created a PreparedStatement object for SELECT...");&lt;br&gt;&lt;br&gt;                        try {&lt;br&gt;                            SQLWarning w = con.getWarnings();&lt;br&gt;                            // Note that there could be multiple SQLWarning objects&lt;br&gt;                            // chained together!&lt;br&gt;                            while (w != null) {&lt;br&gt;                                System.out.println("*** SQLWarning caught ***");&lt;br&gt;                                StringWriter sw = new StringWriter();&lt;br&gt;                                w.printStackTrace(new PrintWriter(sw, true));&lt;br&gt;                                System.out.println(&lt;br&gt;                                    "SQL State = " + w.getSQLState()&lt;br&gt;                                    + ", Error Code = " + w.getErrorCode()&lt;br&gt;                                    + "" + sw.toString());&lt;br&gt;                                w = w.getNextWarning();&lt;br&gt;                            }&lt;br&gt;&lt;br&gt;                            int rowsInserted = 0;&lt;br&gt;                            int batchCount = 0;&lt;br&gt;                            char[] charBuf = new char[strLen];&lt;br&gt;                            Arrays.fill(charBuf, 'a');&lt;br&gt;                            String strBuf = new String(charBuf);&lt;br&gt;&lt;br&gt;                            // Note that auto-commit is true by default, thus an&lt;br&gt;                            // auto-commit mode of 'true' is assumed here!&lt;br&gt;&lt;br&gt;                            System.out.println(" Binding data rows...");&lt;br&gt;                            pstmt1.setInt(1, 1);&lt;br&gt;                            pstmt1.setShort(2, (short)11);&lt;br&gt;                            pstmt1.setDate(3, Date.valueOf("2008-01-18"));&lt;br&gt;                            pstmt1.setString(4, strBuf);&lt;br&gt;                            pstmt1.addBatch();&lt;br&gt;                            batchCount++;&lt;br&gt;&lt;br&gt;                            pstmt1.setInt(1, 2);&lt;br&gt;                            pstmt1.setShort(2, (short)22);&lt;br&gt;                            pstmt1.setDate(3, Date.valueOf("2008-01-17"));&lt;br&gt;                            pstmt1.setString(4, strBuf);&lt;br&gt;                            pstmt1.addBatch();&lt;br&gt;                            batchCount++;&lt;br&gt;&lt;br&gt;                            System.out.println(" Inserting data rows...");&lt;br&gt;                            int updateCounts[] = pstmt1.executeBatch();&lt;br&gt;                            if (updateCounts == null) {&lt;br&gt;                                System.out.println(&lt;br&gt;                                    "ERROR: A null update count was returned!");&lt;br&gt;                            } else {&lt;br&gt;                                if (updateCounts.length != batchCount) {&lt;br&gt;                                    System.out.println(&lt;br&gt;                                        "ERROR: The update count does not match the"&lt;br&gt;                                        + " number of rows batched: expected "&lt;br&gt;                                        + batchCount + ", got "&lt;br&gt;                                        + updateCounts.length);&lt;br&gt;                                }&lt;br&gt;                                for (int i = 0; i &amp;lt; updateCounts.length; i++) {&lt;br&gt;                                    if (updateCounts[i] != 1) {&lt;br&gt;                                        System.out.println(&lt;br&gt;                                            "ERROR: The update count for row " + (i+1)&lt;br&gt;                                            + " failed: expected 1, got "&lt;br&gt;                                            + updateCounts[i]);&lt;br&gt;                                    }&lt;br&gt;                                }&lt;br&gt;                                rowsInserted += updateCounts.length;&lt;br&gt;                            }&lt;br&gt;&lt;br&gt;                            System.out.println(" Selecting data rows...");&lt;br&gt;                            ResultSet rs = pstmt2.executeQuery();&lt;br&gt;                            try {&lt;br&gt;                                int rowsSelected = 0;&lt;br&gt;                                ResultSetMetaData rsmd = rs.getMetaData();&lt;br&gt;                                for (int i = 1; rs.next(); i++, rowsSelected++) {&lt;br&gt;                                    for (int j = 1; j &amp;lt;= rsmd.getColumnCount(); j++) {&lt;br&gt;                                        System.out.println("  " + tableName + " row "&lt;br&gt;                                            + i + ", col " + j + ": "&lt;br&gt;                                            + rsmd.getColumnName(j) + "="&lt;br&gt;                                            + rs.getObject(j));&lt;br&gt;                                    }&lt;br&gt;                                }&lt;br&gt;                                if (rowsSelected != rowsInserted) {&lt;br&gt;                                    System.out.println(&lt;br&gt;                                        "ERROR: Didn't retrieve enough rows:"&lt;br&gt;                                        + " expected " + rowsInserted&lt;br&gt;                                        + ", got " + rowsSelected);&lt;br&gt;                                }&lt;br&gt;                            } finally {&lt;br&gt;                                rs.close();&lt;br&gt;                            }&lt;br&gt;&lt;br&gt;                            w = pstmt2.getWarnings();&lt;br&gt;                            // Note that there could be multiple SQLWarning objects&lt;br&gt;                            // chained together!&lt;br&gt;                            while (w != null) {&lt;br&gt;                                System.out.println("*** SQLWarning caught ***");&lt;br&gt;                                StringWriter sw = new StringWriter();&lt;br&gt;                                w.printStackTrace(new PrintWriter(sw, true));&lt;br&gt;                                System.out.println("SQL State = " + w.getSQLState()&lt;br&gt;                                    + ", Error Code = " + w.getErrorCode()&lt;br&gt;                                    + "" + sw.toString());&lt;br&gt;                                w = w.getNextWarning();&lt;br&gt;                            }&lt;br&gt;                        } finally {&lt;br&gt;                            System.out.println(&lt;br&gt;                                " Closing PreparedStatement object for SELECT...");&lt;br&gt;                            pstmt2.close();&lt;br&gt;                            System.out.println(&lt;br&gt;                                " PreparedStatement object for SELECT closed.");&lt;br&gt;                        }&lt;br&gt;                    } finally {&lt;br&gt;                        System.out.println(&lt;br&gt;                            " Closing PreparedStatement object for INSERT...");&lt;br&gt;                        pstmt1.close();&lt;br&gt;                        System.out.println(&lt;br&gt;                            " PreparedStatement object for INSERT closed.");&lt;br&gt;                    }&lt;br&gt;                } finally {&lt;br&gt;                    System.out.println(" Closing Statement object...");&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed.");&lt;br&gt;                }&lt;br&gt;            } finally {&lt;br&gt;                System.out.println(" Closing Connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed.");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(&lt;br&gt;                "Sample " + progName + " finished. " + new java.util.Date());&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;}&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:05:38 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20307JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9338-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20307JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate FastExport of data rows with parameter marker.&lt;br&gt;//&lt;br&gt;//        The program will:&lt;br&gt;//          -  Connect as user guest/please&lt;br&gt;//          -  Insert data rows into a table&lt;br&gt;//          -  Select data rows from a table using FastExport with parameter marker&lt;br&gt;//          -  Verify that no SQLWarning has occurred&lt;br&gt;//          -  Disconnect&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.PreparedStatement,&lt;br&gt;//            java.sql.PreparedStatement.executeQuery&lt;br&gt;//&lt;br&gt;//  Version: new sample&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.io.*;&lt;br&gt;import java.sql.*;&lt;br&gt;import java.util.Arrays;&lt;br&gt;&lt;br&gt;/**&lt;br&gt; * FastExport with parameter marker.&lt;br&gt; */&lt;br&gt;public class T20307JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to select a table&lt;br&gt;    public static String user = "guest";&lt;br&gt;    public static String password = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // URL to be passed to the JDBC driver&lt;br&gt;        String url =&lt;br&gt;            "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8,TYPE=FASTEXPORT";&lt;br&gt;&lt;br&gt;        // Name of sample program&lt;br&gt;        String progName = T20307JD.class.getName();&lt;br&gt;&lt;br&gt;        // Size of CHAR column&lt;br&gt;        int strLen = 100;&lt;br&gt;&lt;br&gt;        // Name of sample table&lt;br&gt;        String tableName = progName;&lt;br&gt;&lt;br&gt;        // CREATE TABLE statement&lt;br&gt;        String createTable = "CREATE TABLE " + tableName + "," +&lt;br&gt;                                "NO FALLBACK," +&lt;br&gt;                                "NO BEFORE JOURNAL," +&lt;br&gt;                                "NO AFTER JOURNAL," +&lt;br&gt;                                "CHECKSUM = DEFAULT" +&lt;br&gt;                                "(" +&lt;br&gt;                                " L_INDEX INTEGER NOT NULL," +&lt;br&gt;                                " L_SMALLINT SMALLINT," +&lt;br&gt;                                " L_DATE DATE," +&lt;br&gt;                                " L_TEXT VARCHAR(" + strLen + ")" +&lt;br&gt;                                " CHARACTER SET UNICODE NOT CASESPECIFIC" +&lt;br&gt;                                ") " +&lt;br&gt;                              "UNIQUE PRIMARY INDEX ( L_INDEX&amp;nbsp";&lt;br&gt;&lt;br&gt;        // INSERT statement&lt;br&gt;        String insertTable = "INSERT INTO " + tableName + " VALUES(?,?,?,?)";&lt;br&gt;&lt;br&gt;        // SELECT statement&lt;br&gt;        String selectTable = "SELECT L_INDEX, L_SMALLINT, L_DATE, L_TEXT FROM "&lt;br&gt;            + tableName + " WHERE L_SMALLINT=?";&lt;br&gt;&lt;br&gt;        try {&lt;br&gt;            System.out.println(&lt;br&gt;                "Sample " + progName + " starting: " + new java.util.Date());&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver...");&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" Teradata JDBC driver loaded.");&lt;br&gt;&lt;br&gt;            System.out.println(" Attempting to connect to Teradata...");&lt;br&gt;            Connection con = DriverManager.getConnection(url, user, password);&lt;br&gt;            System.out.println(" Connection to Teradata established.");&lt;br&gt;&lt;br&gt;            try {&lt;br&gt;                System.out.println(" Creating a Statement object...");&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Created a Statement object.");&lt;br&gt;&lt;br&gt;                try {&lt;br&gt;                    try {&lt;br&gt;                        stmt.executeUpdate("DROP TABLE " + tableName);&lt;br&gt;                    } catch (SQLException e) {&lt;br&gt;                        // Do nothing because the table likely does not exist yet!&lt;br&gt;                        System.out.println(" Drop table exception ignored: " + e);&lt;br&gt;                    }&lt;br&gt;                    System.out.println(" Creating table " + tableName + "...");&lt;br&gt;                    stmt.executeUpdate(createTable);&lt;br&gt;                    System.out.println(" Created table " + tableName + ".");&lt;br&gt;&lt;br&gt;                    System.out.println(&lt;br&gt;                        " Creating a PreparedStatement object for INSERT...");&lt;br&gt;                    PreparedStatement pstmt1 = con.prepareStatement(insertTable);&lt;br&gt;                    System.out.println(&lt;br&gt;                        " Created a PreparedStatement object for INSERT...");&lt;br&gt;&lt;br&gt;                    try {&lt;br&gt;                        con.clearWarnings();&lt;br&gt;&lt;br&gt;                        System.out.println(&lt;br&gt;                            " Creating a PreparedStatement object for SELECT...");&lt;br&gt;                        PreparedStatement pstmt2 = con.prepareStatement(selectTable);&lt;br&gt;                        System.out.println(&lt;br&gt;                            " Created a PreparedStatement object for SELECT...");&lt;br&gt;&lt;br&gt;                        try {&lt;br&gt;                            SQLWarning w = con.getWarnings();&lt;br&gt;                            // Note that there could be multiple SQLWarning objects&lt;br&gt;                            // chained together!&lt;br&gt;                            while (w != null) {&lt;br&gt;                                System.out.println("*** SQLWarning caught ***");&lt;br&gt;                                StringWriter sw = new StringWriter();&lt;br&gt;                                w.printStackTrace(new PrintWriter(sw, true));&lt;br&gt;                                System.out.println("SQL State = " + w.getSQLState()&lt;br&gt;                                    + ", Error Code = " + w.getErrorCode()&lt;br&gt;                                    + "" + sw.toString());&lt;br&gt;                                w = w.getNextWarning();&lt;br&gt;                            }&lt;br&gt;&lt;br&gt;                            int rowsInserted = 0;&lt;br&gt;                            int batchCount = 0;&lt;br&gt;                            char[] charBuf = new char[strLen];&lt;br&gt;                            Arrays.fill(charBuf, 'a');&lt;br&gt;                            String strBuf = new String(charBuf);&lt;br&gt;&lt;br&gt;                            // Note that auto-commit is true by default, thus an&lt;br&gt;                            // auto-commit mode of 'true' is assumed here!&lt;br&gt;&lt;br&gt;                            System.out.println(" Binding data rows...");&lt;br&gt;                            pstmt1.setInt(1, 1);&lt;br&gt;                            pstmt1.setShort(2, (short)11);&lt;br&gt;                            pstmt1.setDate(3, Date.valueOf("2008-01-18"));&lt;br&gt;                            pstmt1.setString(4, strBuf);&lt;br&gt;                            pstmt1.addBatch();&lt;br&gt;                            batchCount++;&lt;br&gt;&lt;br&gt;                            pstmt1.setInt(1, 2);&lt;br&gt;                            pstmt1.setShort(2, (short)22);&lt;br&gt;                            pstmt1.setDate(3, Date.valueOf("2008-01-17"));&lt;br&gt;                            pstmt1.setString(4, strBuf);&lt;br&gt;                            pstmt1.addBatch();&lt;br&gt;                            batchCount++;&lt;br&gt;&lt;br&gt;                            System.out.println(" Inserting data rows...");&lt;br&gt;                            int updateCounts[] = pstmt1.executeBatch();&lt;br&gt;                            if (updateCounts == null) {&lt;br&gt;                                System.out.println(&lt;br&gt;                                    "ERROR: A null update count was returned!");&lt;br&gt;                            } else {&lt;br&gt;                                if (updateCounts.length != batchCount) {&lt;br&gt;                                    System.out.println(&lt;br&gt;                                        "ERROR: The update count does not match the"&lt;br&gt;                                            + " number of rows batched: expected "&lt;br&gt;                                            + batchCount + ", got "&lt;br&gt;                                            + updateCounts.length);&lt;br&gt;                                }&lt;br&gt;                                for (int i = 0; i &amp;lt; updateCounts.length; i++) {&lt;br&gt;                                    if (updateCounts[i] != 1) {&lt;br&gt;                                        System.out.println(&lt;br&gt;                                            "ERROR: The update count for row " + (i+1)&lt;br&gt;                                            + " failed: expected 1, got "&lt;br&gt;                                            + updateCounts[i]);&lt;br&gt;                                    }&lt;br&gt;                                }&lt;br&gt;                                rowsInserted += updateCounts.length;&lt;br&gt;                            }&lt;br&gt;&lt;br&gt;                            System.out.println(" Binding parameter marker...");&lt;br&gt;                            pstmt2.setShort(1, (short)11);&lt;br&gt;&lt;br&gt;                            System.out.println(" Selecting data rows...");&lt;br&gt;                            ResultSet rs = pstmt2.executeQuery();&lt;br&gt;                            try {&lt;br&gt;                                int rowsSelected = 0;&lt;br&gt;                                ResultSetMetaData rsmd = rs.getMetaData();&lt;br&gt;                                for (int i = 1; rs.next(); i++, rowsSelected++) {&lt;br&gt;                                    for (int j = 1; j &amp;lt;= rsmd.getColumnCount(); j++) {&lt;br&gt;                                        System.out.println("  " + tableName + " row "&lt;br&gt;                                            + i + ", col " + j + ": "&lt;br&gt;                                            + rsmd.getColumnName(j) + "="&lt;br&gt;                                            + rs.getObject(j));&lt;br&gt;                                    }&lt;br&gt;                                }&lt;br&gt;                                if (rowsSelected != 1) {&lt;br&gt;                                    System.out.println("ERROR: Didn't retrieve"&lt;br&gt;                                        + " expected rows: expected 1, got "&lt;br&gt;                                        + rowsSelected);&lt;br&gt;                                }&lt;br&gt;                            } finally {&lt;br&gt;                                rs.close();&lt;br&gt;                            }&lt;br&gt;&lt;br&gt;                            w = pstmt2.getWarnings();&lt;br&gt;                            // Note that there could be multiple SQLWarning objects&lt;br&gt;                            // chained together!&lt;br&gt;                            while (w != null) {&lt;br&gt;                                System.out.println("*** SQLWarning caught ***");&lt;br&gt;                                StringWriter sw = new StringWriter();&lt;br&gt;                                w.printStackTrace(new PrintWriter(sw, true));&lt;br&gt;                                System.out.println("SQL State = " + w.getSQLState()&lt;br&gt;                                    + ", Error Code = " + w.getErrorCode()&lt;br&gt;                                    + "" + sw.toString());&lt;br&gt;                                w = w.getNextWarning();&lt;br&gt;                            }&lt;br&gt;                        } finally {&lt;br&gt;                            System.out.println(&lt;br&gt;                                " Closing PreparedStatement object for SELECT...");&lt;br&gt;                            pstmt2.close();&lt;br&gt;                            System.out.println(&lt;br&gt;                                " PreparedStatement object for SELECT closed.");&lt;br&gt;                        }&lt;br&gt;                    } finally {&lt;br&gt;                        System.out.println(&lt;br&gt;                            " Closing PreparedStatement object for INSERT...");&lt;br&gt;                        pstmt1.close();&lt;br&gt;                        System.out.println(&lt;br&gt;                            " PreparedStatement object for INSERT closed.");&lt;br&gt;                    }&lt;br&gt;                } finally {&lt;br&gt;                    System.out.println(" Closing Statement object...");&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed.");&lt;br&gt;                }&lt;br&gt;            } finally {&lt;br&gt;                System.out.println(" Closing Connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed.");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(&lt;br&gt;                "Sample " + progName + " finished. " + new java.util.Date());&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;}&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 14:05:22 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20308JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9337-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20308JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate FastExport of data rows with parameter marker and&lt;br&gt;//              verify FastExport sessions.&lt;br&gt;//&lt;br&gt;//         The program will:&lt;br&gt;//           -  Connect as user guest/please&lt;br&gt;//           -  Insert data rows into a table&lt;br&gt;//           -  Select data rows from a table using FastExport with parameter marker&lt;br&gt;//           -  Verify that no SQLWarning has occurred&lt;br&gt;//           -  Verify the sessions used to FastExport&lt;br&gt;//           -  Disconnect&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.PreparedStatement,&lt;br&gt;//            java.sql.PreparedStatement.executeQuery&lt;br&gt;//&lt;br&gt;//  Version: new sample&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.io.*;&lt;br&gt;import java.sql.*;&lt;br&gt;import java.util.Arrays;&lt;br&gt;&lt;br&gt;/**&lt;br&gt; * FastExport with parameter marker and verify FastExport sessions.&lt;br&gt; */&lt;br&gt;public class T20308JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to select a table&lt;br&gt;    public static String user = "guest";&lt;br&gt;    public static String password = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // URL Parameter for SESSIONS&lt;br&gt;        int sessions = 1;&lt;br&gt;&lt;br&gt;        // URL to be passed to the JDBC driver&lt;br&gt;        String url =&lt;br&gt;        "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8,TYPE=FASTEXPORT,SESSIONS="&lt;br&gt;        + sessions;&lt;br&gt;&lt;br&gt;        // Name of sample program&lt;br&gt;        String progName = T20308JD.class.getName();&lt;br&gt;&lt;br&gt;        // Size of CHAR column&lt;br&gt;        int strLen = 100;&lt;br&gt;&lt;br&gt;        // Name of sample table&lt;br&gt;        String tableName = progName;&lt;br&gt;&lt;br&gt;        // CREATE TABLE statement&lt;br&gt;        String createTable = "CREATE TABLE " + tableName + "," +&lt;br&gt;                                "NO FALLBACK," +&lt;br&gt;                                "NO BEFORE JOURNAL," +&lt;br&gt;                                "NO AFTER JOURNAL," +&lt;br&gt;                                "CHECKSUM = DEFAULT" +&lt;br&gt;                                "(" +&lt;br&gt;                                " L_INDEX INTEGER NOT NULL," +&lt;br&gt;                                " L_SMALLINT SMALLINT," +&lt;br&gt;                                " L_DATE DATE," +&lt;br&gt;                                " L_TEXT VARCHAR(" + strLen + ")" +&lt;br&gt;                                " CHARACTER SET UNICODE NOT CASESPECIFIC" +&lt;br&gt;                                ") " +&lt;br&gt;                              "UNIQUE PRIMARY INDEX ( L_INDEX&amp;nbsp";&lt;br&gt;&lt;br&gt;        // INSERT statement&lt;br&gt;        String insertTable = "INSERT INTO " + tableName + " VALUES(?,?,?,?)";&lt;br&gt;&lt;br&gt;        // SELECT statement&lt;br&gt;        String selectTable = "SELECT L_INDEX, L_SMALLINT, L_DATE, L_TEXT FROM "&lt;br&gt;            + tableName + " WHERE L_SMALLINT=?";&lt;br&gt;&lt;br&gt;        try {&lt;br&gt;            System.out.println(&lt;br&gt;                "Sample " + progName + " starting: " + new java.util.Date());&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver...");&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" Teradata JDBC driver loaded.");&lt;br&gt;&lt;br&gt;            System.out.println(" Attempting to connect to Teradata...");&lt;br&gt;            Connection con = DriverManager.getConnection(url, user, password);&lt;br&gt;            System.out.println(" Connection to Teradata established.");&lt;br&gt;&lt;br&gt;            try {&lt;br&gt;                System.out.println(" Creating a Statement object...");&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Created a Statement object.");&lt;br&gt;&lt;br&gt;                try {&lt;br&gt;                    try {&lt;br&gt;                        stmt.executeUpdate("DROP TABLE " + tableName);&lt;br&gt;                    } catch (SQLException e) {&lt;br&gt;                        // Do nothing because the table likely does not exist yet!&lt;br&gt;                        System.out.println(" Drop table exception ignored: " + e);&lt;br&gt;                    }&lt;br&gt;                    System.out.println(" Creating table " + tableName + "...");&lt;br&gt;                    stmt.executeUpdate(createTable);&lt;br&gt;                    System.out.println(" Created table " + tableName + ".");&lt;br&gt;&lt;br&gt;                    System.out.println(&lt;br&gt;                        " Creating a PreparedStatement object for INSERT...");&lt;br&gt;                    PreparedStatement pstmt1 = con.prepareStatement(insertTable);&lt;br&gt;                    System.out.println(&lt;br&gt;                        " Created a PreparedStatement object for INSERT...");&lt;br&gt;&lt;br&gt;                    try {&lt;br&gt;                        con.clearWarnings();&lt;br&gt;&lt;br&gt;                        System.out.println(&lt;br&gt;                            " Creating a PreparedStatement object for SELECT...");&lt;br&gt;                        PreparedStatement pstmt2 = con.prepareStatement(selectTable);&lt;br&gt;                        System.out.println(&lt;br&gt;                            " Created a PreparedStatement object for SELECT...");&lt;br&gt;&lt;br&gt;                        try {&lt;br&gt;                            SQLWarning w = con.getWarnings();&lt;br&gt;                            // Note that there could be multiple SQLWarning objects&lt;br&gt;                            // chained together!&lt;br&gt;                            while (w != null) {&lt;br&gt;                                System.out.println("*** SQLWarning caught ***");&lt;br&gt;                                StringWriter sw = new StringWriter();&lt;br&gt;                                w.printStackTrace(new PrintWriter(sw, true));&lt;br&gt;                                System.out.println("SQL State = " + w.getSQLState()&lt;br&gt;                                    + ", Error Code = " + w.getErrorCode()&lt;br&gt;                                    + "" + sw.toString());&lt;br&gt;                                w = w.getNextWarning();&lt;br&gt;                            }&lt;br&gt;&lt;br&gt;                            int rowsInserted = 0;&lt;br&gt;                            int batchCount = 0;&lt;br&gt;                            char[] charBuf = new char[strLen];&lt;br&gt;                            Arrays.fill(charBuf, 'a');&lt;br&gt;                            String strBuf = new String(charBuf);&lt;br&gt;&lt;br&gt;                            // Note that auto-commit is true by default, thus an&lt;br&gt;                            // auto-commit mode of 'true' is assumed here!&lt;br&gt;&lt;br&gt;                            System.out.println(" Binding data rows...");&lt;br&gt;                            pstmt1.setInt(1, 1);&lt;br&gt;                            pstmt1.setShort(2, (short)11);&lt;br&gt;                            pstmt1.setDate(3, Date.valueOf("2008-01-18"));&lt;br&gt;                            pstmt1.setString(4, strBuf);&lt;br&gt;                            pstmt1.addBatch();&lt;br&gt;                            batchCount++;&lt;br&gt;&lt;br&gt;                            pstmt1.setInt(1, 2);&lt;br&gt;                            pstmt1.setShort(2, (short)22);&lt;br&gt;                            pstmt1.setDate(3, Date.valueOf("2008-01-17"));&lt;br&gt;                            pstmt1.setString(4, strBuf);&lt;br&gt;                            pstmt1.addBatch();&lt;br&gt;                            batchCount++;&lt;br&gt;&lt;br&gt;                            System.out.println(" Inserting data rows...");&lt;br&gt;                            int updateCounts[] = pstmt1.executeBatch();&lt;br&gt;                            if (updateCounts == null) {&lt;br&gt;                                System.out.println(&lt;br&gt;                                    "ERROR: A null update count was returned!");&lt;br&gt;                            } else {&lt;br&gt;                                if (updateCounts.length != batchCount) {&lt;br&gt;                                    System.out.println(&lt;br&gt;                                        "ERROR: The update count does not match the"&lt;br&gt;                                        + " number of rows batched: expected "&lt;br&gt;                                        + batchCount + ", got "&lt;br&gt;                                        + updateCounts.length);&lt;br&gt;                                }&lt;br&gt;                                for (int i = 0; i &amp;lt; updateCounts.length; i++) {&lt;br&gt;                                    if (updateCounts[i] != 1) {&lt;br&gt;                                        System.out.println(&lt;br&gt;                                            "ERROR: The update count for row " + (i+1)&lt;br&gt;                                            + " failed: expected 1, got "&lt;br&gt;                                            + updateCounts[i]);&lt;br&gt;                                    }&lt;br&gt;                                }&lt;br&gt;                                rowsInserted += updateCounts.length;&lt;br&gt;                            }&lt;br&gt;&lt;br&gt;                            System.out.println(" Binding parameter marker...");&lt;br&gt;                            pstmt2.setShort(1, (short)11);&lt;br&gt;&lt;br&gt;                            // Note that FastExport sessions can only be verified&lt;br&gt;                            // while FastExport is active, i.e. a setXXX method must&lt;br&gt;                            // have been called!&lt;br&gt;                            verifyFastExportSessions(con, pstmt2.hashCode(),&lt;br&gt;                                sessions);&lt;br&gt;&lt;br&gt;                            System.out.println(" Selecting data rows...");&lt;br&gt;                            ResultSet rs = pstmt2.executeQuery();&lt;br&gt;                            try {&lt;br&gt;                                int rowsSelected = 0;&lt;br&gt;                                ResultSetMetaData rsmd = rs.getMetaData();&lt;br&gt;                                for (int i = 1; rs.next(); i++, rowsSelected++) {&lt;br&gt;                                    for (int j = 1; j &amp;lt;= rsmd.getColumnCount(); j++) {&lt;br&gt;                                        System.out.println("  " + tableName + " row "&lt;br&gt;                                        + i + ", col " + j + ": "&lt;br&gt;                                        + rsmd.getColumnName(j) + "="&lt;br&gt;                                        + rs.getObject(j));&lt;br&gt;                                    }&lt;br&gt;                                }&lt;br&gt;                                if (rowsSelected != 1) {&lt;br&gt;                                    System.out.println("ERROR: Didn't retrieve"&lt;br&gt;                                        + " expected rows: expected 1, got "&lt;br&gt;                                        + rowsSelected);&lt;br&gt;                                }&lt;br&gt;                            } finally {&lt;br&gt;                                rs.close();&lt;br&gt;                            }&lt;br&gt;&lt;br&gt;                            w = pstmt2.getWarnings();&lt;br&gt;                            // Note that there could be multiple SQLWarning objects&lt;br&gt;                            // chained together!&lt;br&gt;                            while (w != null) {&lt;br&gt;                                System.out.println("*** SQLWarning caught ***");&lt;br&gt;                                StringWriter sw = new StringWriter();&lt;br&gt;                                w.printStackTrace(new PrintWriter(sw, true));&lt;br&gt;                                System.out.println("SQL State = " + w.getSQLState()&lt;br&gt;                                    + ", Error Code = " + w.getErrorCode()&lt;br&gt;                                    + "" + sw.toString());&lt;br&gt;                                w = w.getNextWarning();&lt;br&gt;                            }&lt;br&gt;                        } finally {&lt;br&gt;                            System.out.println(&lt;br&gt;                                " Closing PreparedStatement object for SELECT...");&lt;br&gt;                            pstmt2.close();&lt;br&gt;                            System.out.println(&lt;br&gt;                                " PreparedStatement object for SELECT closed.");&lt;br&gt;                        }&lt;br&gt;                    } finally {&lt;br&gt;                        System.out.println(&lt;br&gt;                            " Closing PreparedStatement object for INSERT...");&lt;br&gt;                        pstmt1.close();&lt;br&gt;                        System.out.println(&lt;br&gt;                            " PreparedStatement object for INSERT closed.");&lt;br&gt;                    }&lt;br&gt;                } finally {&lt;br&gt;                    System.out.println(" Closing Statement object...");&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed.");&lt;br&gt;                }&lt;br&gt;            } finally {&lt;br&gt;                System.out.println(" Closing Connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed.");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(&lt;br&gt;                "Sample " + progName + " finished. " + new java.util.Date());&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;&lt;br&gt;    private static void verifyFastExportSessions(Connection con, int hashCode,&lt;br&gt;        int sessions)&lt;br&gt;    throws SQLException&lt;br&gt;    {&lt;br&gt;        System.out.println(" Verifying FastExport SESSIONS for PreparedStatement="&lt;br&gt;            + hashCode + "...");&lt;br&gt;&lt;br&gt;        // Note that the method for verifying FastExport SESSIONS may change at any&lt;br&gt;        // time without prior notice!&lt;br&gt;&lt;br&gt;        String amps = con.nativeSQL("{fn teradata_amp_count()}");&lt;br&gt;        System.out.println("  AMP count = " + amps);&lt;br&gt;        int consExpected = sessions &amp;lt; Integer.parseInt(amps) ? sessions&lt;br&gt;            : Integer.parseInt(amps);&lt;br&gt;&lt;br&gt;        String lsnList = con.nativeSQL("{fn teradata_logon_sequence_number()}");&lt;br&gt;        System.out.println("  LSN(s) = " + lsnList);&lt;br&gt;&lt;br&gt;        String lsnArray[] = lsnList.split(",");&lt;br&gt;        if ((lsnArray.length &amp;amp; 1) == 1) {&lt;br&gt;            System.out.println("ERROR: Expected an even count of delimited strings,"&lt;br&gt;                + " indicating pairs of PreparedStatement hash codes and LSNs, but"&lt;br&gt;                + " received an odd count instead!");&lt;br&gt;            throw new IllegalStateException (&lt;br&gt;                "Received invalid list from teradata_logon_sequence_number") ;&lt;br&gt;        }&lt;br&gt;&lt;br&gt;        for (int i = 0; i &amp;lt; lsnArray.length; i += 2) {&lt;br&gt;            int hashCodeForLSN = Integer.parseInt(lsnArray[i]);&lt;br&gt;            int lsnForHashCode = Integer.parseInt(lsnArray[i+1]);&lt;br&gt;            if (hashCodeForLSN == hashCode)&lt;br&gt;            {&lt;br&gt;                System.out.println("  LogonSequenceNo=" + lsnForHashCode&lt;br&gt;                    + " for PreparedStatement=" + hashCode);&lt;br&gt;&lt;br&gt;                String selectSessionCount = "SELECT COUNT(*) FROM DBC.SessionInfo"&lt;br&gt;                    + " WHERE Partition='EXPORT' AND LogonSequenceNo=?";&lt;br&gt;&lt;br&gt;                PreparedStatement pstmt1 = con.prepareStatement(selectSessionCount);&lt;br&gt;                try {&lt;br&gt;                    byte bytes[] = new byte[4];&lt;br&gt;                    bytes[1] = (byte) ((lsnForHashCode &amp;gt;&amp;gt; 24) &amp;amp; 0xFF);&lt;br&gt;                    bytes[0] = (byte) ((lsnForHashCode &amp;gt;&amp;gt; 16) &amp;amp; 0xFF);&lt;br&gt;                    bytes[3] = (byte) ((lsnForHashCode &amp;gt;&amp;gt; 8) &amp;amp; 0xFF);&lt;br&gt;                    bytes[2] = (byte) (lsnForHashCode &amp;amp; 0xFF);&lt;br&gt;                    pstmt1.setBytes(1, bytes);&lt;br&gt;                    ResultSet rs1 = pstmt1.executeQuery();&lt;br&gt;                    try {&lt;br&gt;                        int consFound = 0;&lt;br&gt;                        if (rs1.next()) {&lt;br&gt;                            ResultSetMetaData rsmd = rs1.getMetaData();&lt;br&gt;                            consFound = rs1.getInt(1);&lt;br&gt;                            System.out.println("  FastExportConnection session "&lt;br&gt;                                + rsmd.getColumnName(1) + "=" + consFound&lt;br&gt;                                + " for LogonSequenceNo=" + lsnForHashCode);&lt;br&gt;                        }&lt;br&gt;                        if (consFound != consExpected) {&lt;br&gt;                            System.out.println("ERROR: Did not detect a correct count"&lt;br&gt;                                + " of FastExportConnection session(s): expected "&lt;br&gt;                                + consExpected + ", got " + consFound);&lt;br&gt;                        }&lt;br&gt;                    } finally {&lt;br&gt;                        rs1.close();&lt;br&gt;                    }&lt;br&gt;&lt;br&gt;                    String selectSessionNums =&lt;br&gt;                        "SELECT SessionNo,Partition FROM DBC.SessionInfo"&lt;br&gt;                            +" WHERE LogonSequenceNo=?"&lt;br&gt;                            + " ORDER BY SessionNo,Partition";&lt;br&gt;&lt;br&gt;                    PreparedStatement pstmt2 =&lt;br&gt;                        con.prepareStatement(selectSessionNums);&lt;br&gt;                    try {&lt;br&gt;                        pstmt2.setBytes(1, bytes);&lt;br&gt;                        ResultSet rs2 = pstmt2.executeQuery();&lt;br&gt;                        try {&lt;br&gt;                            ResultSetMetaData rsmd = rs2.getMetaData();&lt;br&gt;                            while (rs2.next()) {&lt;br&gt;                                System.out.println("  Found " + rsmd.getColumnName(2)&lt;br&gt;                                    + "=" + rs2.getObject(2) + " with "&lt;br&gt;                                    + rsmd.getColumnName(1) + "=" + rs2.getObject(1)&lt;br&gt;                                    + " for LogonSequenceNo=" + lsnForHashCode);&lt;br&gt;                            }&lt;br&gt;                        } finally {&lt;br&gt;                            rs2.close();&lt;br&gt;                        }&lt;br&gt;                    } finally {&lt;br&gt;                        pstmt2.close();&lt;br&gt;                    }&lt;br&gt;                } finally {&lt;br&gt;                    pstmt1.close();&lt;br&gt;                }&lt;br&gt;                break;&lt;br&gt;            }&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;}&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 13:59:54 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20400JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9336-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20400JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata SQL using the JDBC API by&lt;br&gt;//              executing an UPDATE statement without using parameter&lt;br&gt;//              markers.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Update a row in the employee table&lt;br&gt;//                -  Display the number of rows updated&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.Statement,&lt;br&gt;//            java.sql.Statement.executeUpdate&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20400JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // String representing an SQL UPDATE statement&lt;br&gt;        String sUpdate = "UPDATE employee SET empJob = 'QA engineer in charge "&lt;br&gt;                      + "of ISO compliance documentation' WHERE empID = 100001";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20400JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    int RowCount;     // Return value for updated row count&lt;br&gt;&lt;br&gt;                    // The following code will perform an UPDATE to the table&lt;br&gt;                    // and display the number of rows updated.&lt;br&gt;                    System.out.println(" Attempting an update: " + sUpdate);&lt;br&gt;                    RowCount = stmt.executeUpdate(sUpdate);&lt;br&gt;                    System.out.println(" Update completed successfully: "&lt;br&gt;                                       + RowCount + " row(s) updated.");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20400JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20400JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 13:58:00 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20401JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9335-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20401JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata SQL using the JDBC API by&lt;br&gt;//              executing an UPDATE statement using parameter markers.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Update a row in the employee table&lt;br&gt;//                -  Display the number of rows updated&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.PreparedStatement,&lt;br&gt;//            java.sql.PreparedStatement.executeUpdate&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20401JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Creating strings representing a prepared statement and its&lt;br&gt;        // respective parameter values&lt;br&gt;        String sUpdate = "UPDATE employee SET empJob = ? WHERE empID = ?";&lt;br&gt;        int Id = 100002;&lt;br&gt;        String Description = "Manager overseeing international contracts";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20401JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                System.out.println(" Preparing this SQL statement for" +&lt;br&gt;                                   " execution: " + sUpdate);&lt;br&gt;                // Creating a prepared statement object from an active connection&lt;br&gt;                PreparedStatement pstmt = con.prepareStatement(sUpdate);&lt;br&gt;                System.out.println(" Prepared statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    int RowCount;     // Return value for updated row count&lt;br&gt;&lt;br&gt;                    // The following code will perform an UPDATE to the table&lt;br&gt;                    // using a prepared statement and display the number of&lt;br&gt;                    // rows updated.&lt;br&gt;                    System.out.println(" Attempting an update...");&lt;br&gt;                    // Set parameter values indicated by ? (dynamic update)&lt;br&gt;                    System.out.println(" Using setInt() and setString() to " +&lt;br&gt;                                       "bind values to parameter markers:");&lt;br&gt;                    pstmt.setString(1, Description);&lt;br&gt;                    System.out.println(" FIRST ? set to: " + Description);&lt;br&gt;                    pstmt.setInt(2, Id);&lt;br&gt;                    System.out.println(" SECOND ? set to: " + Id);&lt;br&gt;&lt;br&gt;                    // Call without parameter to execute SQL command&lt;br&gt;                    RowCount = pstmt.executeUpdate();&lt;br&gt;                    System.out.println(" Update completed successfully: "&lt;br&gt;                                       + RowCount + " row(s) updated.");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    pstmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20401JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20401JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 13:57:47 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20402JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9334-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20402JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata SQL using the JDBC API by&lt;br&gt;//              executing an UPDATE statement without using parameter&lt;br&gt;//              markers.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Update a row in the employee2 table,&lt;br&gt;//                   updating LOB column values&lt;br&gt;//                -  Display the number of rows updated&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.Statement,&lt;br&gt;//            java.sql.Statement.executeUpdate&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20402JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // String representing an SQL UPDATE statement. Please note that&lt;br&gt;        // the empPhoto binary data will be inserted into the table using&lt;br&gt;        // binary literals.&lt;br&gt;        String sUpdate = "UPDATE employee2 SET empJob = 'QA engineer in charge "&lt;br&gt;            + "of ISO compliance documentation', empPhoto = "&lt;br&gt;            + "'A4649800E00FD80001FF011FA010041044600FB00048FDDB00404A46'XB "&lt;br&gt;            + "WHERE empID = 100001";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20402JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(&lt;br&gt;                  " Attempting to connect to Teradata via JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    int RowCount;     // Return value for row count&lt;br&gt;&lt;br&gt;                    // The following code will perform an UPDATE to the table&lt;br&gt;                    // and display the number of rows updated.&lt;br&gt;                    System.out.println(" Attempting an update: " + sUpdate);&lt;br&gt;                    RowCount = stmt.executeUpdate(sUpdate);&lt;br&gt;                    System.out.println(" Update completed successfully: "&lt;br&gt;                                           + RowCount + " row(s) updated.");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20402JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20402JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 13:57:29 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20403JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9333-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20403JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata SQL using the JDBC API by&lt;br&gt;//              executing an UPDATE statement using parameter markers.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Update a row in the employee2 table,&lt;br&gt;//                   updating LOB column values&lt;br&gt;//                -  Display the number of rows updated&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.PreparedStatement,&lt;br&gt;//            java.sql.PreparedStatement.executeUpdate&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;import java.io.*;&lt;br&gt;&lt;br&gt;public class T20403JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException, FileNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Creating strings representing a prepared statement and its&lt;br&gt;        // respective parameter values&lt;br&gt;        String sUpdate = "UPDATE employee2 " +&lt;br&gt;                         "SET empJob = ?, empPhoto = ? WHERE empID = ?";&lt;br&gt;        String Description = "Manager overseeing international contracts";&lt;br&gt;        int Id = 100002;&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20403JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(&lt;br&gt;                  " Attempting to connect to Teradata via JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                System.out.println(" Preparing this SQL statement for" +&lt;br&gt;                                   " execution: " + sUpdate);&lt;br&gt;                // Creating a prepared statement object from an active connection&lt;br&gt;                PreparedStatement pstmt = con.prepareStatement(sUpdate);&lt;br&gt;                System.out.println(" Prepared statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    int RowCount;     // Return value for updated row count&lt;br&gt;&lt;br&gt;                    // The following code will perform an UPDATE to the table&lt;br&gt;                    // using a prepared statement and display the number of rows&lt;br&gt;                    // updated.&lt;br&gt;                    System.out.println(" Attempting an update...");&lt;br&gt;                    System.out.println(" Using setInt(), setString(), and" +&lt;br&gt;                    " setBinaryStream() to bind values to parameter markers:");&lt;br&gt;                    // Set parameter values indicated by ? (dynamic update)&lt;br&gt;                    // Set job description&lt;br&gt;                    pstmt.setString(1, Description);&lt;br&gt;                    System.out.println(" FIRST ? set to: " + Description);&lt;br&gt;                    // Set employee photo&lt;br&gt;                    // Create a new file object to enable access to the photograph&lt;br&gt;                    File photo = new File(Id + "update.jpg");&lt;br&gt;                    // Create a new file input stream object to enable reading&lt;br&gt;                    // data from the file&lt;br&gt;                    FileInputStream empPhoto = new FileInputStream(photo);&lt;br&gt;                    // Set employee photo BLOB&lt;br&gt;                    pstmt.setBinaryStream(2, empPhoto, (int) (photo.length()));&lt;br&gt;                    System.out.println(" THIRD ? set to the file: " +&lt;br&gt;                                       Id + "update.jpg");&lt;br&gt;                    // Set employee ID number&lt;br&gt;                    pstmt.setInt(3, Id);&lt;br&gt;                    System.out.println(" SECOND ? set to: " + Id);&lt;br&gt;&lt;br&gt;                    // Call without parameter to execute SQL command&lt;br&gt;                    RowCount = pstmt.executeUpdate();&lt;br&gt;                    System.out.println(" Insertion completed successfully: " +&lt;br&gt;                                       RowCount + " row(s) inserted.");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    pstmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20403JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20403JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 13:57:14 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20404JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9332-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2006-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20404JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata SQL using the JDBC API by&lt;br&gt;//              updating a lob using the set methods.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Select a row from the employee2 table&lt;br&gt;//                -  Retrieve a CLOB value and update it&lt;br&gt;//                -  Update the row in the employee2 table&lt;br&gt;//                   using the updated LOB&lt;br&gt;//                -  Display updated LOB&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.PreparedStatement,&lt;br&gt;//            java.sql.PreparedStatement.executeUpdate, java.sql.Clob&lt;br&gt;//&lt;br&gt;//  Version: Supported with TTU 12 Teradata JDBC Driver&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20404JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8,"&lt;br&gt;            + "LOB_TEMP_TABLE=JdbcLobUpdate";&lt;br&gt;&lt;br&gt;        // Creating strings representing a prepared statement and its&lt;br&gt;        // respective parameter values&lt;br&gt;        String sUpdate = "UPDATE employee2 " +&lt;br&gt;                         "SET empResume = ? WHERE empID = ?";&lt;br&gt;&lt;br&gt;        String sSelect = "SELECT empResume FROM employee2 " +&lt;br&gt;                         "WHERE empID = ?";&lt;br&gt;&lt;br&gt;        String newTraining = "Completed Teradata training";&lt;br&gt;        int Id = 100002;&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20404JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(&lt;br&gt;                  " Attempting to connect to Teradata via JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                System.out.println(" Preparing this SQL statement for" +&lt;br&gt;                                   " select: " + sSelect);&lt;br&gt;                // Creating a prepared statement object from an active connection&lt;br&gt;                PreparedStatement pstmt = con.prepareStatement(sSelect);&lt;br&gt;                System.out.println(" Prepared statement object created. ");&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    // The following code will perform a SELECT empResume&lt;br&gt;                    // from the table for the specified employee id&lt;br&gt;                    System.out.println(" Selecting employee resume...");&lt;br&gt;                    System.out.println(" Using setInt() to bind employee id" +&lt;br&gt;                                       " to parameter markers:");&lt;br&gt;                    System.out.println(" FIRST ? set to: " + Id+"");&lt;br&gt;                    // Set the employee id&lt;br&gt;                    pstmt.setInt(1, Id);&lt;br&gt;                    // Submit a query, creating a result set object&lt;br&gt;                    ResultSet rs = pstmt.executeQuery();&lt;br&gt;                    rs.next();&lt;br&gt;                    // Retrieve the resume so we can update it&lt;br&gt;                    Clob empResume = rs.getClob(1);&lt;br&gt;                    // Update the resume with the additional information&lt;br&gt;                    System.out.println(" Updating employee resume using"+&lt;br&gt;                       " Clob.setString...");&lt;br&gt;                    empResume.setString(empResume.length() + 1, newTraining, 0,&lt;br&gt;                                        newTraining.length());&lt;br&gt;                    // Check to see if updates made to a LOB are made on a copy&lt;br&gt;                    // or directly to the LOB. The Teradata JDBC driver updates&lt;br&gt;                    // are made on a copy so it will be necessary to update the&lt;br&gt;                    // original table&lt;br&gt;                    if (con.getMetaData().locatorsUpdateCopy())&lt;br&gt;                    {&lt;br&gt;                        // Prepare the update request&lt;br&gt;                        pstmt = con.prepareStatement(sUpdate);&lt;br&gt;                        // The following code will perform an UPDATE to the table&lt;br&gt;                        System.out.println(" Since updates are made to a copy,"+&lt;br&gt;                       " attempting to update the original"+&lt;br&gt;                       " table...");&lt;br&gt;                        System.out.println(" Using setClob(), setInt()  " +&lt;br&gt;                            "to bind values to parameter markers:");&lt;br&gt;                        // Set parameter values indicated by ? (dynamic update)&lt;br&gt;                        // Set employee resume&lt;br&gt;                        pstmt.setClob(1, empResume);&lt;br&gt;                        System.out.println(" FIRST ? set to updated resume ");&lt;br&gt;                        // Set employee ID number&lt;br&gt;                        pstmt.setInt(2, Id);&lt;br&gt;                        System.out.println(" SECOND ? set to: " + Id);&lt;br&gt;&lt;br&gt;                        // Call without parameter to execute SQL command&lt;br&gt;                        int RowCount = pstmt.executeUpdate();&lt;br&gt;                        System.out.println(" Update completed successfully: " +&lt;br&gt;                                           RowCount + " row(s) updated.");&lt;br&gt;                    }&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    pstmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20404JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20404JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 13:57:00 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20500JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9331-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20500JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata SQL using the JDBC API by&lt;br&gt;//              executing a DELETE statement without using parameter&lt;br&gt;//              markers.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Delete a row from the employee table&lt;br&gt;//                -  Display the number of rows deleted&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.Statement,&lt;br&gt;//            java.sql.Statement.executeUpdate&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20500JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Preparing a deletion command&lt;br&gt;        String sDelete = "DELETE FROM employee WHERE empName = 'Mike Smith'";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20500JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    int RowCount;     // Return value for deleted row count&lt;br&gt;&lt;br&gt;                    // The following code will perform a DELETE on the table&lt;br&gt;                    // and display the number of rows deleted&lt;br&gt;                    System.out.println(" Attempting a deletion: " + sDelete);&lt;br&gt;                    RowCount = stmt.executeUpdate(sDelete);&lt;br&gt;                    System.out.println(" Deletion completed successfully: "&lt;br&gt;                                       + RowCount + " row(s) deleted.");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20500JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20500JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 13:56:45 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20501JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9330-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20501JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata SQL using the JDBC API by&lt;br&gt;//              executing a DELETE statement using parameter markers.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Delete a row from the employee2 table&lt;br&gt;//                -  Display the number of rows deleted&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.PreparedStatement,&lt;br&gt;//            java.sql.PreparedStatement.executeUpdate&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20501JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Creating strings representing a prepared statement and its&lt;br&gt;        // respective parameter value&lt;br&gt;        String sUpdate = "DELETE FROM employee2 WHERE empName = ?";&lt;br&gt;        String Name = "Mike Smith";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20501JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                System.out.println(" Preparing this SQL statement for" +&lt;br&gt;                                   " execution: " + sUpdate);&lt;br&gt;                // Creating a prepared statement object from an active connection&lt;br&gt;                PreparedStatement pstmt = con.prepareStatement(sUpdate);&lt;br&gt;                System.out.println(" Prepared statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    int RowCount;     // Return value for deleted row count&lt;br&gt;&lt;br&gt;                    // The following code will perform a DELETE on the table&lt;br&gt;                    // using a prepared statement.&lt;br&gt;                    System.out.println(" Attempting a deletion...");&lt;br&gt;&lt;br&gt;                    // Set parameter values indicated by ? (dynamic update)&lt;br&gt;                    System.out.println(" Using setString() to assign"&lt;br&gt;                                      + " value to the parameter marker: ");&lt;br&gt;                    pstmt.setString(1, Name);&lt;br&gt;                    System.out.println(" FIRST ? set to: " + Name);&lt;br&gt;&lt;br&gt;                    // Call without parameter to execute SQL command&lt;br&gt;                    RowCount = pstmt.executeUpdate();&lt;br&gt;                    System.out.println(" Deletion completed successfully: "&lt;br&gt;                                       + RowCount + " row(s) deleted.");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    pstmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20501JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20501JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 13:56:33 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20600JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9329-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20600JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata SQL using the JDBC API by&lt;br&gt;//              creating/executing a stored procedure.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Create a stored procedure&lt;br&gt;//                -  Execute the stored procedure&lt;br&gt;//                -  Obtain and display the results&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.Statement,&lt;br&gt;//            java.sql.Statement.executeUpdate,&lt;br&gt;//            java.sql.CallableStatement,&lt;br&gt;//            java.sql.CallableStatement.setString,&lt;br&gt;//            java.sql.CallableStatement.registerOutParameter&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20600JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Stored procedure creation command&lt;br&gt;        String sProcedure =&lt;br&gt;            "REPLACE PROCEDURE getDeptJobInfo " +&lt;br&gt;            "(IN name VARCHAR(30), OUT dept VARCHAR(50), OUT job VARCHAR(300)) " +&lt;br&gt;            "BEGIN " +&lt;br&gt;                "SELECT empDept, empJob INTO :dept, :job " +&lt;br&gt;                "FROM employee " +&lt;br&gt;                "WHERE empName = :name; " +&lt;br&gt;            "END;";&lt;br&gt;        String sCall = "{CALL getDeptJobInfo(?,?,?)}";&lt;br&gt;        String sName = "Brian Lee";&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20600JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    System.out.println(" Attempting to create a procedure : "&lt;br&gt;                                       + sProcedure);&lt;br&gt;                    // Sending the procedure creation DDL request to the&lt;br&gt;                    // database, replacing any old implementations, if present&lt;br&gt;                    stmt.executeUpdate(sProcedure);&lt;br&gt;                    // If no errors occured...&lt;br&gt;                    System.out.println(" Procedure created successfully.");&lt;br&gt;&lt;br&gt;                    // The CallableStatement object represents a precompiled&lt;br&gt;                    // SQL statement. It provides methods for setting up its&lt;br&gt;                    // IN and OUT parameters, and methods for executing the&lt;br&gt;                    // call to a stored procedure. Please refer to the JAVA API&lt;br&gt;                    // or the supporting driver documentation for a complete&lt;br&gt;                    // list of methods, their implementations, and&lt;br&gt;                    // return values.&lt;br&gt;                    // Creating a CallableStatement object for calling the&lt;br&gt;                    // database stored procedure and preparing the callable&lt;br&gt;                    // statement for execution&lt;br&gt;                    CallableStatement cStmt = con.prepareCall(sCall);&lt;br&gt;                    // Setting up input parameter value&lt;br&gt;                    cStmt.setString(1, sName);&lt;br&gt;                    // Setting up output parameters for data retrieval by&lt;br&gt;                    // declaring parameter types.&lt;br&gt;                    cStmt.registerOutParameter(2, Types.VARCHAR);&lt;br&gt;                    cStmt.registerOutParameter(3, Types.VARCHAR);&lt;br&gt;                    System.out.println(" Calling the procedure with '"&lt;br&gt;                                       + sName + "' ...");&lt;br&gt;                    // Making a procedure call&lt;br&gt;                    cStmt.executeUpdate();&lt;br&gt;                    // Displaying procedure call result, please refer to the&lt;br&gt;                    // driver manual for a full list of data retrieval methods&lt;br&gt;                    System.out.println(" Call successful.");&lt;br&gt;                    System.out.println(" Displaying output of the call to "&lt;br&gt;                                       + "getDeptJobInfo(...) : ");&lt;br&gt;                    System.out.println(" " + sName);&lt;br&gt;                    System.out.println(" -----------------");&lt;br&gt;                    System.out.println(" Department : " + cStmt.getString(2));&lt;br&gt;                    System.out.println(" Job Description : " + cStmt.getString(3));&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20600JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20600JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 13:53:46 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20601JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9328-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2004-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20601JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata SQL using the JDBC API by&lt;br&gt;//              creating/executing a stored procedure.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Create a stored procedure with LOB parameters&lt;br&gt;//                -  Execute the stored procedure&lt;br&gt;//                -  Obtain and display the results&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.Statement,&lt;br&gt;//            java.sql.Statement.executeUpdate&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata V2R6&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;import java.io.*;&lt;br&gt;&lt;br&gt;public class T20601JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    // Define maximum buffer size for reading in/writing out data&lt;br&gt;    private static final int BUFFERSIZE = 100;&lt;br&gt;    // Constant defining the number of initial bytes displayed to the user&lt;br&gt;    private static final int DISPLAYSIZE = 50;&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Stored procedure creation command and its respective parameters&lt;br&gt;        String sProcedure =&lt;br&gt;            "REPLACE PROCEDURE getEmpInfo " +&lt;br&gt;            "(IN name VARCHAR(30), OUT id INTEGER, OUT dept VARCHAR(50), " +&lt;br&gt;             "OUT job VARCHAR(300), OUT res CLOB) " +&lt;br&gt;            "BEGIN " +&lt;br&gt;                "SELECT empID, empDept, empJob, empResume " +&lt;br&gt;                "INTO :id, :dept, :job, :res " +&lt;br&gt;                "FROM employee2 " +&lt;br&gt;                "WHERE empName = :name; " +&lt;br&gt;            "END;";&lt;br&gt;        String sCall = "{CALL getEmpInfo(?,?,?,?,?)}";&lt;br&gt;        String sName = "Brian Lee";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20601JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            //Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    System.out.println(" Attempting to create a procedure : "&lt;br&gt;                                       + sProcedure);&lt;br&gt;                    // Sending the procedure creation request to the database,&lt;br&gt;                    // replacing any old implementations, if present&lt;br&gt;                    stmt.executeUpdate(sProcedure);&lt;br&gt;                    System.out.println(" Procedure created successfully.");&lt;br&gt;&lt;br&gt;                    // Creating a CallableStatement object, representing&lt;br&gt;                    // a precompiled SQL statement and preparing the callable&lt;br&gt;                    // statement for execution.&lt;br&gt;                    CallableStatement cStmt = con.prepareCall(sCall);&lt;br&gt;                    // Setting up input parameter value&lt;br&gt;                    cStmt.setString(1, sName);&lt;br&gt;                    // Setting up output parameters for data retrieval by&lt;br&gt;                    // declaring parameter types.&lt;br&gt;                    cStmt.registerOutParameter(2, Types.INTEGER);&lt;br&gt;                    cStmt.registerOutParameter(3, Types.VARCHAR);&lt;br&gt;                    cStmt.registerOutParameter(4, Types.VARCHAR);&lt;br&gt;                    cStmt.registerOutParameter(5, Types.CLOB);&lt;br&gt;                    System.out.println(" Calling the procedure with '"&lt;br&gt;                                       + sName + "' ...");&lt;br&gt;                    // Making a procedure call&lt;br&gt;                    cStmt.executeUpdate();&lt;br&gt;                    // Displaying procedure call result&lt;br&gt;                    System.out.println(" Call successful.");&lt;br&gt;                    System.out.println(" Displaying output of the call to "&lt;br&gt;                                       + "getEmpInfo(...) : ");&lt;br&gt;                    System.out.println(" " + sName);&lt;br&gt;                    System.out.println(" -----------------");&lt;br&gt;                    int id = cStmt.getInt(2);&lt;br&gt;                    System.out.println(" Employee ID : " + id);&lt;br&gt;                    System.out.println(" Department : " + cStmt.getString(3));&lt;br&gt;                    System.out.println(" Job Description : " + cStmt.getString(4));&lt;br&gt;                    System.out.print(" Resume : ");&lt;br&gt;                    // Writing CLOB data out to a file for review&lt;br&gt;                    createClobFile(cStmt.getClob(5), (id + "resumeT20601.txt"));&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20601JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;&lt;br&gt;&lt;br&gt;    private static void createClobFile(Clob clob, String filename)&lt;br&gt;        throws SQLException&lt;br&gt;    {&lt;br&gt;        // This function will read in the Clob data one character at a time&lt;br&gt;        // and write it to the file designated by the string 'filename'&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println("Clob of length = " + clob.length() + " bytes. ");&lt;br&gt;            // Display the first |DISPLAYSIZE| characters&lt;br&gt;            // Set the character data retrieval limit for the display of the&lt;br&gt;            // initial DISPLAYSIZE bytes and retrieve data.&lt;br&gt;            int dispsize = (int)(Math.min(clob.length(), (long)DISPLAYSIZE));&lt;br&gt;            String display = clob.getSubString(1, dispsize);&lt;br&gt;            System.out.println(" First " + DISPLAYSIZE + " bytes (if available): "&lt;br&gt;                               + display);&lt;br&gt;&lt;br&gt;            // Create a file writer object to send clob data to a file&lt;br&gt;            FileWriter fos = new FileWriter(filename);&lt;br&gt;            // Create a character stream reader object to retrieve data&lt;br&gt;            Reader c = clob.getCharacterStream();&lt;br&gt;&lt;br&gt;            // Initializing a buffer for reading in clob data&lt;br&gt;            char[] charBuffer = new char[BUFFERSIZE];&lt;br&gt;            // Initialize a dummy variable representing number of characters&lt;br&gt;            // read into the buffer&lt;br&gt;            int charCount = 0;&lt;br&gt;            // While data is available, read it into a buffer and read out&lt;br&gt;            // to the designated file&lt;br&gt;            while ( (charCount = c.read(charBuffer, 0, BUFFERSIZE)) != -1)&lt;br&gt;            {&lt;br&gt;                // Write out the retrieved character data&lt;br&gt;                fos.write(charBuffer, 0, charCount);&lt;br&gt;            }&lt;br&gt;            // Display success message&lt;br&gt;            System.out.println(" File creation completed successfully. Please "&lt;br&gt;                               + "refer to the following file: " + filename);&lt;br&gt;            // close file/data streams&lt;br&gt;            c.close();&lt;br&gt;            fos.close();&lt;br&gt;        }&lt;br&gt;        catch (IOException ex)&lt;br&gt;        {&lt;br&gt;            System.out.println(" Error writing Clob : " + ex.getMessage());&lt;br&gt;            ex.printStackTrace();&lt;br&gt;        }&lt;br&gt;    } // End createClobFile(...)&lt;br&gt;} // End class T20601JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 13:53:28 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20602JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9327-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2006-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:     T20602JD.java&lt;br&gt;//  Purpose:  This sample application will:&lt;br&gt;//            - Create, delete, display and use an External Stored Procedure&lt;br&gt;//            - The source code for the External Stored Procedure is on the&lt;br&gt;//              client. This requires the source code to be transferred&lt;br&gt;//              from the client node to the server node. The JDBC driver&lt;br&gt;//              uses the the classpath to load all resources. The file&lt;br&gt;//              "getlastname.c" must be on the classpath in order for it to&lt;br&gt;//              be transferred to the server node so it can be used with this&lt;br&gt;//              class.&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20602JD&lt;br&gt;{&lt;br&gt;    public static void main (String[] args)&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        String url       = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;        String user      = "guest";&lt;br&gt;        String password  = "please";&lt;br&gt;        String query1    = "DROP PROCEDURE GetLastNameXSP";&lt;br&gt;        String query2    =&lt;br&gt;            "CREATE PROCEDURE GetLastNameXSP "&lt;br&gt;            + "(INOUT name VARCHAR(30)) "&lt;br&gt;            + "LANGUAGE C "&lt;br&gt;            + "NO SQL "&lt;br&gt;            + "EXTERNAL NAME 'CS!getlastname!getlastname.c!F!xsp_getlastname'";&lt;br&gt;        String query3    = "SHOW PROCEDURE GetLastNameXSP";&lt;br&gt;        String query4     = "{CALL GetLastNameXSP(?)}";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;&lt;br&gt;            Connection con = DriverManager.getConnection(url, user, password);&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    try&lt;br&gt;                    {&lt;br&gt;                        System.out.println();&lt;br&gt;                        System.out.println(&lt;br&gt;                        " Drop the External Stored Procedure if it already exists");&lt;br&gt;                        stmt.executeUpdate(query1);&lt;br&gt;                    }&lt;br&gt;                    catch (SQLException ex)&lt;br&gt;                    {&lt;br&gt;                        System.out.println();&lt;br&gt;                        System.out.println(" Ignoring exception: " + ex);&lt;br&gt;                    }&lt;br&gt;&lt;br&gt;                    System.out.println();&lt;br&gt;                    System.out.println(" Creating the External Stored Procedure");&lt;br&gt;                    stmt.executeUpdate(query2);&lt;br&gt;&lt;br&gt;                    // If no errors occured...&lt;br&gt;                    System.out.println(&lt;br&gt;                        " External Stored Procedure created successfully.");&lt;br&gt;                    System.out.println();&lt;br&gt;                    System.out.println(" Showing the External Stored Procedure");&lt;br&gt;&lt;br&gt;                    ResultSet rs = stmt.executeQuery(query3);&lt;br&gt;&lt;br&gt;                    System.out.println();&lt;br&gt;                    dispResultSet(rs);&lt;br&gt;&lt;br&gt;                    // IN and OUT parameters, and methods for executing the&lt;br&gt;                    // call to a stored procedure. Please refer to the JAVA API&lt;br&gt;                    // or the supporting driver documentation for a complete&lt;br&gt;                    // list of methods, their implementations, and&lt;br&gt;                    // return values.&lt;br&gt;                    // Creating a CallableStatement object for calling the&lt;br&gt;                    // database stored procedure and preparing the callable&lt;br&gt;                    // statement for execution&lt;br&gt;                    CallableStatement cStmt = con.prepareCall(query4);&lt;br&gt;&lt;br&gt;                    try&lt;br&gt;                    {&lt;br&gt;&lt;br&gt;                        // Setting up input parameter value&lt;br&gt;                        String sName = "John Smith";&lt;br&gt;&lt;br&gt;                        cStmt.setString(1, sName);&lt;br&gt;&lt;br&gt;                        // Setting up output parameters for data retrieval by&lt;br&gt;                        // declaring parameter types.&lt;br&gt;                        cStmt.registerOutParameter(1, Types.VARCHAR);&lt;br&gt;                        System.out.println(" Calling the procedure with '"&lt;br&gt;                                           + sName + "' ...");&lt;br&gt;&lt;br&gt;                        // Making a procedure call&lt;br&gt;                        cStmt.executeUpdate();&lt;br&gt;&lt;br&gt;                        // Displaying procedure call result, please refer to the&lt;br&gt;                        // driver manual for a full list of data retrieval methods&lt;br&gt;                        System.out.println(" Call successful.");&lt;br&gt;                        System.out.println(&lt;br&gt;                            " Displaying output of the call to "&lt;br&gt;                            + "GetLastNameXSP(...) : ");&lt;br&gt;                        System.out.println(" " + sName);&lt;br&gt;                        System.out.println(" -----------------");&lt;br&gt;                        System.out.println(" Employee Last Name : "&lt;br&gt;                                           + cStmt.getString(1));&lt;br&gt;                    }&lt;br&gt;                    finally&lt;br&gt;                    {&lt;br&gt;&lt;br&gt;                        // Close the callable statement&lt;br&gt;                        cStmt.close();&lt;br&gt;                        System.out.println(&lt;br&gt;                            " CallableStatement object closed. ");&lt;br&gt;                    }&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    stmt.close();&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                System.out.println();&lt;br&gt;                System.out.println(" Closing Connection");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Closed Connection");&lt;br&gt;            }&lt;br&gt;            System.out.println(" Sample T20602JD finished.");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // end main&lt;br&gt;&lt;br&gt;    private static void dispResultSet (ResultSet rs)&lt;br&gt;        throws SQLException&lt;br&gt;    {&lt;br&gt;        ResultSetMetaData rsmd    = rs.getMetaData();&lt;br&gt;        int               numCols = rsmd.getColumnCount();&lt;br&gt;&lt;br&gt;        for (int nRow = 1; rs.next(); nRow++)&lt;br&gt;        {&lt;br&gt;            for (int i = 1; i &amp;lt;= numCols; i++)&lt;br&gt;            {&lt;br&gt;                if (i == 1) System.out.print(" Row " + nRow + ": ");&lt;br&gt;                else System.out.print(", ");&lt;br&gt;&lt;br&gt;                String s = rs.getString(i);&lt;br&gt;&lt;br&gt;                if (s != null)&lt;br&gt;                    s = s.replaceAll("\r", "").replaceAll("\r",&lt;br&gt;                                     "").replaceAll("$",&lt;br&gt;                                      "").replaceAll("", "        ");&lt;br&gt;&lt;br&gt;                System.out.print(s);&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println();&lt;br&gt;        }&lt;br&gt;    }    // end dispResultSet&lt;br&gt;}    // end class T20602JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 13:53:14 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20603JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9326-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2006-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20603JD.java&lt;br&gt;//&lt;br&gt;//  Header:      none&lt;br&gt;//  Purpose:    This sample application installs a jar from the client to&lt;br&gt;//              the DBS server for Java Stored Procedures. The JDBC driver uses the&lt;br&gt;//              classpath to load all resources. The file "SampleJXSP.jar" must be on&lt;br&gt;//              the classpath in order for it to be transferred to the server node so&lt;br&gt;//              it can be installed by this sample class using the JDBC driver .&lt;br&gt;//&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Remove any stored procedures&lt;br&gt;//                   which may access the jar about&lt;br&gt;//                   to be installed&lt;br&gt;//                -  Remove old jar file if it is installed&lt;br&gt;//                -  Install new jar file&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.Statement,&lt;br&gt;//            java.sql.Statement.executeUpdate&lt;br&gt;//&lt;br&gt;//  Version: Created for Teradata Database 12.0 &amp;amp; 13.0&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20603JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main (String args [])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI";&lt;br&gt;        String[] sDropProcedures =&lt;br&gt;        {&lt;br&gt;              "DROP procedure getDeptJobInfo",&lt;br&gt;              "DROP procedure getEmpInfo",&lt;br&gt;              "DROP procedure getBookInfoByAuthor",&lt;br&gt;              "DROP procedure getBookInfoByTitleAndPublisher"&lt;br&gt;        };&lt;br&gt;        String sRemoveJar = "{call sqlj.remove_jar(?,0)}";&lt;br&gt;        String sInstallJar = "{call sqlj.install_jar(?,?,0)}";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;           System.out.println(" Sample T20603JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(&lt;br&gt;                " Attempting to connect to Teradata via the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    for (int i = 0; i &amp;lt; sDropProcedures.length; i++)&lt;br&gt;                    {&lt;br&gt;                        try&lt;br&gt;                        {&lt;br&gt;                            System.out.println(&lt;br&gt;                                " Attempting to drop a stored procedure : " +&lt;br&gt;                                sDropProcedures[i]);&lt;br&gt;                            // Attempt to drop stored procedure in case it&lt;br&gt;                            // exists. This is done to make sure no resource&lt;br&gt;                            // refers to the jar file that will be removed and&lt;br&gt;                            // installed.&lt;br&gt;                            stmt.executeUpdate(sDropProcedures[i]);&lt;br&gt;                        }&lt;br&gt;                        catch (SQLException e)&lt;br&gt;                        {&lt;br&gt;                            System.out.println(" Ignoring Exception: " + e);&lt;br&gt;                        }&lt;br&gt;                    }&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    System.out.println(" Closing the Statement object ");&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object has been closed " &lt;br&gt;                }&lt;br&gt;&lt;br&gt;                System.out.println(&lt;br&gt;                    " Attempting to remove SampleJXSP.jar : " + sRemoveJar);&lt;br&gt;                CallableStatement cStmt = con.prepareCall(sRemoveJar);&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    cStmt.setString(1, "SampleJXSP");&lt;br&gt;                    cStmt.executeUpdate();&lt;br&gt;                    System.out.println(" SampleJXSP.jar removed successfully. ");&lt;br&gt;                }&lt;br&gt;                catch (SQLException e)&lt;br&gt;                {&lt;br&gt;                    System.out.println(" Ignoring Exception: " + e);&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    System.out.println(" Closing the CallableStatement Object ");&lt;br&gt;                    cStmt.close();&lt;br&gt;                    System.out.println(" CallableStatement object has been closed " &lt;br&gt;                }&lt;br&gt;&lt;br&gt;                System.out.println(" Installing SampleJXSP.jar ");&lt;br&gt;                cStmt = con.prepareCall(sInstallJar);&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    cStmt.setString(1,"cj!SampleJXSP.jar");&lt;br&gt;                    cStmt.setString(2,"SampleJXSP");&lt;br&gt;                    cStmt.executeUpdate();&lt;br&gt;                    System.out.println(" SampleJXSP.jar installed successfully ");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    System.out.println(" Closing the CallableStatement Object ");&lt;br&gt;                    cStmt.close();&lt;br&gt;                    System.out.println(" CallableStatement object has been closed " &lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                System.out.println(" Closing Connection");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection has been closed ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20603JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // Note that there could be multiple SQLException objects&lt;br&gt;            // chained together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;}&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 13:52:58 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20604JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9325-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2006-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20604JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata SQL using the JDBC API by&lt;br&gt;//              creating/executing a Java Stored Procedure.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Create a stored procedure&lt;br&gt;//                -  Execute the stored procedure&lt;br&gt;//                -  Obtain and display the results&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.Statement,&lt;br&gt;//            java.sql.Statement.executeUpdate,&lt;br&gt;//            java.sql.CallableStatement,&lt;br&gt;//            java.sql.CallableStatement.setString,&lt;br&gt;//            java.sql.CallableStatement.registerOutParameter&lt;br&gt;//&lt;br&gt;//  Version: Created for Teradata Database 12&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20604JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        //Create a Java Stored Procedure creation command&lt;br&gt;        String sProcedure =&lt;br&gt;            "REPLACE PROCEDURE getDeptJobInfo " +&lt;br&gt;            "(IN name VARCHAR(30), OUT dept VARCHAR(50), OUT job VARCHAR(300)) " +&lt;br&gt;            "LANGUAGE JAVA MODIFIES SQL DATA " +&lt;br&gt;            "PARAMETER STYLE JAVA " +&lt;br&gt;            "EXTERNAL NAME" +&lt;br&gt;            " 'SampleJXSP:com.teradata.sample.DeptJobInfo.getDeptJobInfo'";&lt;br&gt;&lt;br&gt;        String sCall = "{CALL getDeptJobInfo(?,?,?)}";&lt;br&gt;        String sName = "Brian Lee";&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20604JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(&lt;br&gt;                " Attempting to connect to Teradata via the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    System.out.println(" Attempting to create a procedure : "&lt;br&gt;                                       + sProcedure);&lt;br&gt;                    // Sending the procedure creation DDL request to the&lt;br&gt;                    // database, replacing any old implementations, if present&lt;br&gt;                    stmt.executeUpdate(sProcedure);&lt;br&gt;                    // If no errors occured...&lt;br&gt;                    System.out.println(" Procedure created successfully.");&lt;br&gt;&lt;br&gt;                    // The CallableStatement object represents a precompiled&lt;br&gt;                    // SQL statement. It provides methods for setting up its&lt;br&gt;                    // IN and OUT parameters, and methods for executing the&lt;br&gt;                    // call to a stored procedure. Please refer to the JAVA API&lt;br&gt;                    // or the supporting driver documentation for a complete&lt;br&gt;                    // list of methods, their implementations, and&lt;br&gt;                    // return values.&lt;br&gt;                    // Creating a CallableStatement object for calling the&lt;br&gt;                    // database stored procedure and preparing the callable&lt;br&gt;                    // statement for execution&lt;br&gt;                    CallableStatement cStmt = con.prepareCall(sCall);&lt;br&gt;                    // Setting up input parameter value&lt;br&gt;                    cStmt.setString(1, sName);&lt;br&gt;                    // Setting up output parameters for data retrieval by&lt;br&gt;                    // declaring parameter types.&lt;br&gt;                    cStmt.registerOutParameter(2, Types.VARCHAR);&lt;br&gt;                    cStmt.registerOutParameter(3, Types.VARCHAR);&lt;br&gt;                    System.out.println(" Calling the procedure with '"&lt;br&gt;                                       + sName + "' ...");&lt;br&gt;                    // Making a procedure call&lt;br&gt;                    cStmt.executeUpdate();&lt;br&gt;                    // Displaying procedure call result, please refer to the&lt;br&gt;                    // driver manual for a full list of data retrieval methods&lt;br&gt;                    System.out.println(" Call successful.");&lt;br&gt;                    System.out.println(" Displaying output of the call to "&lt;br&gt;                                       + "getDeptJobInfo(...) : ");&lt;br&gt;                    System.out.println(" " + sName);&lt;br&gt;                    System.out.println(" -----------------");&lt;br&gt;                    System.out.println(" Department : " + cStmt.getString(2));&lt;br&gt;                    System.out.println(" Job Description : " + cStmt.getString(3));&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20604JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20604JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 13:52:44 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20605JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9324-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2006-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20605JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata SQL using the JDBC API by&lt;br&gt;//              creating/executing a Java Stored Procedure.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Create a stored java procedure with LOB parameters&lt;br&gt;//                -  Execute the stored procedure&lt;br&gt;//                -  Obtain and display the results&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.Statement,&lt;br&gt;//            java.sql.Statement.executeUpdate&lt;br&gt;//&lt;br&gt;//  Version: Created for Teradata Database 12&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;import java.io.*;&lt;br&gt;&lt;br&gt;public class T20605JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    // Define maximum buffer size for reading in/writing out data&lt;br&gt;    private static final int BUFFERSIZE = 100;&lt;br&gt;    // Constant defining the number of initial bytes displayed to the user&lt;br&gt;    private static final int DISPLAYSIZE = 50;&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Stored procedure creation command and its respective parameters&lt;br&gt;        String sProcedure =&lt;br&gt;            "REPLACE PROCEDURE getEmpInfo " +&lt;br&gt;            "(IN name VARCHAR(30), OUT id INTEGER, OUT dept VARCHAR(50), " +&lt;br&gt;             "OUT job VARCHAR(300), OUT res CLOB) " +&lt;br&gt;             "LANGUAGE JAVA MODIFIES SQL DATA " +&lt;br&gt;             "PARAMETER STYLE JAVA " +&lt;br&gt;             "EXTERNAL NAME 'SampleJXSP:com.teradata.sample.EmpInfo.getEmpInfo(" +&lt;br&gt;             "java.lang.String,java.lang.Integer[],java.lang.String[]," +&lt;br&gt;             "java.lang.String[],java.sql.Clob[])'";&lt;br&gt;&lt;br&gt;        String sCall = "{CALL getEmpInfo(?,?,?,?,?)}";&lt;br&gt;        String sName = "Brian Lee";&lt;br&gt;&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20605JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            //Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(&lt;br&gt;                " Attempting to connect to Teradata via the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;&lt;br&gt;                // Creating a statement object from an active connection&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    System.out.println(" Attempting to create a procedure : "&lt;br&gt;                                       + sProcedure);&lt;br&gt;                    // Sending the procedure creation request to the database,&lt;br&gt;                    // replacing any old implementations, if present&lt;br&gt;                    stmt.executeUpdate(sProcedure);&lt;br&gt;                    System.out.println(" Procedure created successfully.");&lt;br&gt;&lt;br&gt;                    // Creating a CallableStatement object, representing&lt;br&gt;                    // a precompiled SQL statement and preparing the callable&lt;br&gt;                    // statement for execution.&lt;br&gt;                    CallableStatement cStmt = con.prepareCall(sCall);&lt;br&gt;                    // Setting up input parameter value&lt;br&gt;                    cStmt.setString(1, sName);&lt;br&gt;                    // Setting up output parameters for data retrieval by&lt;br&gt;                    // declaring parameter types.&lt;br&gt;                    cStmt.registerOutParameter(2, Types.INTEGER);&lt;br&gt;                    cStmt.registerOutParameter(3, Types.VARCHAR);&lt;br&gt;                    cStmt.registerOutParameter(4, Types.VARCHAR);&lt;br&gt;                    cStmt.registerOutParameter(5, Types.CLOB);&lt;br&gt;                    System.out.println(" Calling the procedure with '"&lt;br&gt;                                       + sName + "' ...");&lt;br&gt;                    // Making a procedure call&lt;br&gt;                    cStmt.executeUpdate();&lt;br&gt;                    // Displaying procedure call result&lt;br&gt;                    System.out.println(" Call successful.");&lt;br&gt;                    System.out.println(" Displaying output of the call to "&lt;br&gt;                                       + "getEmpInfo(...) : ");&lt;br&gt;                    System.out.println(" " + sName);&lt;br&gt;                    System.out.println(" -----------------");&lt;br&gt;                    int id = cStmt.getInt(2);&lt;br&gt;                    System.out.println(" Employee ID : " + id);&lt;br&gt;                    System.out.println(" Department : " + cStmt.getString(3));&lt;br&gt;                    System.out.println(" Job Description : " + cStmt.getString(4));&lt;br&gt;                    System.out.print(" Resume : ");&lt;br&gt;                    // Writing CLOB data out to a file for review&lt;br&gt;                    createClobFile(cStmt.getClob(5), (id + "resumeT20605.txt"));&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20605JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;&lt;br&gt;&lt;br&gt;    private static void createClobFile(Clob clob, String filename)&lt;br&gt;        throws SQLException&lt;br&gt;    {&lt;br&gt;        // This function will read in the Clob data one character at a time&lt;br&gt;        // and write it to the file designated by the string 'filename'&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println("Clob of length = " + clob.length() + " bytes. ");&lt;br&gt;            // Display the first |DISPLAYSIZE| characters&lt;br&gt;            // Set the character data retrieval limit for the display of the&lt;br&gt;            // initial DISPLAYSIZE bytes and retrieve data.&lt;br&gt;            int dispsize = (int)(Math.min(clob.length(), (long)DISPLAYSIZE));&lt;br&gt;            String display = clob.getSubString(1, dispsize);&lt;br&gt;            System.out.println(" First " + DISPLAYSIZE + " bytes (if available): "&lt;br&gt;                               + display);&lt;br&gt;&lt;br&gt;            // Create a file writer object to send clob data to a file&lt;br&gt;            FileWriter fos = new FileWriter(filename);&lt;br&gt;            // Create a character stream reader object to retrieve data&lt;br&gt;            Reader c = clob.getCharacterStream();&lt;br&gt;&lt;br&gt;            // Initializing a buffer for reading in clob data&lt;br&gt;            char[] charBuffer = new char[BUFFERSIZE];&lt;br&gt;            // Initialize a dummy variable representing number of characters&lt;br&gt;            // read into the buffer&lt;br&gt;            int charCount = 0;&lt;br&gt;            // While data is available, read it into a buffer and read out&lt;br&gt;            // to the designated file&lt;br&gt;            while ( (charCount = c.read(charBuffer, 0, BUFFERSIZE)) != -1)&lt;br&gt;            {&lt;br&gt;                // Write out the retrieved character data&lt;br&gt;                fos.write(charBuffer, 0, charCount);&lt;br&gt;            }&lt;br&gt;            // Display success message&lt;br&gt;            System.out.println(" File creation completed successfully. Please "&lt;br&gt;                               + "refer to the following file: " + filename);&lt;br&gt;            // close file/data streams&lt;br&gt;            c.close();&lt;br&gt;            fos.close();&lt;br&gt;        }&lt;br&gt;        catch (IOException ex)&lt;br&gt;        {&lt;br&gt;            System.out.println(" Error writing Clob : " + ex.getMessage());&lt;br&gt;            ex.printStackTrace();&lt;br&gt;        }&lt;br&gt;    } // End createClobFile(...)&lt;br&gt;} // End class T20605JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 13:52:27 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20606JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9323-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2006-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CORPORATION CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20606JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata SQL using the JDBC API by&lt;br&gt;//              creating/executing a stored procedure and retrieving&lt;br&gt;//              dynamic result sets.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Create a stored procedure&lt;br&gt;//                -  Execute the stored procedure&lt;br&gt;//                -  Obtain and display the dynamic result sets&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.Statement,&lt;br&gt;//            java.sql.Statement.executeUpdate,&lt;br&gt;//            java.sql.CallableStatement,&lt;br&gt;//            java.sql.CallableStatement.setString,&lt;br&gt;//            java.sql.CallableStatement.executeQuery&lt;br&gt;//&lt;br&gt;//  Version: Updated for Teradata Database 12&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20606JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        // Stored procedure creation command&lt;br&gt;        String sProcedure = "REPLACE PROCEDURE getDeptEmployees"&lt;br&gt;                    +"(IN empDept VARCHAR(30)) "&lt;br&gt;                    +"DYNAMIC RESULT SETS 1 "&lt;br&gt;                    +"BEGIN "&lt;br&gt;                    +"     DECLARE cur1 CURSOR WITH RETURN ONLY FOR "&lt;br&gt;                    +"        SELECT empID, empName, empJob FROM employee2"&lt;br&gt;                    +"           WHERE empDept = :empDept ORDER BY empID; "&lt;br&gt;                    +"     OPEN cur1; "&lt;br&gt;                    +"END;";&lt;br&gt;        String sCall = "{CALL getDeptEmployees(?)}";&lt;br&gt;        String sDept = "Human Resources";&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20606JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(" Attempting to connect to Teradata via" +&lt;br&gt;                               " the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;                    System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    System.out.println(" Attempting to create a procedure : ");&lt;br&gt;                    System.out.println(" "+sProcedure);&lt;br&gt;                    // Sending the procedure creation DDL request to the&lt;br&gt;                    // database, replacing any old implementations, if present&lt;br&gt;                    stmt.executeUpdate(sProcedure);&lt;br&gt;                    // If no errors occured...&lt;br&gt;                    System.out.println(" Procedure created successfully.");&lt;br&gt;&lt;br&gt;                    // The CallableStatement object represents a precompiled&lt;br&gt;                    // SQL statement. It provides methods for setting up its&lt;br&gt;                    // IN and OUT parameters, and methods for executing the&lt;br&gt;                    // call to a stored procedure. Please refer to the JAVA API&lt;br&gt;                    // or the supporting driver documentation for a complete&lt;br&gt;                    // list of methods, their implementations, and&lt;br&gt;                    // return values.&lt;br&gt;                    // Creating a CallableStatement object for calling the&lt;br&gt;                    // database stored procedure and preparing the callable&lt;br&gt;                    // statement for execution&lt;br&gt;                    CallableStatement cStmt = con.prepareCall(sCall);&lt;br&gt;                    // Setting input parameter value&lt;br&gt;                    cStmt.setString(1, sDept);&lt;br&gt;                    System.out.println(" Calling the procedure with '"&lt;br&gt;                                       + sDept + "' ...");&lt;br&gt;                    // Making a procedure call, creating a result set object&lt;br&gt;                    ResultSet rs = cStmt.executeQuery();&lt;br&gt;                    // Displaying procedure call result, please refer to the&lt;br&gt;                    // driver manual for a full list of data retrieval methods&lt;br&gt;                    System.out.println(" Call successful.");&lt;br&gt;                    // Extract and display dynamic result set data&lt;br&gt;                    System.out.println();&lt;br&gt;                    System.out.print(" DISPLAYING EMPLOYEES FOR DEPARTMENT: ");&lt;br&gt;                    System.out.println(sDept);&lt;br&gt;                    System.out.print(" --------------------------");&lt;br&gt;                    System.out.println("--------------------------");&lt;br&gt;&lt;br&gt;                    int rowCount = 0;   // result set row counter&lt;br&gt;                    int numData;        // placeholder for integer data&lt;br&gt;                    String charData;    // placeholder for character data&lt;br&gt;&lt;br&gt;                    // iterate through all returned rows and display them&lt;br&gt;                    while (rs.next())&lt;br&gt;                    {&lt;br&gt;                        rowCount++;   // increment retrieved row counter&lt;br&gt;                        System.out.println();&lt;br&gt;                        // retrieve and display first column value&lt;br&gt;                        numData = rs.getInt(1);&lt;br&gt;                        System.out.println(" Employee ID: " + numData);&lt;br&gt;                        // retrieve and display second column value&lt;br&gt;                        charData = rs.getString(2);&lt;br&gt;                        System.out.println(" Name: " + charData);&lt;br&gt;                        // retrieve and display third column value&lt;br&gt;                        charData = rs.getString(3);&lt;br&gt;                        System.out.println(" Job Description: " + charData);&lt;br&gt;                   }&lt;br&gt;                   System.out.println(" " + rowCount + " Row(s) returned.");&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20606JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20606JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 13:50:53 GMT</pubDate><dc:creator>tnolan</dc:creator></item><item><title>T20607JD.java</title><link>http://www.teradata.com/DownloadCenter/Topic9322-99-1.aspx</link><description>&lt;span style='font-size:9.0pt;font-family:Courier New'&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//                 Copyright (c) 2007-2008 by Teradata Corporation&lt;br&gt;//                         All Rights Reserved&lt;br&gt;//&lt;br&gt;//                   TERADATA CONFIDENTIAL AND TRADE SECRET&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;//&lt;br&gt;//  File:       T20607JD.java&lt;br&gt;//  Header:     none&lt;br&gt;//  Purpose:    Demonstrate basic Teradata SQL using the JDBC API by&lt;br&gt;//              creating/executing a Java Stored Procedure that returns&lt;br&gt;//              a result set.&lt;br&gt;//              The program will:&lt;br&gt;//                -  Connect as user guest/please&lt;br&gt;//                -  Create a stored procedure&lt;br&gt;//                -  Execute the stored procedure&lt;br&gt;//                -  Obtain and display the result set&lt;br&gt;//                -  Disconnect.&lt;br&gt;//&lt;br&gt;//  JDBC API: java.sql.Connection, java.sql.Statement,&lt;br&gt;//            java.sql.Statement.executeQuery,&lt;br&gt;//            java.sql.CallableStatement,&lt;br&gt;//            java.sql.CallableStatement.setString,&lt;br&gt;//            java.sql.ResultSet.next&lt;br&gt;//            java.sql.ResultSet.getString&lt;br&gt;//            java.sql.ResultSet.getMetaData&lt;br&gt;//            java.sql.MetaData.getColumnName&lt;br&gt;//            java.sql.MetaData.getColumnCount&lt;br&gt;//&lt;br&gt;//  Version: Created for Teradata Database 13.0&lt;br&gt;//&lt;br&gt;//************************************************************************************&lt;br&gt;&lt;br&gt;import java.sql.*;&lt;br&gt;&lt;br&gt;public class T20607JD&lt;br&gt;{&lt;br&gt;    // Name of the user able to create, drop, and manipulate tables&lt;br&gt;    public static String sUser = "guest";&lt;br&gt;    public static String sPassword = "please";&lt;br&gt;&lt;br&gt;    public static void main(String args[])&lt;br&gt;    throws ClassNotFoundException&lt;br&gt;    {&lt;br&gt;        // Creation of URL to be passed to the JDBC driver&lt;br&gt;        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";&lt;br&gt;&lt;br&gt;        //Create a Java Stored Procedure creation command. Since&lt;br&gt;        //a result set is being returned, it must be specified.&lt;br&gt;        String sProcedure =&lt;br&gt;            "REPLACE PROCEDURE getBookInfoByAuthor " +&lt;br&gt;            "(IN author VARCHAR(30)) " +&lt;br&gt;            "LANGUAGE JAVA MODIFIES SQL DATA " +&lt;br&gt;            "PARAMETER STYLE JAVA " +&lt;br&gt;            "DYNAMIC RESULT SETS 1 " +&lt;br&gt;            "EXTERNAL NAME" +&lt;br&gt;            " 'SampleJXSP:com.teradata.sample.BookInfo.getBookInfoByAuthor'";&lt;br&gt;&lt;br&gt;        String sCall = "{CALL getBookInfoByAuthor(?)}";&lt;br&gt;        String sAuthor = "White, Joseph";&lt;br&gt;        try&lt;br&gt;        {&lt;br&gt;            System.out.println(" Sample T20607JD: ");&lt;br&gt;            System.out.println(" Looking for the Teradata JDBC driver... ");&lt;br&gt;            // Loading the Teradata JDBC driver&lt;br&gt;            Class.forName("com.teradata.jdbc.TeraDriver");&lt;br&gt;            System.out.println(" JDBC driver loaded. ");&lt;br&gt;&lt;br&gt;            // Attempting to connect to Teradata&lt;br&gt;            System.out.println(&lt;br&gt;                " Attempting to connect to Teradata via the JDBC driver...");&lt;br&gt;&lt;br&gt;            // Creating a connection object&lt;br&gt;            Connection con = DriverManager.getConnection(url, sUser, sPassword);&lt;br&gt;            System.out.println(" User " + sUser + " connected.");&lt;br&gt;            System.out.println(" Connection to Teradata established. ");&lt;br&gt;&lt;br&gt;            try&lt;br&gt;            {&lt;br&gt;                // Creating a statement object from an active connection&lt;br&gt;                Statement stmt = con.createStatement();&lt;br&gt;                System.out.println(" Statement object created. ");&lt;br&gt;&lt;br&gt;                try&lt;br&gt;                {&lt;br&gt;                    System.out.println(" Attempting to create a procedure : "&lt;br&gt;                                       + sProcedure);&lt;br&gt;                    // Sending the procedure creation DDL request to the&lt;br&gt;                    // database, replacing any old implementations, if present&lt;br&gt;                    stmt.executeUpdate(sProcedure);&lt;br&gt;                    // If no errors occured...&lt;br&gt;                    System.out.println(" Procedure created successfully.");&lt;br&gt;&lt;br&gt;                    // The CallableStatement object represents a precompiled&lt;br&gt;                    // SQL statement. It provides methods for setting up its&lt;br&gt;                    // IN and OUT parameters, and methods for executing the&lt;br&gt;                    // call to a stored procedure. Please refer to the JAVA API&lt;br&gt;                    // or the supporting driver documentation for a complete&lt;br&gt;                    // list of methods, their implementations, and&lt;br&gt;                    // return values.&lt;br&gt;                    // Creating a CallableStatement object for calling the&lt;br&gt;                    // database stored procedure and preparing the callable&lt;br&gt;                    // statement for execution&lt;br&gt;                    CallableStatement cStmt = con.prepareCall(sCall);&lt;br&gt;                    // Setting up input parameter value&lt;br&gt;                    cStmt.setString(1, sAuthor);&lt;br&gt;                    System.out.println(" Calling the procedure with '"&lt;br&gt;                                       + sAuthor + "' ...");&lt;br&gt;                    // Making a procedure call&lt;br&gt;                    ResultSet rs = cStmt.executeQuery();&lt;br&gt;                    // Displaying procedure result set, please refer to the&lt;br&gt;                    // driver manual for a full list of data retrieval methods&lt;br&gt;                    System.out.println(" Call successful.");&lt;br&gt;                    while (rs.next())&lt;br&gt;                    {&lt;br&gt;                        System.out.println(&lt;br&gt;                            " Displaying the result set returned by procedure"+&lt;br&gt;                            " call to getBookInfoByAuthor(...) : ");&lt;br&gt;                        System.out.println(" Book Author: " + sAuthor);&lt;br&gt;                        System.out.println(" --------------------------");&lt;br&gt;                        for (int colNum = 1;&lt;br&gt;                             colNum &amp;lt;= rs.getMetaData().getColumnCount();&lt;br&gt;                             colNum++)&lt;br&gt;                        {&lt;br&gt;                            System.out.println(&lt;br&gt;                                " "+rs.getMetaData().getColumnName(colNum)&lt;br&gt;                                + " : " +rs.getString(colNum));&lt;br&gt;                        }&lt;br&gt;                    }&lt;br&gt;                }&lt;br&gt;                finally&lt;br&gt;                {&lt;br&gt;                    // Close the statement&lt;br&gt;                    stmt.close();&lt;br&gt;                    System.out.println(" Statement object closed. ");&lt;br&gt;                }&lt;br&gt;            }&lt;br&gt;            finally&lt;br&gt;            {&lt;br&gt;                // Close the connection&lt;br&gt;                System.out.println(" Closing connection to Teradata...");&lt;br&gt;                con.close();&lt;br&gt;                System.out.println(" Connection to Teradata closed. ");&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            System.out.println(" Sample T20607JD finished. ");&lt;br&gt;        }&lt;br&gt;        catch (SQLException ex)&lt;br&gt;        {&lt;br&gt;            // A SQLException was generated.  Catch it and display&lt;br&gt;            // the error information.&lt;br&gt;            // Note that there could be multiple error objects chained&lt;br&gt;            // together.&lt;br&gt;            System.out.println();&lt;br&gt;            System.out.println("*** SQLException caught ***");&lt;br&gt;&lt;br&gt;            while (ex != null)&lt;br&gt;            {&lt;br&gt;                System.out.println(" Error code: " + ex.getErrorCode());&lt;br&gt;                System.out.println(" SQL State: " + ex.getSQLState());&lt;br&gt;                System.out.println(" Message: " + ex.getMessage());&lt;br&gt;                ex.printStackTrace();&lt;br&gt;                System.out.println();&lt;br&gt;                ex = ex.getNextException();&lt;br&gt;            }&lt;br&gt;&lt;br&gt;            throw new IllegalStateException ("Sample failed.") ;&lt;br&gt;        }&lt;br&gt;    } // End main&lt;br&gt;} // End class T20607JD&lt;br&gt;&lt;/span&gt;</description><pubDate>Thu, 04 Sep 2008 13:50:37 GMT</pubDate><dc:creator>tnolan</dc:creator></item></channel></rss>