]> git.saurik.com Git - wxWidgets.git/blame - src/iodbc/README
Should work for wxMSW, now. Cannot test this myself, though.
[wxWidgets.git] / src / iodbc / README
CommitLineData
1a6944fd 10. Changes
cd5bf2a6
RR
2 a. I realized that a driver manager doesn't aware of
3 difference between a C5 (i.e. hstmt) and a C6
4 (i.e. transaction) states.
5
6 b. The link flags "-lc" has been removed from Linux ELF
7 section of Config.mk to fix a segment fault problem.
8 Now, it works fine on Slackware 2.3 and Red Hat 2.0
9 (kernel version are 1.2.xx and 1.3.xx respectively).
10
11 c. On FreeBSD 2.x, dlsym() doesn't handle the '_'
12 prepended before a exporting function symbol. So,
13 CLI_NAME_PREFIX needs to be defined as "_SQL" for
14 FreeBSD.
15
16 d. Some files are renamed
17 dld.c -> dlf.c
18 dld.h -> dlf.h
19 confg.h -> config.h
1a6944fd
RR
20
211. iODBC driver manager platform availability
22
cd5bf2a6
RR
23 iODBC driver manager has been ported to following Unix platforms:
24
25 SunOS 4.1.x Sun Sparc
26 HP/UX 9.x, 10.x HP9000 s700/s800
27 HP/UX 9.x HP9000 s300/s400
28 IBM AIX 3.x, 4.x IBM RS6000, PowerPC
29 Sun Solaris 2.x Sun Sparc, PCx86
30 SGI Irix SVR4 5.x, 6.x IP12 MIPS, IP22 MIPS
31 NCR SVR4 3.x NCR 3435
32 UnixWare SVR4.2 1.x, 2.x x86
33 DEC Unix(OSF/1) 3.x, 4.x DEC Alpha
34 FreeBSD 2.x x86
35 BSDI BSD/OS 2.x ?
36 Linux ELF 1.2.x, 1.3.x x86
37 SCO OpenServer 5.x x86
38 Max/OS SVR4 1.x Concurrent Maxion 9200 MP
39 DG/UX 5.x Aviion
1a6944fd
RR
40
41 Porting of iODBC driver manager to some non-unix operating systems
cd5bf2a6
RR
42 such as Windows family(3.x, 95, NT), OS/2 and Mac is supported but
43 has never compiled and tested yet :). Of cause, you need to supply
1a6944fd
RR
44 a make/build file and a short LibMain for creating the iodbc.dll.
45
462. How to build iODBC driver manager:
47
cd5bf2a6
RR
48 step 1. Identify your system
49 step 2. Run build with a suitable option
50
1a6944fd
RR
51 Here is an example:
52
cd5bf2a6
RR
53 %[1]: sh iodbc-2.12.shar
54 ....
55 %[2]: cd iodbc-2.12
56 %[3]: uname -s -v -r -m
57 HP-UX B.10.01 A 9000/710
58 %[4]: ./build hp700
59 autoconfig hp700
60 make
61 ....
62 Generating iODBC driver manager --> /home/kejin/iodbc-2.12.sl
1a6944fd
RR
63
643. odbc.ini( ~/.odbc.ini )
65
cd5bf2a6 66 Driver manager and drivers use odbc.ini(or ~/.odbc.ini on Unix) file
1a6944fd 67 or connection string when establishing a data source connection. On
cd5bf2a6
RR
68 Windows, odbc.ini is located in Windows directory. On unix, iODBC driver
69 manager(and all other ODBC drivers and driver managers I awared) looks
70 .odbc.ini file in real user's home directory (it could be a softlink to
71 the file located somewhere else). Make sure your driver will look into
72 the same file (or a file which is a symbolic link to the same file).
1a6944fd
RR
73 The format of odbc.ini( or ~/.odbc.ini ) is defined as:
74
cd5bf2a6 75 odbc.ini(or .odbc.ini) ::= data_source_list
1a6944fd 76
cd5bf2a6
RR
77 data_source_list ::= /* empty */
78 | data_source '\n' data_source_list
1a6944fd 79
cd5bf2a6 80 data_source ::= '[' data_source_name ']' '\n' data_source_desc
1a6944fd 81
cd5bf2a6 82 data_source_name ::= 'default' | [A-Za-z]*[A-Za-z0-9_]*
1a6944fd 83
cd5bf2a6
RR
84 data_source_desc ::= /* empty */
85 | attrib_desc '\n' data_source_desc
1a6944fd 86
cd5bf2a6 87 addrib_desc ::= Attrib '=' attrib_value
1a6944fd 88
cd5bf2a6 89 Attrib ::= 'Driver' | 'PID' | 'UID' | driver_def_attrib
1a6944fd 90
cd5bf2a6 91 driver_def_attrib ::= [A-Za-z]*[A-Za-z0-9_]*
1a6944fd
RR
92
93 An example of .odbc.ini file:
94
cd5bf2a6
RR
95 [toronto_yp]
96 # yellow page of metro Toronto
97 Driver = /usr/lib/odbc/oracle.so
98 <....>
1a6944fd 99
cd5bf2a6
RR
100 [toronto_wp]
101 # white page of metro Toronto
102 Driver = /usr/lib/odbc/oracle.so
103 <....>
1a6944fd 104
cd5bf2a6
RR
105 [contract]
106 # all contract documents
107 Driver = /usr/lib/odbc/informix.so
108 <....>
1a6944fd 109
cd5bf2a6
RR
110 [netnews]
111 # NNTP netnews group
112 Driver = /usr/lib/odbc/nnodbc.so
113 Server = news.empress.com
1a6944fd 114
cd5bf2a6
RR
115 [rnd_test]
116 # data source for R&D test
117 Driver = /home/r_d/odbc/empodbc.so
118 URL = empodbc://rnd.empress.com:6322/rnd_test/testdb
1a6944fd 119
cd5bf2a6
RR
120 [default]
121 # default to odbc gateway
122 Driver = /usr/lib/odbc/gateway.so
1a6944fd
RR
123
1244. Tracing
125
cd5bf2a6
RR
126 iODBC driver manager traces driver's ODBC call invoked by the driver
127 manager. Default tracing file is ./odbc.log. Tracing option (i.e.
128 on/off or optional tracing file name) can be set in ~/.odbc.ini
1a6944fd
RR
129 file (under a data source section) as:
130
cd5bf2a6
RR
131 TraceFile = <optional_trace_file>
132 Trace = ON | On | on | 1 | OFF | Off | off | 0
1a6944fd
RR
133
134 If <optional_trace_file> is stderr or stdout, i.e.
cd5bf2a6
RR
135
136 TraceFile = stderr
137
1a6944fd
RR
138 or
139
cd5bf2a6 140 TraceFile = stdout
1a6944fd
RR
141
142 the tracing message will go to the terminal screen(if it is available).
143
144 iODBC driver manager allows one to tune on/off tracing on selected
cd5bf2a6 145 connection(s). Different connections can share one or use different
1a6944fd 146 tracing file(s). ODBC calls on connections without tuning tracing on
cd5bf2a6
RR
147 will not be traced.
148
1a6944fd
RR
1495. File list:
150
cd5bf2a6
RR
151 README This file
152 IAFA-PACKAGE Version and copyright information
153 Changes.log Source changes log
154 Version.mk Version make include file
155 Config.mk Config make include file
156 Makefile make file
157 config.h system config include file
158 isql.h ODBC 1.0 macro
159 isqlext.h ODBC 2.0 macro
160 dlf.h general dynamic loader module interface
161 dlf.c general dynamic loader module (mapping to svr4)
162 dlproc.h simple dynamic loader module interface
163 dlproc.c simple dynamic loader on top of dlf module
164 herr.h error handling module interface
165 herr.c error handling module
166 herr.ci error handling source include
167 henv.h environment handle interface
168 henv.c environment handle module
169 henv.ci environment handle source include
170 hdbc.h connection handle interface
171 hdbc.c connection handle module
172 hstmt.h statement handle interface
173 hstmt.c statement handle module
174 connect.c connect functions
175 prepare.c query prepare functions
176 execute.c query executing functions
177 result.c query result property functions
178 fetch.c query result fetch functions
179 info.c driver information functions
180 catalog.c catalog functions
181 misc.c miscellaneous functions
182 itrace.h macro
183 itrace.c trace function
184 main.c entry function used to build a share library on AIX
185 shrsub.exp export symbol list used on AIX
186 autoconfig shell script for creating Config.mk
187 build shell script for building iodbc driver manager