Commit graph

144 commits

Author SHA1 Message Date
Hiroshi Inoue
e666422ebf 1)Allow the access to indexes with up to 16 keys.
2)Fix some memory leaks.
3)Change some bogus error messages.
2001-03-10 03:34:57 +00:00
Hiroshi Inoue
3df0fce801 Fix the bug report [ODBC] select from a table having more than 32 fields:
reported by Matteo Cavalleri.
Great thanks to Tom for his accurate analysis.
2001-02-22 03:39:30 +00:00
Tom Lane
17137d6c5b Remove unportable #warning directive. 2001-02-20 19:39:24 +00:00
Peter Eisentraut
cb6edf9d56 Make sure -L and -I's for our source tree are always before system include
or library directories on the command line.
2001-02-20 19:20:30 +00:00
Tom Lane
eb90c16dd7 ichar() has been renamed to chr(), so fix translation table. 2001-02-16 03:49:40 +00:00
Hiroshi Inoue
b24b2a5be0 Add casting for numeric/float4/float8 type value
automatically to compensate the lack of automatic
conversion functionality of PostgreSQL server.
For example if there's a numeric type binding
   1.2567 --> 1.2567::numeric.
I hope this change would enable the use of numeric
type in MS-Access etc.

Thanks Hiroki Kataoka for his checking my code.
2001-02-16 03:10:09 +00:00
Hiroshi Inoue
462c13215a 1) Change transaction boundary in autocommit off mode
per recent discussion in pgsql-odbc. Now SELECT is
   a boundary but VACUUM isn't.
2) Put back the error handling behavior. When elog(ERROR)
   was detected the driver automatically issue "ABORT"
   if a transaction is in progress.
3) Driver version is 7.01.0003(Dave already set it but
   it was put back).
2001-02-15 05:32:00 +00:00
Bruce Momjian
cf21f7a187 Add 7.X to dialog box. 2001-02-14 06:10:31 +00:00
Bruce Momjian
594e97b72f Back out all ODBC formatting changes, and back out removal of <6.4
protocol. I have left in Tom's SOCK_get_next_byte() fix, and the new
win32.mak file addition.  I have also left in the 'X' connection close
fix.
2001-02-14 05:45:46 +00:00
Bruce Momjian
f4e4c7291e Attached is a makefile for the ODBC driver for use under win32. It has been
tested only with MS VC++ 6.0SP4 using nmake.

Dave Page
2001-02-12 22:50:06 +00:00
Bruce Momjian
cbb4ab99a8 New MS resource file, pgindented. 2001-02-12 21:45:24 +00:00
Bruce Momjian
97aa5fcd5e Update ODBC resource MS-generated file. 2001-02-12 17:54:02 +00:00
Bruce Momjian
20bea98169 Change more // comments. 2001-02-12 14:17:06 +00:00
Bruce Momjian
36e3c641f6 Replace // comments from file for MS products. 2001-02-12 12:59:22 +00:00
Tom Lane
d9eb5b75e3 SOCK_get_next_byte should not return garbage after error/EOF. Return
zero bytes instead.
2001-02-11 23:46:40 +00:00
Bruce Momjian
07faa2fdce Remove unneeded shutdown() call, per Tom Lane. 2001-02-11 23:34:08 +00:00
Bruce Momjian
72f3b9fce9 More cleanups. 2001-02-11 13:58:12 +00:00
Bruce Momjian
9c891acd52 Include file alignment fixes. 2001-02-11 13:53:42 +00:00
Bruce Momjian
cc818a83c0 Move X packet before shutdown(). 2001-02-11 13:15:28 +00:00
Bruce Momjian
3152ef63a6 Source alignment cleanups. 2001-02-11 05:58:41 +00:00
Bruce Momjian
26dc50141b More cleanup. 2001-02-11 05:13:52 +00:00
Bruce Momjian
82b1fd1e0d More cleanup. 2001-02-11 05:04:47 +00:00
Bruce Momjian
9d244ddb26 Cleanup of source. 2001-02-11 04:56:58 +00:00
Bruce Momjian
e937156690 The attached patch does the following:
1) Tidies up the Datasource Dialogue now the version options are gone.
2) Tidies a comment in info.c.
3) Increments all version numbers to 07.01.0003 to take account of recent
revisions.

Regards, Dave Page
2001-02-11 02:01:22 +00:00
Bruce Momjian
2cb7c5b24c Disable X connection close in ODBC until solution is found. 2001-02-10 23:35:04 +00:00
Peter Eisentraut
8213e63d8c Repair BSD/OS shared library fixes. 2001-02-10 16:51:40 +00:00
Bruce Momjian
fd866b4580 Remove protcol option buttons. 2001-02-10 16:25:10 +00:00
Bruce Momjian
a4b348f48f ODBC BSD/OS fix. 2001-02-10 15:59:16 +00:00
Bruce Momjian
8814d1b2e7 Allow -Bsymbolic on BSDI for ODBC. 2001-02-10 11:31:35 +00:00
Bruce Momjian
5ad627479c More ODBC formatting cleanup. 2001-02-10 07:11:28 +00:00
Bruce Momjian
755a87332a Run pgindent over ODBC source. We couldn't do this years ago because we
weren't the master source.  We are now, and it really needs it.
2001-02-10 07:01:19 +00:00
Bruce Momjian
505a828a66 Remove protocol-dependent code. This should have been on previous commit. 2001-02-10 06:58:40 +00:00
Bruce Momjian
895a57bdd2 Cleanup 2001-02-10 06:57:53 +00:00
Bruce Momjian
fd40942fd8 Properly exit ODBC with 'X', allow linking on BSD/OS. 2001-02-10 05:50:29 +00:00
Tom Lane
5b6acff6e0 Ignore leading whitespace when trying to determine statement type,
so that ODBC driver doesn't go belly up by failing to recognize a
SELECT as such.
2001-02-10 03:12:16 +00:00
Hiroshi Inoue
5a03b0c393 Change SELECT to not trigger "BEGIN" in not autocommit mode. 2001-02-09 06:03:14 +00:00
Hiroshi Inoue
27ed8ac260 Fix a misuse of 'char *' declaration. 2001-02-08 01:54:29 +00:00
Hiroshi Inoue
5d08521fcd Improved version handling introduced by Dave Page.
The driver version is 07.01.0002 now.
1) initialized pg_version by DSN's protocol info
   so that we could always use pg_version info
   once a connection is established (pg_version()
   didn't exist before 6.4). PROTOCOL_XX() macros
   are removed(except from connection.[ch]).
2) provided a few macros to encapsulate connection's
   version info and replaced existent comparison
   stuff by those macros.
3) change SQLTables() so that 7.1 servers could show
   views.


In addtion, the following patch from Dave Page is applied.

  This patch fixes a bug in SQLGetInfo for SQL_DBMS_VER which corrupted the
  driver version string. The driver version number has also been incremented
  to 07.01.0002.

  Regards, Dave. <<odbc.diff>>
2001-02-06 02:21:12 +00:00
Bruce Momjian
5a832218fd odbc1.diff changes the text on the Protocol Radio buttons on the driver
dialogue from '6.4/6.5' to '6.5+' and removes some C++ comments from
resource.h (which VC++ insists on putting there).

odbc2.diff adds code to query the PostgreSQL version upon connection. This
is then used to determine what values to return for from SQLGetInfo for
SQL_DBMS_VER, SQL_MAX_ROW_SIZE, SQL_MAX_STATEMENT_LEN, SQL_OJ_CAPABILITIES
and SQL_OUTER_JOINS. The version string as returned by SELECT vERSION() (as
a char array) and the major.minor version number (as a flost) have been
added to the ConnectionClass structure.

Dave Page
2001-01-26 22:41:59 +00:00
Tom Lane
7edafafd73 gcc complains about improperly terminated comment. 2001-01-26 22:25:36 +00:00
Bruce Momjian
40203e4f3e Further to the previous ODBC patches I posted today, I found a couple of
problems with char array sizes having set a couple of constants to 0 for
unlimited query length and row length. This additional patch cleans those
problems up by defining a new constant (STD_STATEMENT_LEN) to 65536 and
using that in place of MAX_STATEMENT_LEN.

Another constant (MAX_MESSAGE_LEN) was defined as 2*BLCKSZ, but is now
65536. This is used to define the length of the message buffer in a number
of places and as I understand it (probably not that well!) therefore also
places a limit on the query length. Fixing this properly is beyond my
capabilities but 65536 should hopefully be large enough for most people.

Apologies for being over-enthusiastic and posting 3 patches in one day
rather than 1 better tested one!

Regards,

Dave Page
2001-01-25 03:28:27 +00:00
Bruce Momjian
0e968ee705 > From: Tom Lane [mailto:tgl@sss.pgh.pa.us]
> Sent: 24 January 2001 16:51
> To: Dave Page
> Subject: Re: [PATCHES] ODBC Patch for OJs/Large Querys & Rows
>
>
> > SQL_OJ_LEFT = Left outer joins are supported.
>
> Yes.
<snip>

In addition to my earlier patch, this one adds support for SQLGetInfo
SQL_OJ_CAPABILITIES to the ODBC driver.

Dave Page
2001-01-25 03:27:47 +00:00
Bruce Momjian
be1276846e I decided to give this a go after all :-) The attached patch does the
following but it does *not* check whether the user is connected to
PostgreSQL 7.0.x or 7.1 first (as would be required for some of the
features) - the driver doesn't do this at all afaik and it's beyond my
capabilities to implement such checking in code that doesn't look like it
was written by my 1 year old daughter!

1) The driver now reports no maximum query length (SQL_MAX_QUERY_SIZE).
2) The driver now reports no maximum row length (SQL_MAX_ROW_SIZE).
3) The driver now reports that Outer Joins are supported (SQL_OUTER_JOINS),
but still does not report oj capabilities (SQL_OJ_CAPABILITIES).
4) The version number has been incremented to 7.1.0000 in psqlodbc.h *and*
psqlodbc.rc


Regards,

Dave Page
2001-01-25 03:27:05 +00:00
Bruce Momjian
edfca4b98b Subject: Bug in SQLForeignKeys()
Query used for checking foreign key triggers
returns too many results when there're more than one foreign
key in a table. It happens because only table's oid is used to
link between pg_trigger with INSERT check and pg_trigger with
UPDATE/DELETE check.

I think there should be enough to add following conditions
into WHERE clause of that query:
        AND     pt.tgconstrname = pg_trigger.tgconstrname
        AND     pt.tgconstrname = pg_trigger_1.tgconstrname

/Constantin
2001-01-23 20:36:30 +00:00
Peter Eisentraut
74e2bf95ec Remove C++ comment. 2000-12-30 16:48:49 +00:00
Peter Eisentraut
109cdbb4f7 Remove inclusions of <malloc.h>. 2000-12-19 17:52:27 +00:00
Peter Eisentraut
9cf0a82fc3 Fix linker options for ODBC driver. See comment in
src/interfaces/odbc/GNUmakefile.
2000-12-16 18:14:25 +00:00
Bruce Momjian
0cf37659c4 there is one problem with Zoltan patches commited into the tree:
if we set autocommit off and issued COMMIT (or ROLLBACK) on a connection
new transaction is not started

Max Khon
2000-12-15 19:11:28 +00:00
Bruce Momjian
f01f08b8b5 Make all ODBCVER = 2.50 2000-12-11 19:06:11 +00:00
Bruce Momjian
01b5efa5e3 Fix ODBC compile, prevent ODBCVER warning, though the version numbers go
not match.
2000-12-11 18:51:26 +00:00