123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236 |
- /***************************************************************************
- * Licensed Materials - Property of IBM and/or HCL
- *
- * IBM Informix Client-SDK
- *
- * (C) Copyright IBM Corporation 2010 All rights reserved.
- * (c) Copyright HCL Technologies Ltd. 2017. All Rights Reserved.
- *
- *
- *
- *
- *
- * Title: readme.txt
- *
- * Description: readme file describing the ODBC 3.81 demo programs and
- * containing instructions on setting up and running the
- * demos
- *
- *
- ***************************************************************************
- */
- The ODBC 3.81 demo programs
- --------------------------
- This release of the Client-SDK contains a number of ODBC demo programs.
- This release also includes unicode enabled versions of all ODBC demo
- programs.
- These demo programs are located in -
- %INFORMIXDIR%/demo/odbcdemo for NT, and
- $INFORMIXDIR/demo/cli for Unix
- The following files are included -
- (I) Files for creating and dropping the sample database (3 files)
- -----------------------------------------------------------------
- 1. dbcreate.h
- 2. dbcreate.c
- -- Creates and populates the demo database - 'odbc_demodb'. The actual
- database created depends on the version of the Informix server being
- connected to. If the database version is greater then 9, the demo
- database created is UDO-enabled, otherwise not.
-
- This example must be run before running any of the other examples.
- 3. dbdrop.c - Drops the sample database created using db_create.c.
- (II) General ODBC examples (7 files)
- ------------------------------------
- 1. blkinsrt.c
- -- Inserts multiple rows of data into a database table using
- SQLBulkOperations.
- 2. catalog.c
- -- Shows the use of catalog functions. Displays a list of tables in
- the current database, and for each table, lists its columns and
- identifies the primary key columns.
- 3. desc.c
- -- Uses a single descriptor as an ARD for a select statement and
- an APD for an insert statement.
- 4. rsetinfo.c
- -- Uses SQLNumResultCols & SQLDescribeCol to obtain information about
- the result set returned by the query & display additional information
- about the data returned (number of columns in the result set, and
- the name, datatype and nullability of each column)
- 5. posupdt.c
- -- Uses SQLSetPos for making positional updates to a result set
-
- 6. proc.c
- -- Demonstrates calling a stored procedure from an ODBC program and
- returning multiple values from the procedure to the ODBC application
- 7. transact.c
- -- Uses SQLEndTran to commit or rollback operations on the connection
-
- (III) Informix specific examples -- for UDO-enabled databases only (8 files)
- ----------------------------------------------------------------------------
- 1. locreate.c
- -- Creates a large object on the client (from a local file) and inserts
- it into the database table.
- 2. loselect.c
- -- Retrieves CLOB data from the database and displays it
- 3. loinfo.c
- -- Gets information about a smart large object stored in the database
- (it's size and the name of the sbspace where it is stored)
- 4. rccreate.c
- -- Create a row & list, populate them & insert them into the database table
- 5. rcselect.c
- -- Demonstrates retrieving data from a row and a collection.
- 2 queries are executed in this example - the first to retrieve a row and
- the second to retrieve a collection. A common function is used to do the
- actual retrieval & display of the data, with the appropriate handle
- (row or collection) passed in as an argument.
- 6. rcupdate.c
- -- Updates row and collection columns.
- To update the row, we update one of the elements of the row and then
- update the entire row on the database.
- To update the list, we add an element to the list and then update the
- list on the database
- 7. distsel.c
- -- Retrieves rows containing a distinct type. Distinct types are retrieved
- as their underlying base type
- 8. OutInOutParamBlob.c
- -- Demonstrates Out, In and InOut Parameters in BLOB data.
- (IV) ODBC XA Examples (1 file)
- ------------------------------
- 1. OnePhaseCommitRollback.c
- -- exhibits the XA support in ODBC through a simple One Phase Commit-Rollback
- example
- (V) Miscellaneous files (8 files)
- ----------------------------------
- 1. readme.txt
- -- this file containing an explanation of what each demo
- does and how to set up & run the demmos
- 2. makefile (for NT) or makefile.<platform> (for other platforms)
- -- to compile the demo programs and create the executables
- 3. advert.txt
- -- File containing CLOB data. Used for inserting the new row containing
- CLOB data in locreate.c
- 4. item_1.txt
- 5. item_2.txt
- 6. item_3.txt
- 7. item_4 txt
- -- files conatining CLOB data to be inserted as the 'advert' column in
- the 'item' table. Used by debcreate.c
- 8. insert.txt
- -- File containing data. Used for inserting the new row containing
- CLOB data in OutInOutParamBlob.c
- Setting up and running the demos
- ---------------------------------
- 1. Running the makefile
- -----------------------
- You can use the makefile to compile each demo program individually
- or compile them all at one time. To compile only a single demo, pass
- its name as a command-line argument to make. Not passing any
- command-line argument will cause all the demo programs to be
- compiled.
- To compile each unicode demo program individually
- pass its name as a command-line argument to make.
- Unicode demo programs carry the same name as their ASCII
- counterparts but with a W suffix.
- To compile all unicode demo programs at one time pass UnicodeDemo
- as a command line argument.
- To compile the ODBC XA demo just use the following command at the
- command prompt -
- $make unixxa (for any unix platform)/
- nmake ntxa (for NT platforms)
- To successfully run the makefile, you have the INFORMIXDIR
- environment variable set to the directory where the Client-SDK
- is installed.
- 2. DSN and Environment settings
- -------------------------------
- The demo programs are designed to run with a default DSN called
- 'odbc_demo', which should be setup for connecting to the
- demonstration database 'odbc_demodb' created using the program
- 'dbcreate'.
-
- If the user chooses, they can use another DSN in 2 ways -
- (i) Pass the name of the DSN as a command-line argument to the
- demo. (RECOMMENDED)
- For e.g. you would run the catalog example using a DSN called
- 'myDSN' as
- >> catalog myDSN
- (ii) Change the value of the 'defDsn' variable in the source code and
- re-compile the demo
- To run the ODBC XA Demo using your DSN just use the following command -
- OnePhaseCommitRollback.exe DSN_NAME
- NOTE
- ----
- 1. In order to run dbcreate.c, the 'DELIMIDENT' environment variable
- must be set to 'n'. This is the default setting for this variable.
- If the value of the 'DELIMIDENT' variable is not set to 'n', then
- you will get an error message saying "Syntax Error" when running
- dbcreate.c
- 2. In order to run unicode enabled demo programs ,
- UNICODE must be set to UCS-4 in data source configuration information
- file.This is done by adding following line in [ODBC] section of
- configuration file.
- UNICODE=UCS-4
- This is applicable only on UNIX platforms .
- 3. Prior running the "catalog" demo against 8.40 servers, ensure that the
- server ONCONFIG file has the following settings:
- PHYSFILE 8000
- PHYSBUFF 64
- LOGBUFF 64
- SHMVIRTSIZE 32768
- SHMADD 32768
- DS_MAX_QUERIES 10
- DS_TOTAL_MEMORY 16000
- Without these settings, the demo might fail with the following error:
- ERROR: -959: HY000 : [Informix][Informix ODBC Driver][Informix]The
- current transaction has been rolled back due to an internal error.
|