Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Reserved Error -7748: No Message Exists for this Error

1,912 views
Skip to first unread message

Peter_Legg

unread,
Mar 19, 2003, 1:17:30 PM3/19/03
to
I'm getting that same error for the same situation (linking tables to
Access 2000 from Sybase using ODBC). Did you ever resolve it?

Thanks, Peter

odbcpse

unread,
Mar 20, 2003, 12:26:10 PM3/20/03
to Peter...@earth.com
From the ODBC readme files:

Version 4.00.0001 (12.5.0/P-EBF9720/04.00.0001)
-----------------------------------------------
CR 257070 - Microsoft Access 2000 users would receive (-7748) error when
importing/linking tables that had at least one unique, non-clustered
index.
Problem was with SQLStatistics API call, in the MS Access implementation
(sp_statistics), which is now resolved by entering "WorkArounds2 = 8192"
in ODBC DSN connection string. This was not a Bug in the ODBC Driver.

Version 4.10.0020 (12.5.0/P-EBF10572/04.10.0020)
------------------------------------------------
CR 288132 - With MS Access 2000 users this error sometimes appeared when
building
a query: "Invalid precision value. Error in parameter 1." This problem
no longer occurs.
You need to set WorkArounds2=32768.

When you use MS Access you should set it so that WorkArounds2 = 32768 +
8192
or WorkArounds2=40860.

pv

Ivar M. Yrke

unread,
Oct 28, 2004, 9:06:41 AM10/28/04
to
How do you get this into the connection string? I find no place in the DSN
editor to place it.

"odbcpse" <hu...@earth.com> skrev i melding
news:3E79F9B2...@earth.com...

Paul

unread,
Oct 29, 2004, 10:04:52 AM10/29/04
to
Hi Ivar

Add the property in the connection string:

WA2=40860

or as the read me file specifies you can add it to the DSN in the windows
registry by adding the property WorkArounds2 directly to the DSN in the
HKLM\Software\ODBC\ODBC.INI\Your_DSN folder

PV

"Ivar M. Yrke" <xxx_iv...@no.nucletron.com> wrote in message
news:4180eee1@forums-1-dub...

Ivar M. Yrke

unread,
Nov 1, 2004, 4:17:23 AM11/1/04
to
Hi and thanks for the answer. I need to use the registry approach but
unfortunately I do not understand how to do it. First, the section you refer
to I do not find is not under HKLM but HKCU. Did I misunderstand anything?
Second, under the ODBC.INI section on my DSN I have tried entering
WorkArounds2 and WA2, both as strings containing the given value. In both
cases I get "Incorrect syntax near =". Perhaps it must not be a string
value? Or what do I do wrong here?

"Paul" <Pa...@sybase.com> skrev i melding news:41824e04$1@forums-1-dub...

Paul

unread,
Nov 1, 2004, 2:30:32 PM11/1/04
to
Hi Ivar,

What is the exact file version of this driver that you are using?
If you add "WorkArounds2" as the connection property in the ODBC.INI under
your DSN, as a String value, and then
add 40860 as the actual value, you should not get that error. I also find
if I enter the property incorrectly the driver does not seem to care about
it, it ignores it, so I need to know what driver you are using. If you
check the properties on the SYODASE.DLL in the %SYBASE%\ODBC directory, look
under Version tab, at File Version and Product Version. Something does not
seem to make sense.

You can also export your DSN from the ODBC.INI and post here for me to tak e
a loo at.

PV

"Ivar M. Yrke" <xxx_iv...@no.nucletron.com> wrote in message

news:41860d2f$1@forums-2-dub...

Ivar M. Yrke

unread,
Nov 2, 2004, 2:05:12 AM11/2/04
to
SYODASE.DLL:
File version: 4.20.0.15
Product version: 12.5.1/P-EBF11468/04.20.0015

ODBC.INI:
[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\VISIR_ODBC]
"Driver"="c:\\programfiler\\sybase\\ODBC\\SYODASE.DLL"
"Description"=""
"Database"="visir"
"Databases"=""
"LogonID"="sa"
"Charset"=""
"WorkStationID"=""
"Language"=""
"ApplicationName"=""
"OptimizePrepare"="2"
"ArraySize"="50"
"SelectMethod"="1"
"RaiserrorPositionBehavior"="0"
"PacketSize"="0"
"CursorCacheSize"="1"
"PasswordEncryption"="0"
"ApplicationUsingThreads"="1"
"EnableQuotedIdentifiers"="0"
"EnableDescribeParam"="0"
"InitializationString"="WorkArounds2 = 8192"
"DefaultLongDataBuffLen"="1024"
"NetworkAddress"="ivar_hjemme,7089"
"NetworkLibraryName"="Winsock"
"XAOpenStringParameters"=""
"DistributedTransactionModel"="0"
"TightlyCoupledTransactions"="1"
"FailoverNetworkAddress"=""
"TrustedRootsFileName"=""
"UseSSL"="0"
"UseSybaseLDAP"="0"
"SybaseLDAPURL"=""
"SybaseServerName"=""
"UseLDAPHAServer"="0"
"InterfacesFile"=""
"InterfacesFileServerName"=""
"TruncateTimeTypeFractions"="0"
"WorkArounds2"="40860"


"Paul" <Pa...@sybase.com> skrev i melding news:41869ce8$1@forums-1-dub...

Paul

unread,
Nov 2, 2004, 5:51:38 PM11/2/04
to
Hi Ivar,

In your DSN, remove this:

"InitializationString"="WorkArounds2 = 8192"

Go in the ODBC Admin tool and bring up your DSN, then go to the Advanced tab
and remove the WorkArounds2=8192 from the Initialization String property -
this is probably causing the error - he Initialization String is a property
where you can add ASE statments that you want to set when you login to the
ASE. An example if you want ANSINULL behavior OFF you would enter "SET
ASNINULL OFF" on this property.

The error you receive: "Incorrect syntax near =" is a message being sent
back from ASE - sorry for any confusion

PV

"Ivar M. Yrke" <xxx_iv...@no.nucletron.com> wrote in message

news:41873fb8@forums-1-dub...

Ivar M. Yrke

unread,
Nov 9, 2004, 7:00:30 AM11/9/04
to
Arghh... the eyes is the first place you get blind.

I got rid of the login error. However, I still got the original error
message (7748). Then I realized that in your last reply you said 8192, while
in previous replies always 40860 has been mentined. By changing to
WorkArounds2=8192 it works.

Thankyou!

"Paul" <Pa...@sybase.com> skrev i melding news:41880f7a$1@forums-1-dub...

chalo

unread,
Dec 20, 2004, 9:00:33 AM12/20/04
to
I wonder if it was a typo for 32768+8192=40960.
With this value both problems are fixed.
The 40860 caused me a lot of nightmares :-)

BG

unread,
Oct 11, 2007, 12:32:14 PM10/11/07
to
I need help. I try to link tables from MS access 2003 to
Sybase, I got the error as: Reserved error (-7748); there is
no message for this error.
what should I do?
Thanks a lot.

Cory

unread,
Oct 12, 2007, 6:47:49 AM10/12/07
to
BG,

I've been living with this bug for 3 years... The best answer is to get to
ASE 15 client drivers but I know that is a lot of work...

Here is the solution if you cannot.
I know this works with 12.5.1 esd#3
This is driver version that we use in my office.
I do not know what the minimum version is for this fix...

HTH

Cory

Case Description

Customer is using SDK 12.5 ODBC. When trying to use Microsoft access, he
receives error -7748.

Key Words: ODBC errors 7748

Tip or Workaround

This is not a bug with Sybase/DataDirect ODBC drivers, but is instead a bug
with Microsoft Access 2000, logged as Microsoft case SRX040928602149. Here
is Microsoft's analysis of the problem:

"Issue:

======

When DataDirect drivers make calls to SQL StatisticsW or SQL GetData, Jet
should allocate 4-bytes back to the driver, but is only allocating 2. The
driver encounters the error 01004 and and Jet returns "reserved
error -7748".

Resolution:

=========

Microsoft developers agree that this is an issue with Jet. Since there is a
workaround, and since fixing this issue would result in a high risk of
regression with many other ODBC drivers, our developers believe it is too
risky to make these changes."

So, although they agree it is a bug with Jet, Microsoft has no plans of
fixing it at this time.

As a courtesy to our customers, Sybase has logged this issue as CR 257070
and provided a workaround with ebf 9768 and higher:

Microsoft Access 2000 ODBC Error -7748

CR 257070 First release: 9768.

"ODBC: Microsoft Access 2000 users would receive (-7748) error. Problem was
with SQL Statistics API call(sp_statistics), which is now resolved by
entering "WorkArounds2=8192" in ODBC DSN connection string."

WorkArounds2=8192. Workaround for Microsoft Access 2000 when it calls
SQLStatisticsW and SQLGetData for column number 10. Microsoft Access only
asks for the data as a two-byte SQL_C_WCHAR, which is insufficient buffer to
store the UCS2 character and the null terminator. Thus, the driver returns a
warning, "01004 Data truncated", and returns a

null character to Microsoft Access. Microsoft Access then passes
error -7748. Setting this workaround causes Microsoft Access to not pass the
error -7748.

INSTRUCTIONS FOR FIXING THIS BUG:

1. Apply the most recent ODBC/OLEDB 12.5 EBF containing fix for CR257070.

2. Bring up regedit

3. Go to the following directory:

HKEY_LOCAL_MACHINE -> Software -> ODBC -> ODBC.INI -> your_DSN_name

4. Select your data source and chose "edit" -> "New" -> "string value" from
the menu (for more information, see "More Details", below)

5. Change the name of the new string value to read "WorkArounds2"

6. Double click on "WorkArounds2" in the right hand panel and bring up a box
with data value

7. Change data value to 8192

See ODBC readme file for more information.

Resolution

This is CR 257070 which requires applying EBF higher than 9768 and setting
WorkArounds2=8192. See "Tip and Workaround" (above) for more details.

Other Sources Related to Issue

TechNote
10868046, 10884514, 10847540, 10845657, 10815895, 10752611

10863670, 10778609, 10822427, 10895972, 10914221


<BG> wrote in message news:470e500e.2e8...@sybase.com...

0 new messages