[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference orarep::nomahs::dbstars

Title:DBSTARS Conference
Moderator:BROKE::BASTINE
Created:Wed Feb 02 1994
Last Modified:Thu Jun 05 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:791
Total number of notes:1521

789.0. "How to use file dsn w/oracle rdb driver" by BROKE::BITHER () Wed May 28 1997 12:40

       <<< NOMAHS::DISK$NOMAHS1:[NOTES$LIBRARY]ODBC_RDB_DRIVER.NOTE;1 >>>
                              -< DEC ODBC Driver >-
================================================================================
Note 1328.11        Is MS Office 97 supported by our driver?            11 of 12
BROKE::BITHER                                        37 lines  27-MAY-1997 12:14
                            -< No luck but thanks >-
--------------------------------------------------------------------------------
Thanks Erich,

I looked at the bug.  Didn't help.  The workaround is to edit the file
dsn file and modify:
[ODBC]
DRIVER=ORACLE73
DBQ=<alias you defined>
to:
[ODBC]
DSN=<alias you defined>

Since I'm using the Rdb odbc driver the file def is a bit different but
I tried some things none of which worked.  Assuming "alias you defined"
is the name of the file dsn there was nothing in the file that looked
like the file dsn name I gave it (tom1).  Also there was no "DBQ"  It 
looked like:
[ODBC]
DRIVER=Oracle ODBC Driver for Rdb
DBA=W

If I remove the DRIVER line from the file I get "Data source name not found
and no default driver specified" no matter what else is in the file.
Left it in and tried adding DSN=W, DSN=tom1, removing DBA, modifying DBA=tom1,
Adding DBQ=W and so forth.  Endless permutations.  No luck.  I'll try
sending email to kgronau from the bug db seeing of he can expand on
his workaround.  

Thanks.  Btw, the files are in c:\Program Files\Common Files\ODBC\Data Sources

Diane


regarding the -7778 error I found a bug, its number is 478285.
Please take a look at it.

erich

       <<< NOMAHS::DISK$NOMAHS1:[NOTES$LIBRARY]ODBC_RDB_DRIVER.NOTE;1 >>>
                              -< DEC ODBC Driver >-
================================================================================
Note 1328.12        Is MS Office 97 supported by our driver?            12 of 12
BROKE::BITHER                                        26 lines  28-MAY-1997 08:39
                              -< Got it to work  >-
--------------------------------------------------------------------------------
Hi,

I sent email to the person in Germany who discovered the workaround
but he couldn't help.  I called the customer anyway and he said

  1.  The oracle odbc driver is not a problem anyway.  Although the
one that oracle provides is not level 3 compliant (reason for bug 478285),
Microsoft wrote an oracle odbc driver that is level 3 compliant so
people can use that.  But he believes MS will never be writing a
level 3 compliant driver for Rdb.

  2.  Re: the workaround.  He says there is an article in MS's knowledge
base that tells you how to modify the files created by defining file
dsns (in \Program Files\Common Files\ODBC\Data Sources.  What you do
is modify the file so that it points to a user DSN.  Then it will use
the user dsn.  This looks like what kgronau was doing by defining
dsn=<alias you defined>  Alias must be a user dsn.  He has never got
this to work.

I just tried it.  I defined a user data source name called 'mf_personnel70.'
Put DSN=mf_personnel70 and DSN='mf_personnel70' into the file.  Didn't
work.  Then I deleted every line out of the file except [ODBC] and
this worked.

Diane

T.RTitleUserPersonal
Name
DateLines
789.1partial writeupBROKE::BITHERWed May 28 1997 12:5854
Hi Tom,

This is what I did. 

From the ODBC Administrator:
---------------------------
1.  Defined a file dsn called TOM1 to attach to an Rdb 70 multifile
personnel database.  (Server=dbs400, class=generic, user=sqluser70,
attach='attach filename mf_personnel').

2.  Defined a user dsn called MF_PERSONNEL70 to attach to an Rdb 70
multifile database.  (Server=dbs400, class=generic, user=sqluser70,
attach='attach filename mf_personnel').
                     
From MS Access (I know you are using Excel but I don't have this
installed on my Win95 machine):
-----------------------------------------------------------------
3.  Link to a table using TOM1 -
"Reserved error (-7778), there is no message for this error."

4.  Link to a table using MF_PERSONNEL70.  Success.

From notepad:
------------
5.  Opened the file tom1 found in:
C:\Program Files\Common Files\ODBC\Data Sources.  It looked like the following:

[ODBC]
DRIVER=Oracle ODBC Driver for Rdb
UID=sqluser70
DBA=W
DATABASE=attach 'filename mf_personnel'
CLS=generic
SVR=dbs400

6.  Modified the above file to look like:

[ODBC]
DSN='mf_personnel70'

From MS Access:
--------------
7.  Link to a table using TOM1.  Success.


NOTE:  This would not work until I deleted every single line from file
TOM1 with the exception of the line [ODBC].  Just putting in the
line DSN=etc. was not sufficient.  Everything else had to be deleted.

I know this is a cumbersome workaround but I sure hope it works for you!
I've made a note to myself to update you should I hear of any plans to
make the oracle rdb odbc driver level 3 compliant.

Diane
789.2Sent to Mary 5/28/97BROKE::BITHERWed May 28 1997 21:0693
From:	BROKE::BITHER       "Please reply to dbither@us.oracle.com" 28-MAY-1997 17:05:27.20
To:	MEMORMAN
CC:	BITHER
Subj:	New Stars Article

TITLE:      Reserved Error (-7778), There is No Message for this Error

PRODUCT:    Oracle Rdb ODBC

RELATED    
PRODUCTS:   Oracle Rdb
            Microsoft 97 Products

OP/SYS:     OpenVMS VAX, OpenVMS AXP

SOURCE:     Oracle Worldwide Customer Support


PROBLEM:

Attaching to an Rdb database from a Microsoft 97 product results in
the following error:

     "Reserved error (-7778), there is no message for this error."


PROBLEM CAUSE:

Starting with the Microsoft 97 products, Microsoft released a new ODBC
driver manager that allows the definition of file data source names (DSNs).
File DSNs require level 3 complicity.  The Oracle Rdb Odbc driver is not
level 3 compliant and when used with file DSNs results in the above error.
The Oracle Rdb Odbc driver works with user DSNs which are level 2 compliant.


WORKAROUND:

Define a user DSN and modify the file DSN to point to the user DSN.

From the ODBC Administrator:
---------------------------
1.  Define a file DSN called XXX to attach to an Rdb database.

2.  Define a user DSN called ZZZ to attach to the same Rdb database.
Use the same parameter definitions as used to define the file DSN 
(i.e. server, class, user, and attach string should have the same values
for both DSN types.)


From an MS 97 Product:
----------------------
3.  Test the user DSN.  Attach to a table using ZZZ.  This should work.
If it doesn't, continue debugging until you get your user DSN to work.

From notepad or any editor:
--------------------------
4.  Open the file XXX found in:
C:\Program Files\Common Files\ODBC\Data Sources.  It will look like 
the following:

[ODBC]
DRIVER=Oracle ODBC Driver for Rdb
UID=username
DBA=W
DATABASE=attach 'filename name_of_rdb_database'
CLS=generic
SVR=nodename

5.  Modify file XXX so that it points to the user DSN.  Delete all other
lines:

[ODBC]
DSN='YYY'

From an MS 97 Product:
----------------------
6.  Attach to a database using the file DSN XXX. This will now work.

NOTE:  This will not work unless every single pre-existing line in file
       XXX with the exception of line [ODBC] is deleted.  Just putting 
       in the line DSN=user_dsn is not sufficient.  


SOLUTION:

There are no plans to make the Oracle Rdb Odbc driver level 3 compliant
at this time.


\
\ CONTRIBUTORS:
\
\       Technical: Diane Bither