Friday, March 30, 2012
Mdac Xp 2000
I have MDAC 2.7, Visual Studio 6.0 SP3 Installed.
I am running into some issues where a vb program i wrote runs perfectly fine (Using ADO) when connecting to sql server but only runs fine on half of the windows 2000 machines i tested on.
Anyone have any suggestions? even stranger is that the versions of the odbc driver on the 2000 box are newer than the versions on my xp box with MDAC 2.7 SP1 installed.
All machines have DSN's set up exactly the same. I even tested with a DSN'less connection just to be sure (same result).Refer to event viewer logs for any kind of information in this regard.
MDAC won't play
Trying to set up a harware testing machine. OS is 98SE, the test software (Sandra MAX 3) won't install as it "requires MDAC 2.5 or greater".
Tried install ing MDAC 2.8, it just sits there doing nothing in an open window. Same result with MDAC 2.7.
Tried installing Component Checker, nothing at all happens!
MDAC 2.8 installed fine on another 98SE just last week. Anything else? Um ... both machines are running NAV 2005.
So I'm a bit stuck for ideas. Anyone have any advice, please?
Ray
Did you clean the environment of the failed installation of your test software (Sandra MAX 3)? That app may have done something behind that blocks MDAC installation. Can you also contact the vendor of the test software see if they know any solution?
Thanks,
Xinwei
|||I understand what you're saying "Xinwei Hong - MSFT" and thanks for the considered reply.
Checked & hand-cleaned the registry of all references to the test software. Retried CC & MDAC 2.8 - same result:- no joy. I don't know if it's any help but there was an MDAC critical update found in Add/Remove programs - so I deleted it ... as I apparently don't have any version of MDAC if I understand the CC non-response correctly.
Would contact vendor of test software but I'd guess they would reply something like "Why are you asking us for a solution to a Microsoft install problem?".
Has anyone had a similar problem (MDAC won't install & CC apparently does nothing) and can you please help?
|||This is more like a setup issue. Moving to Sql setup.
Can anybody give the customer a hint why MDAC installation fails and how to diagonise it?
|||Nearly 3 weeks now, no replies ...
"Has anyone had a similar problem (MDAC won't install & CC apparently does nothing) and can you please help?"
Ray
|||... is there some sort of log I can check to see why the MDAC install fails.
Anything?
Ta, Ray
|||You can try to install MDAC 2.1, then 2.5 and then 2.8.
Hope may help!
Infosteo
MDAC won't play
Trying to set up a harware testing machine. OS is 98SE, the test software (Sandra MAX 3) won't install as it "requires MDAC 2.5 or greater".
Tried install ing MDAC 2.8, it just sits there doing nothing in an open window. Same result with MDAC 2.7.
Tried installing Component Checker, nothing at all happens!
MDAC 2.8 installed fine on another 98SE just last week. Anything else? Um ... both machines are running NAV 2005.
So I'm a bit stuck for ideas. Anyone have any advice, please?
Ray
Did you clean the environment of the failed installation of your test software (Sandra MAX 3)? That app may have done something behind that blocks MDAC installation. Can you also contact the vendor of the test software see if they know any solution?
Thanks,
Xinwei
|||I understand what you're saying "Xinwei Hong - MSFT" and thanks for the considered reply.
Checked & hand-cleaned the registry of all references to the test software. Retried CC & MDAC 2.8 - same result:- no joy. I don't know if it's any help but there was an MDAC critical update found in Add/Remove programs - so I deleted it ... as I apparently don't have any version of MDAC if I understand the CC non-response correctly.
Would contact vendor of test software but I'd guess they would reply something like "Why are you asking us for a solution to a Microsoft install problem?".
Has anyone had a similar problem (MDAC won't install & CC apparently does nothing) and can you please help?
|||This is more like a setup issue. Moving to Sql setup.
Can anybody give the customer a hint why MDAC installation fails and how to diagonise it?
|||Nearly 3 weeks now, no replies ...
"Has anyone had a similar problem (MDAC won't install & CC apparently does nothing) and can you please help?"
Ray
|||... is there some sort of log I can check to see why the MDAC install fails.
Anything?
Ta, Ray
|||You can try to install MDAC 2.1, then 2.5 and then 2.8.
Hope may help!
Infosteo
sqlMDAC version
How can I find out what version of MDAC is installed on a Machine.
And would there be any problem with me installing both MDAC 2.7 and 2.8 on
the same machine
Ian
> How can I find out what version of MDAC is installed on a Machine.
http://www.aspfaq.com/2057
> And would there be any problem with me installing both MDAC 2.7 and 2.8 on
> the same machine
Installing 2.8 should upgrade 2.7 to 2.8.
http://www.aspfaq.com/
(Reverse address to reply.)
|||Thanks Aaron
But i was reading that MDAC 2.8 does not have the JET drivers and my
application needs them as well as the MS SQL drivers.
So do i install both?
Ian
"Aaron [SQL Server MVP]" <ten.xoc@.dnartreb.noraa> wrote in message
news:ub99mydiEHA.1344@.TK2MSFTNGP11.phx.gbl...[vbcol=seagreen]
> http://www.aspfaq.com/2057
on
> Installing 2.8 should upgrade 2.7 to 2.8.
> --
> http://www.aspfaq.com/
> (Reverse address to reply.)
>
|||No, you don't need to install 2.7 and 2.8. You need to install MDAC 2.8 and
then install newer jet drivers separately.
http://www.aspfaq.com/2342
http://www.aspfaq.com/
(Reverse address to reply.)
"Ian" <ian@.NoWhere.com> wrote in message
news:uotFj7diEHA.384@.TK2MSFTNGP10.phx.gbl...
> Thanks Aaron
> But i was reading that MDAC 2.8 does not have the JET drivers and my
> application needs them as well as the MS SQL drivers.
>
> So do i install both?
|||Ian wrote:
> Hi
> How can I find out what version of MDAC is installed on a Machine.
> And would there be any problem with me installing both MDAC 2.7 and 2.8 on
> the same machine
> Ian
I use this approach:
Private Sub mnuHelpMDAC_Click()
Dim ans As String
ans = GetAdoVersion
If ans = "0" Then
MsgBox "MDAC is not Installed" & _
"Please Install MDAC from the DBAdmin CD", _
vbCritical, "Missing Important Component"
Else
MsgBox "MDAC version " & ans & " Is Installed on this System"
End If
End Sub
Function GetAdoVersion() As String
'Retrieve ADO (MDAC) version - see if it installed
'Returns an empty string is ADO is not installed
Dim o As Object
On Error Resume Next
GetAdoVersion = "0"
Set o = CreateObject("ADODB.Connection")
If Err.Number = 0 Then GetAdoVersion = o.Version
Set o = Nothing
End Function
|||MDAC 2.7 doesn't have the Jet drivers either: MDAC 2.5 was the last version
that did.
In any case, Aaron gave you the correct answer
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no e-mails, please!)
"Ian" <ian@.NoWhere.com> wrote in message
news:uotFj7diEHA.384@.TK2MSFTNGP10.phx.gbl...[vbcol=seagreen]
> Thanks Aaron
> But i was reading that MDAC 2.8 does not have the JET drivers and my
> application needs them as well as the MS SQL drivers.
>
> So do i install both?
> Ian
>
>
> "Aaron [SQL Server MVP]" <ten.xoc@.dnartreb.noraa> wrote in message
> news:ub99mydiEHA.1344@.TK2MSFTNGP11.phx.gbl...
2.8
> on
>
|||Thank you all
For the advice.
"Ian" <ian@.NoWhere.com> wrote in message
news:u4iDeidiEHA.3016@.tk2msftngp13.phx.gbl...
> Hi
> How can I find out what version of MDAC is installed on a Machine.
> And would there be any problem with me installing both MDAC 2.7 and 2.8 on
> the same machine
> Ian
>
|||And to offer some more advice, unless there is a compelling reason to use
ADO 2.6 or greater, just reference ADO 2.5 and redistribute MDAC 2.5. That
way, the Jet components are included and, if not present, should get
installed even if MDAC 2.6 or greater is already installed. At least, I'm
pretty sure about that. I'm sure someone will correct me if I'm wrong.
Mike
"Douglas J. Steele" <NOSPAM_djsteele@.NOSPAM_canada.com> wrote in message
news:untEKfiiEHA.1104@.TK2MSFTNGP10.phx.gbl...
> MDAC 2.7 doesn't have the Jet drivers either: MDAC 2.5 was the last
version
> that did.
> In any case, Aaron gave you the correct answer
> --
> Doug Steele, Microsoft Access MVP
> http://I.Am/DougSteele
> (no e-mails, please!)
>
> "Ian" <ian@.NoWhere.com> wrote in message
> news:uotFj7diEHA.384@.TK2MSFTNGP10.phx.gbl...
> 2.8
>
MDAC version
How can I find out what version of MDAC is installed on a Machine.
And would there be any problem with me installing both MDAC 2.7 and 2.8 on
the same machine
Ian> How can I find out what version of MDAC is installed on a Machine.
http://www.aspfaq.com/2057
> And would there be any problem with me installing both MDAC 2.7 and 2.8 on
> the same machine
Installing 2.8 should upgrade 2.7 to 2.8.
http://www.aspfaq.com/
(Reverse address to reply.)|||Thanks Aaron
But i was reading that MDAC 2.8 does not have the JET drivers and my
application needs them as well as the MS SQL drivers.
So do i install both?
Ian
"Aaron [SQL Server MVP]" <ten.xoc@.dnartreb.noraa> wrote in message
news:ub99mydiEHA.1344@.TK2MSFTNGP11.phx.gbl...
> http://www.aspfaq.com/2057
>
on[vbcol=seagreen]
> Installing 2.8 should upgrade 2.7 to 2.8.
> --
> http://www.aspfaq.com/
> (Reverse address to reply.)
>|||No, you don't need to install 2.7 and 2.8. You need to install MDAC 2.8 and
then install newer jet drivers separately.
http://www.aspfaq.com/2342
http://www.aspfaq.com/
(Reverse address to reply.)
"Ian" <ian@.NoWhere.com> wrote in message
news:uotFj7diEHA.384@.TK2MSFTNGP10.phx.gbl...
> Thanks Aaron
> But i was reading that MDAC 2.8 does not have the JET drivers and my
> application needs them as well as the MS SQL drivers.
>
> So do i install both?|||Ian wrote:
> Hi
> How can I find out what version of MDAC is installed on a Machine.
> And would there be any problem with me installing both MDAC 2.7 and 2.8 on
> the same machine
> Ian
I use this approach:
Private Sub mnuHelpMDAC_Click()
Dim ans As String
ans = GetAdoVersion
If ans = "0" Then
MsgBox "MDAC is not Installed" & _
"Please Install MDAC from the DBAdmin CD", _
vbCritical, "Missing Important Component"
Else
MsgBox "MDAC version " & ans & " Is Installed on this System"
End If
End Sub
Function GetAdoVersion() As String
'Retrieve ADO (MDAC) version - see if it installed
'Returns an empty string is ADO is not installed
Dim o As Object
On Error Resume Next
GetAdoVersion = "0"
Set o = CreateObject("ADODB.Connection")
If Err.Number = 0 Then GetAdoVersion = o.Version
Set o = Nothing
End Function|||MDAC 2.7 doesn't have the Jet drivers either: MDAC 2.5 was the last version
that did.
In any case, Aaron gave you the correct answer
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no e-mails, please!)
"Ian" <ian@.NoWhere.com> wrote in message
news:uotFj7diEHA.384@.TK2MSFTNGP10.phx.gbl...
> Thanks Aaron
> But i was reading that MDAC 2.8 does not have the JET drivers and my
> application needs them as well as the MS SQL drivers.
>
> So do i install both?
> Ian
>
>
> "Aaron [SQL Server MVP]" <ten.xoc@.dnartreb.noraa> wrote in message
> news:ub99mydiEHA.1344@.TK2MSFTNGP11.phx.gbl...
2.8[vbcol=seagreen]
> on
>|||Thank you all
For the advice.
"Ian" <ian@.NoWhere.com> wrote in message
news:u4iDeidiEHA.3016@.tk2msftngp13.phx.gbl...
> Hi
> How can I find out what version of MDAC is installed on a Machine.
> And would there be any problem with me installing both MDAC 2.7 and 2.8 on
> the same machine
> Ian
>|||And to offer some more advice, unless there is a compelling reason to use
ADO 2.6 or greater, just reference ADO 2.5 and redistribute MDAC 2.5. That
way, the Jet components are included and, if not present, should get
installed even if MDAC 2.6 or greater is already installed. At least, I'm
pretty sure about that. I'm sure someone will correct me if I'm wrong.
Mike
"Douglas J. Steele" <NOSPAM_djsteele@.NOSPAM_canada.com> wrote in message
news:untEKfiiEHA.1104@.TK2MSFTNGP10.phx.gbl...
> MDAC 2.7 doesn't have the Jet drivers either: MDAC 2.5 was the last
version
> that did.
> In any case, Aaron gave you the correct answer
> --
> Doug Steele, Microsoft Access MVP
> http://I.Am/DougSteele
> (no e-mails, please!)
>
> "Ian" <ian@.NoWhere.com> wrote in message
> news:uotFj7diEHA.384@.TK2MSFTNGP10.phx.gbl...
> 2.8
>
MDAC version
How can I find out what version of MDAC is installed on a Machine.
And would there be any problem with me installing both MDAC 2.7 and 2.8 on
the same machine
Ian
> How can I find out what version of MDAC is installed on a Machine.
http://www.aspfaq.com/2057
> And would there be any problem with me installing both MDAC 2.7 and 2.8 on
> the same machine
Installing 2.8 should upgrade 2.7 to 2.8.
http://www.aspfaq.com/
(Reverse address to reply.)
|||Thanks Aaron
But i was reading that MDAC 2.8 does not have the JET drivers and my
application needs them as well as the MS SQL drivers.
So do i install both?
Ian
"Aaron [SQL Server MVP]" <ten.xoc@.dnartreb.noraa> wrote in message
news:ub99mydiEHA.1344@.TK2MSFTNGP11.phx.gbl...[vbcol=seagreen]
> http://www.aspfaq.com/2057
on
> Installing 2.8 should upgrade 2.7 to 2.8.
> --
> http://www.aspfaq.com/
> (Reverse address to reply.)
>
|||No, you don't need to install 2.7 and 2.8. You need to install MDAC 2.8 and
then install newer jet drivers separately.
http://www.aspfaq.com/2342
http://www.aspfaq.com/
(Reverse address to reply.)
"Ian" <ian@.NoWhere.com> wrote in message
news:uotFj7diEHA.384@.TK2MSFTNGP10.phx.gbl...
> Thanks Aaron
> But i was reading that MDAC 2.8 does not have the JET drivers and my
> application needs them as well as the MS SQL drivers.
>
> So do i install both?
|||Ian wrote:
> Hi
> How can I find out what version of MDAC is installed on a Machine.
> And would there be any problem with me installing both MDAC 2.7 and 2.8 on
> the same machine
> Ian
I use this approach:
Private Sub mnuHelpMDAC_Click()
Dim ans As String
ans = GetAdoVersion
If ans = "0" Then
MsgBox "MDAC is not Installed" & _
"Please Install MDAC from the DBAdmin CD", _
vbCritical, "Missing Important Component"
Else
MsgBox "MDAC version " & ans & " Is Installed on this System"
End If
End Sub
Function GetAdoVersion() As String
'Retrieve ADO (MDAC) version - see if it installed
'Returns an empty string is ADO is not installed
Dim o As Object
On Error Resume Next
GetAdoVersion = "0"
Set o = CreateObject("ADODB.Connection")
If Err.Number = 0 Then GetAdoVersion = o.Version
Set o = Nothing
End Function
|||MDAC 2.7 doesn't have the Jet drivers either: MDAC 2.5 was the last version
that did.
In any case, Aaron gave you the correct answer
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no e-mails, please!)
"Ian" <ian@.NoWhere.com> wrote in message
news:uotFj7diEHA.384@.TK2MSFTNGP10.phx.gbl...[vbcol=seagreen]
> Thanks Aaron
> But i was reading that MDAC 2.8 does not have the JET drivers and my
> application needs them as well as the MS SQL drivers.
>
> So do i install both?
> Ian
>
>
> "Aaron [SQL Server MVP]" <ten.xoc@.dnartreb.noraa> wrote in message
> news:ub99mydiEHA.1344@.TK2MSFTNGP11.phx.gbl...
2.8
> on
>
|||Thank you all
For the advice.
"Ian" <ian@.NoWhere.com> wrote in message
news:u4iDeidiEHA.3016@.tk2msftngp13.phx.gbl...
> Hi
> How can I find out what version of MDAC is installed on a Machine.
> And would there be any problem with me installing both MDAC 2.7 and 2.8 on
> the same machine
> Ian
>
|||And to offer some more advice, unless there is a compelling reason to use
ADO 2.6 or greater, just reference ADO 2.5 and redistribute MDAC 2.5. That
way, the Jet components are included and, if not present, should get
installed even if MDAC 2.6 or greater is already installed. At least, I'm
pretty sure about that. I'm sure someone will correct me if I'm wrong.
Mike
"Douglas J. Steele" <NOSPAM_djsteele@.NOSPAM_canada.com> wrote in message
news:untEKfiiEHA.1104@.TK2MSFTNGP10.phx.gbl...
> MDAC 2.7 doesn't have the Jet drivers either: MDAC 2.5 was the last
version
> that did.
> In any case, Aaron gave you the correct answer
> --
> Doug Steele, Microsoft Access MVP
> http://I.Am/DougSteele
> (no e-mails, please!)
>
> "Ian" <ian@.NoWhere.com> wrote in message
> news:uotFj7diEHA.384@.TK2MSFTNGP10.phx.gbl...
> 2.8
>
MDAC version
How can I find out what version of MDAC is installed on a Machine.
And would there be any problem with me installing both MDAC 2.7 and 2.8 on
the same machine
Ian> How can I find out what version of MDAC is installed on a Machine.
http://www.aspfaq.com/2057
> And would there be any problem with me installing both MDAC 2.7 and 2.8 on
> the same machine
Installing 2.8 should upgrade 2.7 to 2.8.
--
http://www.aspfaq.com/
(Reverse address to reply.)|||Thanks Aaron
But i was reading that MDAC 2.8 does not have the JET drivers and my
application needs them as well as the MS SQL drivers.
So do i install both?
Ian
"Aaron [SQL Server MVP]" <ten.xoc@.dnartreb.noraa> wrote in message
news:ub99mydiEHA.1344@.TK2MSFTNGP11.phx.gbl...
> > How can I find out what version of MDAC is installed on a Machine.
> http://www.aspfaq.com/2057
> > And would there be any problem with me installing both MDAC 2.7 and 2.8
on
> > the same machine
> Installing 2.8 should upgrade 2.7 to 2.8.
> --
> http://www.aspfaq.com/
> (Reverse address to reply.)
>|||No, you don't need to install 2.7 and 2.8. You need to install MDAC 2.8 and
then install newer jet drivers separately.
http://www.aspfaq.com/2342
--
http://www.aspfaq.com/
(Reverse address to reply.)
"Ian" <ian@.NoWhere.com> wrote in message
news:uotFj7diEHA.384@.TK2MSFTNGP10.phx.gbl...
> Thanks Aaron
> But i was reading that MDAC 2.8 does not have the JET drivers and my
> application needs them as well as the MS SQL drivers.
>
> So do i install both?|||Ian wrote:
> Hi
> How can I find out what version of MDAC is installed on a Machine.
> And would there be any problem with me installing both MDAC 2.7 and 2.8 on
> the same machine
> Ian
I use this approach:
Private Sub mnuHelpMDAC_Click()
Dim ans As String
ans = GetAdoVersion
If ans = "0" Then
MsgBox "MDAC is not Installed" & _
"Please Install MDAC from the DBAdmin CD", _
vbCritical, "Missing Important Component"
Else
MsgBox "MDAC version " & ans & " Is Installed on this System"
End If
End Sub
Function GetAdoVersion() As String
'Retrieve ADO (MDAC) version - see if it installed
'Returns an empty string is ADO is not installed
Dim o As Object
On Error Resume Next
GetAdoVersion = "0"
Set o = CreateObject("ADODB.Connection")
If Err.Number = 0 Then GetAdoVersion = o.Version
Set o = Nothing
End Function|||MDAC 2.7 doesn't have the Jet drivers either: MDAC 2.5 was the last version
that did.
In any case, Aaron gave you the correct answer
--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no e-mails, please!)
"Ian" <ian@.NoWhere.com> wrote in message
news:uotFj7diEHA.384@.TK2MSFTNGP10.phx.gbl...
> Thanks Aaron
> But i was reading that MDAC 2.8 does not have the JET drivers and my
> application needs them as well as the MS SQL drivers.
>
> So do i install both?
> Ian
>
>
> "Aaron [SQL Server MVP]" <ten.xoc@.dnartreb.noraa> wrote in message
> news:ub99mydiEHA.1344@.TK2MSFTNGP11.phx.gbl...
> > > How can I find out what version of MDAC is installed on a Machine.
> >
> > http://www.aspfaq.com/2057
> >
> > > And would there be any problem with me installing both MDAC 2.7 and
2.8
> on
> > > the same machine
> >
> > Installing 2.8 should upgrade 2.7 to 2.8.
> >
> > --
> > http://www.aspfaq.com/
> > (Reverse address to reply.)
> >
> >
>|||Thank you all
For the advice.
"Ian" <ian@.NoWhere.com> wrote in message
news:u4iDeidiEHA.3016@.tk2msftngp13.phx.gbl...
> Hi
> How can I find out what version of MDAC is installed on a Machine.
> And would there be any problem with me installing both MDAC 2.7 and 2.8 on
> the same machine
> Ian
>|||And to offer some more advice, unless there is a compelling reason to use
ADO 2.6 or greater, just reference ADO 2.5 and redistribute MDAC 2.5. That
way, the Jet components are included and, if not present, should get
installed even if MDAC 2.6 or greater is already installed. At least, I'm
pretty sure about that. I'm sure someone will correct me if I'm wrong.
Mike
"Douglas J. Steele" <NOSPAM_djsteele@.NOSPAM_canada.com> wrote in message
news:untEKfiiEHA.1104@.TK2MSFTNGP10.phx.gbl...
> MDAC 2.7 doesn't have the Jet drivers either: MDAC 2.5 was the last
version
> that did.
> In any case, Aaron gave you the correct answer
> --
> Doug Steele, Microsoft Access MVP
> http://I.Am/DougSteele
> (no e-mails, please!)
>
> "Ian" <ian@.NoWhere.com> wrote in message
> news:uotFj7diEHA.384@.TK2MSFTNGP10.phx.gbl...
> > Thanks Aaron
> >
> > But i was reading that MDAC 2.8 does not have the JET drivers and my
> > application needs them as well as the MS SQL drivers.
> >
> >
> > So do i install both?
> >
> > Ian
> >
> >
> >
> >
> > "Aaron [SQL Server MVP]" <ten.xoc@.dnartreb.noraa> wrote in message
> > news:ub99mydiEHA.1344@.TK2MSFTNGP11.phx.gbl...
> > > > How can I find out what version of MDAC is installed on a Machine.
> > >
> > > http://www.aspfaq.com/2057
> > >
> > > > And would there be any problem with me installing both MDAC 2.7 and
> 2.8
> > on
> > > > the same machine
> > >
> > > Installing 2.8 should upgrade 2.7 to 2.8.
> > >
> > > --
> > > http://www.aspfaq.com/
> > > (Reverse address to reply.)
> > >
> > >
> >
> >
>
MDAC upgrade problem CompCheck reports 2.5 instead of 2.8
I am running SQL server on a Windows 2000 server with sp4 installed. After installing SQL service pack 4 on the machine my applications began complaining that MDAC was version 2.5 sure enough CompChecker reports version 2.5. I have tried to install the latest version of MDAC (2.8) on the machine but no matter what I do CompChecker reports 2.5.
I've tried reinstalling the SQL service pack I had no luck with that. Any help with this issue would be greatly appreciated.
WHen was the Windows service pack4 was applied, is it after SQL SP4 or before?
Check this KBA http://support.microsoft.com/kb/823939 for informaiton, ifyou need then you have to install MDAC 2.8 seperately.
|||The service pack was applied before the upgrade.|||I don't know if this helps but I think the issue is with the Windows File Protection. If I attempt to rename one of the dlls the server will automatically replace the file on the server with the 2.5 version. Is there some way to overcome this?|||Did you try to install the MDAC 2.8 separately like Satya proposed ? The file cannot be changed as the Windows FileProtextion is enabled for them (as you already noticed). if you already tried to install the MDAC 2.8, did you get an error or did the install run through ? Did you restart the system afterwards ?HTH, Jens K. Suessmeyer.
http://www.sqlserver2005.de
I finally figured this out. It turns out that there were certain registry settings that were incorrectly set when SP4 was applied to SQL Server 2000. I don't want to get into the exact registry settings that need to be changed but that is where the answer lies.
Thanks to all for your assistance.
Wednesday, March 28, 2012
MDAC 2.8 vs MDAC 2.7 SQL Server Driver - causing deadlocks
version 2000.81.9042.0) and a Windows Server 2003 machine with MDAC 2.8 SP2
for Server 2003 (sqlsrv32.dll version 2000.86.1830.0) as confirmed by MDAC
Component Checker.
They are both connecting to the same machine with SQL Server 2000 with SP4.
I am submitting the several SQL commands through .NET OleDb (Framework 1.1)
to a JET DB (Access 2003) with a linked table to SQL Server. I have also
connected to JET through ODBC in the past as well with the same results.
I am inserting a record into a linked table called "Events" with one
autonumbered IDENTITY column called EventKey.
I have started a transaction through the BeginTransaction .NET methods. I
submit the following SQL commands (.NET pseudo-code'ish):
ExecuteNonQuery("INSERT INTO Events (EventMember) VALUES (6)")
var key = ExecuteScalar("SELECT @.@.IDENTITY")
ExecuteQuery("SELECT * FROM Events WHERE EventKey = " & key)
The first two commands run successfully, but the third command fails with
the following error: "System.Data.OleDb.OleDbException: ODBC--call failed."
after about a minute timeout.
Upon checking SQL Enterprise Manager, there are two processes (one blocking,
one blocked). The blocking process last executed the "SELECT @.@.IDENTITY",
the blocked process executed the "select * from..." query. After a lock
timeout, the SELECT * query returns with that error.
My question is: why are TWO connections being made to SQL Server for the
same transaction? Since all three queries are coming from the same source
JET connection, of course that second connection to SQL server while the
first connection has that inserted record locked will fail to read it.
This works perfectly from MDAC 2.7, but fails every time with MDAC 2.8. I
have tried to go through the "List of bug fixes" KB articles, but nothing wa
s
listed about a fix that I would think may break this idea other than
asynchronous fetching?
Any ideas - our application heavily uses this approach to insert new records
through ADO.NET and then select the records back during the same transaction
.
Thanks,
Mike Dearman
Lead Software EngineerI used the ODBC trace feature to obtain the following log. It definitely
shows the ODBC driver disconnecting then reconnecting between the SELECT
@.@.IDENTIY and the SELECT * commands. The weird thing is that it does a
SQLExecDirectW, then a fetch, then a getdata that all appears to be
successful. Then it does another fetch with return code 100
(SQL_NO_DATA_FOUND). After that, it seems to free the statement, and procee
d
to call SQLAllocConnect again.
Here is the complete ODBC trace log for the three SQL commands (cleaned up a
bit though - log too long):
ENTER SQLAllocEnv
HENV * 0C0FE7B8
EXIT SQLAllocEnv with return code 0 (SQL_SUCCESS)
HENV * 0x0C0FE7B8 ( 0x0f881788)
ENTER SQLAllocConnect
HENV 0F881788
HDBC * 0C0FE8C8
EXIT SQLAllocConnect with return code 0 (SQL_SUCCESS)
HENV 0F881788
HDBC * 0x0C0FE8C8 ( 0x0f881830)
ENTER SQLSetConnectOption
HDBC 0F881830
SQLINTEGER 103 <SQL_LOGIN_TIMEOUT>
SQLPOINTER 0x00000014
EXIT SQLSetConnectOption with return code 0 (SQL_SUCCESS)
HDBC 0F881830
SQLINTEGER 103 <SQL_LOGIN_TIMEOUT>
SQLPOINTER 0x00000014 (BADMEM)
ENTER SQLSetConnectAttrW
SQLHDBC 0F881830
SQLINTEGER 30002 <unknown>
SQLPOINTER [Unknown attribute 30002]
SQLINTEGER -3
EXIT SQLSetConnectAttrW with return code 0 (SQL_SUCCESS)
SQLHDBC 0F881830
SQLINTEGER 30002 <unknown>
SQLPOINTER [Unknown attribute 30002]
SQLINTEGER -3
ENTER SQLDriverConnectW
HDBC 0F881830
HWND 00000000
WCHAR * 0x4BF78088 [ -3] "******\ 0"
SWORD -3
WCHAR * 0x4BF78088
SWORD 2
SWORD * 0x00000000
UWORD 0 <SQL_DRIVER_NOPROMPT>
EXIT SQLDriverConnectW with return code 1 (SQL_SUCCESS_WITH_INFO)
HDBC 0F881830
HWND 00000000
WCHAR * 0x4BF78088 [ -3] "******\ 0"
SWORD -3
WCHAR * 0x4BF78088
SWORD 2
SWORD * 0x00000000
UWORD 0 <SQL_DRIVER_NOPROMPT>
DIAG [IM006] [Microsoft][ODBC Driver Manager] Driver's SQLSetCon
nectAttr
failed (0)
DIAG [01000] [Microsoft][ODBC SQL Server Driver][SQL Server]
Changed
database context to 'UAA'. (5701)
DIAG [01000] [Microsoft][ODBC SQL Server Driver][SQL Server]
Changed
language setting to us_english. (5703)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 9 <SQL_ODBC_API_CONFORMANCE>
PTR 0x0C0FE8EC
SWORD 2
SWORD * 0x0C0FE8E4
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 9 <SQL_ODBC_API_CONFORMANCE>
PTR 0x0C0FE8EC (2)
SWORD 2
SWORD * 0x0C0FE8E4 (2)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 6 <SQL_DRIVER_NAME>
PTR 0x0C0FE7FC
SWORD 200
SWORD * 0x0C0FE8E4
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 6 <SQL_DRIVER_NAME>
PTR 0x0C0FE7FC [ 24] "SQLSRV32.DLL"
SWORD 200
SWORD * 0x0C0FE8E4 (24)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 46 <SQL_TXN_CAPABLE>
PTR 0x0C0FE7C6
SWORD 2
SWORD * 0x0C0FE398
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 46 <SQL_TXN_CAPABLE>
PTR 0x0C0FE7C6 (2)
SWORD 2
SWORD * 0x0C0FE398 (2)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 23 <SQL_CURSOR_COMMIT_BEHAVIOR>
PTR 0x0E029928
SWORD 2
SWORD * 0x0C0FE398
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 23 <SQL_CURSOR_COMMIT_BEHAVIOR>
PTR 0x0E029928 (1)
SWORD 2
SWORD * 0x0C0FE398 (2)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 24 <SQL_CURSOR_ROLLBACK_BEHAVIOR>
PTR 0x0E02992A
SWORD 2
SWORD * 0x0C0FE398
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 24 <SQL_CURSOR_ROLLBACK_BEHAVIOR>
PTR 0x0E02992A (1)
SWORD 2
SWORD * 0x0C0FE398 (2)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 1 <SQL_ACTIVE_STATEMENTS>
PTR 0x0C0FE7CC
SWORD 2
SWORD * 0x0C0FE7B2
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 1 <SQL_ACTIVE_STATEMENTS>
PTR 0x0C0FE7CC (1)
SWORD 2
SWORD * 0x0C0FE7B2 (2)
ENTER SQLSetConnectOption
HDBC 0F881830
SQLINTEGER 101 <SQL_ACCESS_MODE>
SQLPOINTER 0x00000000
EXIT SQLSetConnectOption with return code 0 (SQL_SUCCESS)
HDBC 0F881830
SQLINTEGER 101 <SQL_ACCESS_MODE>
SQLPOINTER 0x00000000
ENTER SQLAllocStmt
HDBC 0F881830
HSTMT * 0C0FE390
EXIT SQLAllocStmt with return code 0 (SQL_SUCCESS)
HDBC 0F881830
HSTMT * 0x0C0FE390 ( 0x0f8820f0)
ENTER SQLGetStmtOption
HSTMT 0F8820F0
UWORD 0
PTR 0x0C0FE33C
EXIT SQLGetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 0
PTR 0x0C0FE33C
ENTER SQLSetStmtOption
HSTMT 0F8820F0
UWORD 0 <SQL_QUERY_TIMEOUT>
SQLPOINTER 0x0000003C
EXIT SQLSetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 0 <SQL_QUERY_TIMEOUT>
SQLPOINTER 0x0000003C (BADMEM)
ENTER SQLExecDirectW
HSTMT 0F8820F0
WCHAR * 0x1B074AA0 [ -3] "SELECT Config, nValue FROM
MSysConf\ 0"
SDWORD -3
EXIT SQLExecDirectW with return code -1 (SQL_ERROR)
HSTMT 0F8820F0
WCHAR * 0x1B074AA0 [ -3] "SELECT Config, nValue FROM
MSysConf\ 0"
SDWORD -3
DIAG [S0002] [Microsoft][ODBC SQL Server Driver][SQL Server]
Invalid object
name 'MSysConf'. (208)
ENTER SQLErrorW
HENV 0F881788
HDBC 0F881830
HSTMT 0F8820F0
WCHAR * 0x0C0FE2D0 (NYI)
SDWORD * 0x0C0FE31C
WCHAR * 0x0DFD0048
SWORD 4095
SWORD * 0x0C0FE308
EXIT SQLErrorW with return code 0 (SQL_SUCCESS)
HENV 0F881788
HDBC 0F881830
HSTMT 0F8820F0
WCHAR * 0x0C0FE2D0 (NYI)
SDWORD * 0x0C0FE31C (208)
WCHAR * 0x0DFD0048 [ 78] "[Microsoft][ODBC SQL
Server
Driver][SQL Server]Invalid object name 'MSysConf'."
SWORD 4095
SWORD * 0x0C0FE308 (78)
ENTER SQLErrorW
HENV 0F881788
HDBC 0F881830
HSTMT 0F8820F0
WCHAR * 0x0C0FE2D0 (NYI)
SDWORD * 0x0C0FE31C
WCHAR * 0x0DFD00FA
SWORD 4006
SWORD * 0x0C0FE308
EXIT SQLErrorW with return code 100 (SQL_NO_DATA_FOUND)
HENV 0F881788
HDBC 0F881830
HSTMT 0F8820F0
WCHAR * 0x0C0FE2D0 (NYI)
SDWORD * 0x0C0FE31C
WCHAR * 0x0DFD00FA
SWORD 4006
SWORD * 0x0C0FE308
ENTER SQLFreeStmt
HSTMT 0F8820F0
UWORD 1 <SQL_DROP>
EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 1 <SQL_DROP>
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 17 <SQL_DBMS_NAME>
PTR 0x0C0FDFC4
SWORD 200
SWORD * 0x0C0FE08E
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 17 <SQL_DBMS_NAME>
PTR 0x0C0FDFC4 [ 40] "Microsoft SQL Server"
SWORD 200
SWORD * 0x0C0FE08E (40)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 0 <SQL_ACTIVE_CONNECTIONS>
PTR 0x0C0FE0D2
SWORD 2
SWORD * 0x0C0FE0E0
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 0 <SQL_ACTIVE_CONNECTIONS>
PTR 0x0C0FE0D2 (0)
SWORD 2
SWORD * 0x0C0FE0E0 (2)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 25 <SQL_DATA_SOURCE_READ_ONLY>
PTR 0x0C0FE0B8
SWORD 20
SWORD * 0x0C0FE0E0
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 25 <SQL_DATA_SOURCE_READ_ONLY>
PTR 0x0C0FE0B8 [ 2] "N"
SWORD 20
SWORD * 0x0C0FE0E0 (2)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 46 <SQL_TXN_CAPABLE>
PTR 0x0C0FE0D0
SWORD 2
SWORD * 0x0C0FE0A0
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 46 <SQL_TXN_CAPABLE>
PTR 0x0C0FE0D0 (2)
SWORD 2
SWORD * 0x0C0FE0A0 (2)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 23 <SQL_CURSOR_COMMIT_BEHAVIOR>
PTR 0x0C0FE0CC
SWORD 2
SWORD * 0x0C0FE0A0
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 23 <SQL_CURSOR_COMMIT_BEHAVIOR>
PTR 0x0C0FE0CC (1)
SWORD 2
SWORD * 0x0C0FE0A0 (2)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 24 <SQL_CURSOR_ROLLBACK_BEHAVIOR>
PTR 0x0C0FE0CE
SWORD 2
SWORD * 0x0C0FE0A0
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 24 <SQL_CURSOR_ROLLBACK_BEHAVIOR>
PTR 0x0C0FE0CE (1)
SWORD 2
SWORD * 0x0C0FE0A0 (2)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 29 <SQL_IDENTIFIER_QUOTE_CHAR>
PTR 0x0C0FE0B8
SWORD 20
SWORD * 0x0C0FE0E0
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 29 <SQL_IDENTIFIER_QUOTE_CHAR>
PTR 0x0C0FE0B8 [ 2] """
SWORD 20
SWORD * 0x0C0FE0E0 (2)
ENTER SQLSetConnectOption
HDBC 0F881830
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000000
EXIT SQLSetConnectOption with return code 0 (SQL_SUCCESS)
HDBC 0F881830
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000000
ENTER SQLAllocStmt
HDBC 0F881830
HSTMT * 0C0FEBD8
EXIT SQLAllocStmt with return code 0 (SQL_SUCCESS)
HDBC 0F881830
HSTMT * 0x0C0FEBD8 ( 0x0f8820f0)
ENTER SQLGetStmtOption
HSTMT 0F8820F0
UWORD 0
PTR 0x0C0FE718
EXIT SQLGetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 0
PTR 0x0C0FE718
ENTER SQLSetStmtOption
HSTMT 0F8820F0
UWORD 0 <SQL_QUERY_TIMEOUT>
SQLPOINTER 0x0000003C
EXIT SQLSetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 0 <SQL_QUERY_TIMEOUT>
SQLPOINTER 0x0000003C (BADMEM)
ENTER SQLBindParameter
HSTMT 0F8820F0
UWORD 1
SWORD 1 <SQL_PARAM_INPUT>
SWORD 4 <SQL_C_LONG>
SWORD 4 <SQL_INTEGER>
SQLULEN 10
SWORD 0
PTR 0x2DFD41A4
SQLLEN 0
SQLLEN * 0x2DFD41A0
EXIT SQLBindParameter with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 1
SWORD 1 <SQL_PARAM_INPUT>
SWORD 4 <SQL_C_LONG>
SWORD 4 <SQL_INTEGER>
SQLULEN 10
SWORD 0
PTR 0x2DFD41A4
SQLLEN 0
SQLLEN * 0x2DFD41A0 (4)
ENTER SQLExecDirectW
HSTMT 0F8820F0
WCHAR * 0x2DFD61A8 [ -3] "INSERT INTO "dbo"."Events"
("EventMember") VALUES (?)\ 0"
SDWORD -3
EXIT SQLExecDirectW with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
WCHAR * 0x2DFD61A8 [ -3] "INSERT INTO "dbo"."Events"
("EventMember") VALUES (?)\ 0"
SDWORD -3
ENTER SQLFreeStmt
HSTMT 0F8820F0
UWORD 3 <SQL_RESET_PARAMS>
EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 3 <SQL_RESET_PARAMS>
ENTER SQLRowCount
HSTMT 0F8820F0
SQLLEN * 0x0C0FEBAC
EXIT SQLRowCount with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
SQLLEN * 0x0C0FEBAC (1)
ENTER SQLFreeStmt
HSTMT 0F8820F0
UWORD 1 <SQL_DROP>
EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 1 <SQL_DROP>
ENTER SQLAllocStmt
HDBC 0F881830
HSTMT * 0C0FE744
EXIT SQLAllocStmt with return code 0 (SQL_SUCCESS)
HDBC 0F881830
HSTMT * 0x0C0FE744 ( 0x0f8820f0)
ENTER SQLGetStmtOption
HSTMT 0F8820F0
UWORD 0
PTR 0x0C0FE6EC
EXIT SQLGetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 0
PTR 0x0C0FE6EC
ENTER SQLSetStmtOption
HSTMT 0F8820F0
UWORD 0 <SQL_QUERY_TIMEOUT>
SQLPOINTER 0x0000003C
EXIT SQLSetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 0 <SQL_QUERY_TIMEOUT>
SQLPOINTER 0x0000003C (BADMEM)
ENTER SQLExecDirectW
HSTMT 0F8820F0
WCHAR * 0x1B075CE0 [ -3] "SELECT @.@.IDENTITY\ 0"
SDWORD -3
EXIT SQLExecDirectW with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
WCHAR * 0x1B075CE0 [ -3] "SELECT @.@.IDENTITY\ 0"
SDWORD -3
ENTER SQLFetch
HSTMT 0F8820F0
EXIT SQLFetch with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
ENTER SQLGetData
HSTMT 0F8820F0
UWORD 1
SWORD 4 <SQL_C_LONG>
PTR <unknown type>
SQLLEN 4
SQLLEN * 0x0C0FE738
EXIT SQLGetData with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 1
SWORD 4 <SQL_C_LONG>
PTR <unknown type>
SQLLEN 4
SQLLEN * 0x0C0FE738 (4)
ENTER SQLFetch
HSTMT 0F8820F0
EXIT SQLFetch with return code 100 (SQL_NO_DATA_FOUND)
HSTMT 0F8820F0
ENTER SQLFreeStmt
HSTMT 0F8820F0
UWORD 0 <SQL_CLOSE>
EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 0 <SQL_CLOSE>
ENTER SQLFreeStmt
HSTMT 0F8820F0
UWORD 1 <SQL_DROP>
EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 1 <SQL_DROP>
ENTER SQLAllocConnect
HENV 0F881788
HDBC * 0C0FEBF0
EXIT SQLAllocConnect with return code 0 (SQL_SUCCESS)
HENV 0F881788
HDBC * 0x0C0FEBF0 ( 0x0f882af0)
ENTER SQLSetConnectOption
HDBC 0F882AF0
SQLINTEGER 103 <SQL_LOGIN_TIMEOUT>
SQLPOINTER 0x00000014
EXIT SQLSetConnectOption with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
SQLINTEGER 103 <SQL_LOGIN_TIMEOUT>
SQLPOINTER 0x00000014 (BADMEM)
ENTER SQLSetConnectAttrW
SQLHDBC 0F882AF0
SQLINTEGER 30002 <unknown>
SQLPOINTER [Unknown attribute 30002]
SQLINTEGER -3
EXIT SQLSetConnectAttrW with return code 0 (SQL_SUCCESS)
SQLHDBC 0F882AF0
SQLINTEGER 30002 <unknown>
SQLPOINTER [Unknown attribute 30002]
SQLINTEGER -3
ENTER SQLDriverConnectW
HDBC 0F882AF0
HWND 00000000
WCHAR * 0x4BF78088 [ -3] "******\ 0"
SWORD -3
WCHAR * 0x4BF78088
SWORD 2
SWORD * 0x00000000
UWORD 0 <SQL_DRIVER_NOPROMPT>
EXIT SQLDriverConnectW with return code 1 (SQL_SUCCESS_WITH_INFO)
HDBC 0F882AF0
HWND 00000000
WCHAR * 0x4BF78088 [ -3] "******\ 0"
SWORD -3
WCHAR * 0x4BF78088
SWORD 2
SWORD * 0x00000000
UWORD 0 <SQL_DRIVER_NOPROMPT>
DIAG [IM006] [Microsoft][ODBC Driver Manager] Driver's SQLSetCon
nectAttr
failed (0)
DIAG [01000] [Microsoft][ODBC SQL Server Driver][SQL Server]
Changed
database context to 'UAA'. (5701)
DIAG [01000] [Microsoft][ODBC SQL Server Driver][SQL Server]
Changed
language setting to us_english. (5703)
ENTER SQLGetInfoW
HDBC 0F882AF0
UWORD 9 <SQL_ODBC_API_CONFORMANCE>
PTR 0x0C0FEC14
SWORD 2
SWORD * 0x0C0FEC0C
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
UWORD 9 <SQL_ODBC_API_CONFORMANCE>
PTR 0x0C0FEC14 (2)
SWORD 2
SWORD * 0x0C0FEC0C (2)
ENTER SQLGetInfoW
HDBC 0F882AF0
UWORD 6 <SQL_DRIVER_NAME>
PTR 0x0C0FEB24
SWORD 200
SWORD * 0x0C0FEC0C
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
UWORD 6 <SQL_DRIVER_NAME>
PTR 0x0C0FEB24 [ 24] "SQLSRV32.DLL"
SWORD 200
SWORD * 0x0C0FEC0C (24)
ENTER SQLGetInfoW
HDBC 0F882AF0
UWORD 46 <SQL_TXN_CAPABLE>
PTR 0x0C0FEAEE
SWORD 2
SWORD * 0x0C0FE6C0
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
UWORD 46 <SQL_TXN_CAPABLE>
PTR 0x0C0FEAEE (2)
SWORD 2
SWORD * 0x0C0FE6C0 (2)
ENTER SQLGetInfoW
HDBC 0F882AF0
UWORD 23 <SQL_CURSOR_COMMIT_BEHAVIOR>
PTR 0x0E029C58
SWORD 2
SWORD * 0x0C0FE6C0
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
UWORD 23 <SQL_CURSOR_COMMIT_BEHAVIOR>
PTR 0x0E029C58 (1)
SWORD 2
SWORD * 0x0C0FE6C0 (2)
ENTER SQLGetInfoW
HDBC 0F882AF0
UWORD 24 <SQL_CURSOR_ROLLBACK_BEHAVIOR>
PTR 0x0E029C5A
SWORD 2
SWORD * 0x0C0FE6C0
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
UWORD 24 <SQL_CURSOR_ROLLBACK_BEHAVIOR>
PTR 0x0E029C5A (1)
SWORD 2
SWORD * 0x0C0FE6C0 (2)
ENTER SQLGetInfoW
HDBC 0F882AF0
UWORD 1 <SQL_ACTIVE_STATEMENTS>
PTR 0x0C0FEAF4
SWORD 2
SWORD * 0x0C0FEADA
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
UWORD 1 <SQL_ACTIVE_STATEMENTS>
PTR 0x0C0FEAF4 (1)
SWORD 2
SWORD * 0x0C0FEADA (2)
ENTER SQLSetConnectOption
HDBC 0F882AF0
SQLINTEGER 101 <SQL_ACCESS_MODE>
SQLPOINTER 0x00000001
EXIT SQLSetConnectOption with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
SQLINTEGER 101 <SQL_ACCESS_MODE>
SQLPOINTER 0x00000001 (BADMEM)
ENTER SQLGetInfoW
HDBC 0F882AF0
UWORD 17 <SQL_DBMS_NAME>
PTR 0x0C0FEB58
SWORD 200
SWORD * 0x0C0FEC22
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
UWORD 17 <SQL_DBMS_NAME>
PTR 0x0C0FEB58 [ 40] "Microsoft SQL Server"
SWORD 200
SWORD * 0x0C0FEC22 (40)
ENTER SQLSetConnectOption
HDBC 0F882AF0
SQLINTEGER 101 <SQL_ACCESS_MODE>
SQLPOINTER 0x00000001
EXIT SQLSetConnectOption with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
SQLINTEGER 101 <SQL_ACCESS_MODE>
SQLPOINTER 0x00000001 (BADMEM)
ENTER SQLSetConnectOption
HDBC 0F882AF0
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000000
EXIT SQLSetConnectOption with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000000
ENTER SQLAllocStmt
HDBC 0F882AF0
HSTMT * 320D2174
EXIT SQLAllocStmt with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
HSTMT * 0x320D2174 ( 0x0f8820f0)
ENTER SQLGetStmtOption
HSTMT 0F8820F0
UWORD 0
PTR 0x0C0FEB7C
EXIT SQLGetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 0
PTR 0x0C0FEB7C
ENTER SQLSetStmtOption
HSTMT 0F8820F0
UWORD 0 <SQL_QUERY_TIMEOUT>
SQLPOINTER 0x0000003C
EXIT SQLSetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 0 <SQL_QUERY_TIMEOUT>
SQLPOINTER 0x0000003C (BADMEM)
ENTER SQLGetStmtOption
HSTMT 0F8820F0
UWORD 3
PTR 0x0C0FEB7C
EXIT SQLGetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 3
PTR 0x0C0FEB7C
ENTER SQLSetStmtOption
HSTMT 0F8820F0
UWORD 3 <SQL_MAX_LENGTH>
SQLPOINTER 0x7FFFFFFF
EXIT SQLSetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 3 <SQL_MAX_LENGTH>
SQLPOINTER 0x7FFFFFFF (BADMEM)
ENTER SQLExecDirectW
HSTMT 0F8820F0
WCHAR * 0x320D2690 [ -3] "SELECT "EventKey" ,"EventMemb
er"
,"EventDateFrom" ,"EventDateTo" ,"EventType" ,"EventName" ,"EventDetails"
,"EventAttendanceHere" ,"EventAttendanceOut" ,"EventAttendanceNight"
,"EventCost" ,"EventCostHere" ,"EventCostOut" ,"EventRevenue"
,"EventRevenueIn" ,"EventColIn" ,"EventFamilies" ,"EventContactHrs"
,"EventMeals" ,"EventOtherOrg1" ,"EventOtherOrg2" ,"EventOtherOrg3"
,"EventOtherOrg4" ,"EventOtherOrg5" ,"EventVolunteers" ,"EventVolHrs"
,"EventOutcomeMeasure" ,"EventOutcomeWeight" ,"EventOutcomeNarrative" FROM
"dbo"."Events" WHERE ("EventKey" = 591 ) \ 0"
SDWORD -3
EXIT SQLExecDirectW with return code -1 (SQL_ERROR)
HSTMT 0F8820F0
WCHAR * 0x320D2690 [ -3] "SELECT "EventKey" ,"EventMemb
er"
,"EventDateFrom" ,"EventDateTo" ,"EventType" ,"EventName" ,"EventDetails"
,"EventAttendanceHere" ,"EventAttendanceOut" ,"EventAttendanceNight"
,"EventCost" ,"EventCostHere" ,"EventCostOut" ,"EventRevenue"
,"EventRevenueIn" ,"EventColIn" ,"EventFamilies" ,"EventContactHrs"
,"EventMeals" ,"EventOtherOrg1" ,"EventOtherOrg2" ,"EventOtherOrg3"
,"EventOtherOrg4" ,"EventOtherOrg5" ,"EventVolunteers" ,"EventVolHrs"
,"EventOutcomeMeasure" ,"EventOutcomeWeight" ,"EventOutcomeNarrative" FROM
"dbo"."Events" WHERE ("EventKey" = 591 ) \ 0"
SDWORD -3
DIAG [S1T00] [Microsoft][ODBC SQL Server Driver]Timeout expired
(0)
ENTER SQLErrorW
HENV 0F881788
HDBC 0F882AF0
HSTMT 0F8820F0
WCHAR * 0x0C0FEAE8 (NYI)
SDWORD * 0x0C0FEB34
WCHAR * 0x0DFD0048
SWORD 4095
SWORD * 0x0C0FEB20
EXIT SQLErrorW with return code 0 (SQL_SUCCESS)
HENV 0F881788
HDBC 0F882AF0
HSTMT 0F8820F0
WCHAR * 0x0C0FEAE8 (NYI)
SDWORD * 0x0C0FEB34 (0)
WCHAR * 0x0DFD0048 [ 50] "[Microsoft][ODBC SQL
Server
Driver]Timeout expired"
SWORD 4095
SWORD * 0x0C0FEB20 (50)
ENTER SQLErrorW
HENV 0F881788
HDBC 0F882AF0
HSTMT 0F8820F0
WCHAR * 0x0C0FEAE8 (NYI)
SDWORD * 0x0C0FEB34
WCHAR * 0x0DFD00BE
SWORD 4036
SWORD * 0x0C0FEB20
EXIT SQLErrorW with return code 100 (SQL_NO_DATA_FOUND)
HENV 0F881788
HDBC 0F882AF0
HSTMT 0F8820F0
WCHAR * 0x0C0FEAE8 (NYI)
SDWORD * 0x0C0FEB34
WCHAR * 0x0DFD00BE
SWORD 4036
SWORD * 0x0C0FEB20
ENTER SQLFreeStmt
HSTMT 0F8820F0
UWORD 1 <SQL_DROP>
EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 1 <SQL_DROP>
ENTER SQLTransact
HENV 0F881788
HDBC 0F882AF0
UWORD 1 <SQL_ROLLBACK>
EXIT SQLTransact with return code 0 (SQL_SUCCESS)
HENV 0F881788
HDBC 0F882AF0
UWORD 1 <SQL_ROLLBACK>
ENTER SQLSetConnectOption
HDBC 0F882AF0
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000001
EXIT SQLSetConnectOption with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000001 (BADMEM)
ENTER SQLTransact
HENV 0F881788
HDBC 0F881830
UWORD 1 <SQL_ROLLBACK>
EXIT SQLTransact with return code 0 (SQL_SUCCESS)
HENV 0F881788
HDBC 0F881830
UWORD 1 <SQL_ROLLBACK>
ENTER SQLSetConnectOption
HDBC 0F881830
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000001
EXIT SQLSetConnectOption with return code 0 (SQL_SUCCESS)
HDBC 0F881830
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000001 (BADMEM)
MDAC 2.8 vs MDAC 2.7 SQL Server Driver - causing deadlocks
version 2000.81.9042.0) and a Windows Server 2003 machine with MDAC 2.8 SP2
for Server 2003 (sqlsrv32.dll version 2000.86.1830.0) as confirmed by MDAC
Component Checker.
They are both connecting to the same machine with SQL Server 2000 with SP4.
I am submitting the several SQL commands through .NET OleDb (Framework 1.1)
to a JET DB (Access 2003) with a linked table to SQL Server. I have also
connected to JET through ODBC in the past as well with the same results.
I am inserting a record into a linked table called "Events" with one
autonumbered IDENTITY column called EventKey.
I have started a transaction through the BeginTransaction .NET methods. I
submit the following SQL commands (.NET pseudo-code'ish):
ExecuteNonQuery("INSERT INTO Events (EventMember) VALUES (6)")
var key = ExecuteScalar("SELECT @.@.IDENTITY")
ExecuteQuery("SELECT * FROM Events WHERE EventKey = " & key)
The first two commands run successfully, but the third command fails with
the following error: "System.Data.OleDb.OleDbException: ODBC--call failed."
after about a minute timeout.
Upon checking SQL Enterprise Manager, there are two processes (one blocking,
one blocked). The blocking process last executed the "SELECT @.@.IDENTITY",
the blocked process executed the "select * from..." query. After a lock
timeout, the SELECT * query returns with that error.
My question is: why are TWO connections being made to SQL Server for the
same transaction? Since all three queries are coming from the same source
JET connection, of course that second connection to SQL server while the
first connection has that inserted record locked will fail to read it.
This works perfectly from MDAC 2.7, but fails every time with MDAC 2.8. I
have tried to go through the "List of bug fixes" KB articles, but nothing was
listed about a fix that I would think may break this idea other than
asynchronous fetching?
Any ideas - our application heavily uses this approach to insert new records
through ADO.NET and then select the records back during the same transaction.
Thanks,
Mike Dearman
Lead Software Engineer
I used the ODBC trace feature to obtain the following log. It definitely
shows the ODBC driver disconnecting then reconnecting between the SELECT
@.@.IDENTIY and the SELECT * commands. The weird thing is that it does a
SQLExecDirectW, then a fetch, then a getdata that all appears to be
successful. Then it does another fetch with return code 100
(SQL_NO_DATA_FOUND). After that, it seems to free the statement, and proceed
to call SQLAllocConnect again.
Here is the complete ODBC trace log for the three SQL commands (cleaned up a
bit though - log too long):
ENTER SQLAllocEnv
HENV * 0C0FE7B8
EXIT SQLAllocEnv with return code 0 (SQL_SUCCESS)
HENV * 0x0C0FE7B8 ( 0x0f881788)
ENTER SQLAllocConnect
HENV 0F881788
HDBC * 0C0FE8C8
EXIT SQLAllocConnect with return code 0 (SQL_SUCCESS)
HENV 0F881788
HDBC * 0x0C0FE8C8 ( 0x0f881830)
ENTER SQLSetConnectOption
HDBC 0F881830
SQLINTEGER 103 <SQL_LOGIN_TIMEOUT>
SQLPOINTER 0x00000014
EXIT SQLSetConnectOption with return code 0 (SQL_SUCCESS)
HDBC 0F881830
SQLINTEGER 103 <SQL_LOGIN_TIMEOUT>
SQLPOINTER 0x00000014 (BADMEM)
ENTER SQLSetConnectAttrW
SQLHDBC 0F881830
SQLINTEGER 30002 <unknown>
SQLPOINTER [Unknown attribute 30002]
SQLINTEGER -3
EXIT SQLSetConnectAttrW with return code 0 (SQL_SUCCESS)
SQLHDBC 0F881830
SQLINTEGER 30002 <unknown>
SQLPOINTER [Unknown attribute 30002]
SQLINTEGER -3
ENTER SQLDriverConnectW
HDBC 0F881830
HWND 00000000
WCHAR * 0x4BF78088 [ -3] "******\ 0"
SWORD -3
WCHAR * 0x4BF78088
SWORD 2
SWORD * 0x00000000
UWORD 0 <SQL_DRIVER_NOPROMPT>
EXIT SQLDriverConnectW with return code 1 (SQL_SUCCESS_WITH_INFO)
HDBC 0F881830
HWND 00000000
WCHAR * 0x4BF78088 [ -3] "******\ 0"
SWORD -3
WCHAR * 0x4BF78088
SWORD 2
SWORD * 0x00000000
UWORD 0 <SQL_DRIVER_NOPROMPT>
DIAG [IM006] [Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr
failed (0)
DIAG [01000] [Microsoft][ODBC SQL Server Driver][SQL Server]Changed
database context to 'UAA'. (5701)
DIAG [01000] [Microsoft][ODBC SQL Server Driver][SQL Server]Changed
language setting to us_english. (5703)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 9 <SQL_ODBC_API_CONFORMANCE>
PTR 0x0C0FE8EC
SWORD 2
SWORD * 0x0C0FE8E4
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 9 <SQL_ODBC_API_CONFORMANCE>
PTR 0x0C0FE8EC (2)
SWORD 2
SWORD * 0x0C0FE8E4 (2)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 6 <SQL_DRIVER_NAME>
PTR 0x0C0FE7FC
SWORD 200
SWORD * 0x0C0FE8E4
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 6 <SQL_DRIVER_NAME>
PTR 0x0C0FE7FC [ 24] "SQLSRV32.DLL"
SWORD 200
SWORD * 0x0C0FE8E4 (24)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 46 <SQL_TXN_CAPABLE>
PTR 0x0C0FE7C6
SWORD 2
SWORD * 0x0C0FE398
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 46 <SQL_TXN_CAPABLE>
PTR 0x0C0FE7C6 (2)
SWORD 2
SWORD * 0x0C0FE398 (2)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 23 <SQL_CURSOR_COMMIT_BEHAVIOR>
PTR 0x0E029928
SWORD 2
SWORD * 0x0C0FE398
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 23 <SQL_CURSOR_COMMIT_BEHAVIOR>
PTR 0x0E029928 (1)
SWORD 2
SWORD * 0x0C0FE398 (2)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 24 <SQL_CURSOR_ROLLBACK_BEHAVIOR>
PTR 0x0E02992A
SWORD 2
SWORD * 0x0C0FE398
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 24 <SQL_CURSOR_ROLLBACK_BEHAVIOR>
PTR 0x0E02992A (1)
SWORD 2
SWORD * 0x0C0FE398 (2)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 1 <SQL_ACTIVE_STATEMENTS>
PTR 0x0C0FE7CC
SWORD 2
SWORD * 0x0C0FE7B2
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 1 <SQL_ACTIVE_STATEMENTS>
PTR 0x0C0FE7CC (1)
SWORD 2
SWORD * 0x0C0FE7B2 (2)
ENTER SQLSetConnectOption
HDBC 0F881830
SQLINTEGER 101 <SQL_ACCESS_MODE>
SQLPOINTER 0x00000000
EXIT SQLSetConnectOption with return code 0 (SQL_SUCCESS)
HDBC 0F881830
SQLINTEGER 101 <SQL_ACCESS_MODE>
SQLPOINTER 0x00000000
ENTER SQLAllocStmt
HDBC 0F881830
HSTMT * 0C0FE390
EXIT SQLAllocStmt with return code 0 (SQL_SUCCESS)
HDBC 0F881830
HSTMT * 0x0C0FE390 ( 0x0f8820f0)
ENTER SQLGetStmtOption
HSTMT 0F8820F0
UWORD 0
PTR 0x0C0FE33C
EXIT SQLGetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 0
PTR 0x0C0FE33C
ENTER SQLSetStmtOption
HSTMT 0F8820F0
UWORD 0 <SQL_QUERY_TIMEOUT>
SQLPOINTER 0x0000003C
EXIT SQLSetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 0 <SQL_QUERY_TIMEOUT>
SQLPOINTER 0x0000003C (BADMEM)
ENTER SQLExecDirectW
HSTMT 0F8820F0
WCHAR * 0x1B074AA0 [ -3] "SELECT Config, nValue FROM
MSysConf\ 0"
SDWORD -3
EXIT SQLExecDirectW with return code -1 (SQL_ERROR)
HSTMT 0F8820F0
WCHAR * 0x1B074AA0 [ -3] "SELECT Config, nValue FROM
MSysConf\ 0"
SDWORD -3
DIAG [S0002] [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid object
name 'MSysConf'. (208)
ENTER SQLErrorW
HENV 0F881788
HDBC 0F881830
HSTMT 0F8820F0
WCHAR * 0x0C0FE2D0 (NYI)
SDWORD * 0x0C0FE31C
WCHAR * 0x0DFD0048
SWORD 4095
SWORD * 0x0C0FE308
EXIT SQLErrorW with return code 0 (SQL_SUCCESS)
HENV 0F881788
HDBC 0F881830
HSTMT 0F8820F0
WCHAR * 0x0C0FE2D0 (NYI)
SDWORD * 0x0C0FE31C (208)
WCHAR * 0x0DFD0048 [ 78] "[Microsoft][ODBC SQL Server
Driver][SQL Server]Invalid object name 'MSysConf'."
SWORD 4095
SWORD * 0x0C0FE308 (78)
ENTER SQLErrorW
HENV 0F881788
HDBC 0F881830
HSTMT 0F8820F0
WCHAR * 0x0C0FE2D0 (NYI)
SDWORD * 0x0C0FE31C
WCHAR * 0x0DFD00FA
SWORD 4006
SWORD * 0x0C0FE308
EXIT SQLErrorW with return code 100 (SQL_NO_DATA_FOUND)
HENV 0F881788
HDBC 0F881830
HSTMT 0F8820F0
WCHAR * 0x0C0FE2D0 (NYI)
SDWORD * 0x0C0FE31C
WCHAR * 0x0DFD00FA
SWORD 4006
SWORD * 0x0C0FE308
ENTER SQLFreeStmt
HSTMT 0F8820F0
UWORD 1 <SQL_DROP>
EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 1 <SQL_DROP>
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 17 <SQL_DBMS_NAME>
PTR 0x0C0FDFC4
SWORD 200
SWORD * 0x0C0FE08E
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 17 <SQL_DBMS_NAME>
PTR 0x0C0FDFC4 [ 40] "Microsoft SQL Server"
SWORD 200
SWORD * 0x0C0FE08E (40)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 0 <SQL_ACTIVE_CONNECTIONS>
PTR 0x0C0FE0D2
SWORD 2
SWORD * 0x0C0FE0E0
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 0 <SQL_ACTIVE_CONNECTIONS>
PTR 0x0C0FE0D2 (0)
SWORD 2
SWORD * 0x0C0FE0E0 (2)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 25 <SQL_DATA_SOURCE_READ_ONLY>
PTR 0x0C0FE0B8
SWORD 20
SWORD * 0x0C0FE0E0
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 25 <SQL_DATA_SOURCE_READ_ONLY>
PTR 0x0C0FE0B8 [ 2] "N"
SWORD 20
SWORD * 0x0C0FE0E0 (2)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 46 <SQL_TXN_CAPABLE>
PTR 0x0C0FE0D0
SWORD 2
SWORD * 0x0C0FE0A0
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 46 <SQL_TXN_CAPABLE>
PTR 0x0C0FE0D0 (2)
SWORD 2
SWORD * 0x0C0FE0A0 (2)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 23 <SQL_CURSOR_COMMIT_BEHAVIOR>
PTR 0x0C0FE0CC
SWORD 2
SWORD * 0x0C0FE0A0
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 23 <SQL_CURSOR_COMMIT_BEHAVIOR>
PTR 0x0C0FE0CC (1)
SWORD 2
SWORD * 0x0C0FE0A0 (2)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 24 <SQL_CURSOR_ROLLBACK_BEHAVIOR>
PTR 0x0C0FE0CE
SWORD 2
SWORD * 0x0C0FE0A0
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 24 <SQL_CURSOR_ROLLBACK_BEHAVIOR>
PTR 0x0C0FE0CE (1)
SWORD 2
SWORD * 0x0C0FE0A0 (2)
ENTER SQLGetInfoW
HDBC 0F881830
UWORD 29 <SQL_IDENTIFIER_QUOTE_CHAR>
PTR 0x0C0FE0B8
SWORD 20
SWORD * 0x0C0FE0E0
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F881830
UWORD 29 <SQL_IDENTIFIER_QUOTE_CHAR>
PTR 0x0C0FE0B8 [ 2] """
SWORD 20
SWORD * 0x0C0FE0E0 (2)
ENTER SQLSetConnectOption
HDBC 0F881830
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000000
EXIT SQLSetConnectOption with return code 0 (SQL_SUCCESS)
HDBC 0F881830
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000000
ENTER SQLAllocStmt
HDBC 0F881830
HSTMT * 0C0FEBD8
EXIT SQLAllocStmt with return code 0 (SQL_SUCCESS)
HDBC 0F881830
HSTMT * 0x0C0FEBD8 ( 0x0f8820f0)
ENTER SQLGetStmtOption
HSTMT 0F8820F0
UWORD 0
PTR 0x0C0FE718
EXIT SQLGetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 0
PTR 0x0C0FE718
ENTER SQLSetStmtOption
HSTMT 0F8820F0
UWORD 0 <SQL_QUERY_TIMEOUT>
SQLPOINTER 0x0000003C
EXIT SQLSetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 0 <SQL_QUERY_TIMEOUT>
SQLPOINTER 0x0000003C (BADMEM)
ENTER SQLBindParameter
HSTMT 0F8820F0
UWORD 1
SWORD 1 <SQL_PARAM_INPUT>
SWORD 4 <SQL_C_LONG>
SWORD 4 <SQL_INTEGER>
SQLULEN 10
SWORD 0
PTR 0x2DFD41A4
SQLLEN 0
SQLLEN * 0x2DFD41A0
EXIT SQLBindParameter with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 1
SWORD 1 <SQL_PARAM_INPUT>
SWORD 4 <SQL_C_LONG>
SWORD 4 <SQL_INTEGER>
SQLULEN 10
SWORD 0
PTR 0x2DFD41A4
SQLLEN 0
SQLLEN * 0x2DFD41A0 (4)
ENTER SQLExecDirectW
HSTMT 0F8820F0
WCHAR * 0x2DFD61A8 [ -3] "INSERT INTO "dbo"."Events"
("EventMember") VALUES (?)\ 0"
SDWORD -3
EXIT SQLExecDirectW with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
WCHAR * 0x2DFD61A8 [ -3] "INSERT INTO "dbo"."Events"
("EventMember") VALUES (?)\ 0"
SDWORD -3
ENTER SQLFreeStmt
HSTMT 0F8820F0
UWORD 3 <SQL_RESET_PARAMS>
EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 3 <SQL_RESET_PARAMS>
ENTER SQLRowCount
HSTMT 0F8820F0
SQLLEN * 0x0C0FEBAC
EXIT SQLRowCount with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
SQLLEN * 0x0C0FEBAC (1)
ENTER SQLFreeStmt
HSTMT 0F8820F0
UWORD 1 <SQL_DROP>
EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 1 <SQL_DROP>
ENTER SQLAllocStmt
HDBC 0F881830
HSTMT * 0C0FE744
EXIT SQLAllocStmt with return code 0 (SQL_SUCCESS)
HDBC 0F881830
HSTMT * 0x0C0FE744 ( 0x0f8820f0)
ENTER SQLGetStmtOption
HSTMT 0F8820F0
UWORD 0
PTR 0x0C0FE6EC
EXIT SQLGetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 0
PTR 0x0C0FE6EC
ENTER SQLSetStmtOption
HSTMT 0F8820F0
UWORD 0 <SQL_QUERY_TIMEOUT>
SQLPOINTER 0x0000003C
EXIT SQLSetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 0 <SQL_QUERY_TIMEOUT>
SQLPOINTER 0x0000003C (BADMEM)
ENTER SQLExecDirectW
HSTMT 0F8820F0
WCHAR * 0x1B075CE0 [ -3] "SELECT @.@.IDENTITY\ 0"
SDWORD -3
EXIT SQLExecDirectW with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
WCHAR * 0x1B075CE0 [ -3] "SELECT @.@.IDENTITY\ 0"
SDWORD -3
ENTER SQLFetch
HSTMT 0F8820F0
EXIT SQLFetch with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
ENTER SQLGetData
HSTMT 0F8820F0
UWORD 1
SWORD 4 <SQL_C_LONG>
PTR <unknown type>
SQLLEN 4
SQLLEN * 0x0C0FE738
EXIT SQLGetData with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 1
SWORD 4 <SQL_C_LONG>
PTR <unknown type>
SQLLEN 4
SQLLEN * 0x0C0FE738 (4)
ENTER SQLFetch
HSTMT 0F8820F0
EXIT SQLFetch with return code 100 (SQL_NO_DATA_FOUND)
HSTMT 0F8820F0
ENTER SQLFreeStmt
HSTMT 0F8820F0
UWORD 0 <SQL_CLOSE>
EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 0 <SQL_CLOSE>
ENTER SQLFreeStmt
HSTMT 0F8820F0
UWORD 1 <SQL_DROP>
EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 1 <SQL_DROP>
ENTER SQLAllocConnect
HENV 0F881788
HDBC * 0C0FEBF0
EXIT SQLAllocConnect with return code 0 (SQL_SUCCESS)
HENV 0F881788
HDBC * 0x0C0FEBF0 ( 0x0f882af0)
ENTER SQLSetConnectOption
HDBC 0F882AF0
SQLINTEGER 103 <SQL_LOGIN_TIMEOUT>
SQLPOINTER 0x00000014
EXIT SQLSetConnectOption with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
SQLINTEGER 103 <SQL_LOGIN_TIMEOUT>
SQLPOINTER 0x00000014 (BADMEM)
ENTER SQLSetConnectAttrW
SQLHDBC 0F882AF0
SQLINTEGER 30002 <unknown>
SQLPOINTER [Unknown attribute 30002]
SQLINTEGER -3
EXIT SQLSetConnectAttrW with return code 0 (SQL_SUCCESS)
SQLHDBC 0F882AF0
SQLINTEGER 30002 <unknown>
SQLPOINTER [Unknown attribute 30002]
SQLINTEGER -3
ENTER SQLDriverConnectW
HDBC 0F882AF0
HWND 00000000
WCHAR * 0x4BF78088 [ -3] "******\ 0"
SWORD -3
WCHAR * 0x4BF78088
SWORD 2
SWORD * 0x00000000
UWORD 0 <SQL_DRIVER_NOPROMPT>
EXIT SQLDriverConnectW with return code 1 (SQL_SUCCESS_WITH_INFO)
HDBC 0F882AF0
HWND 00000000
WCHAR * 0x4BF78088 [ -3] "******\ 0"
SWORD -3
WCHAR * 0x4BF78088
SWORD 2
SWORD * 0x00000000
UWORD 0 <SQL_DRIVER_NOPROMPT>
DIAG [IM006] [Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr
failed (0)
DIAG [01000] [Microsoft][ODBC SQL Server Driver][SQL Server]Changed
database context to 'UAA'. (5701)
DIAG [01000] [Microsoft][ODBC SQL Server Driver][SQL Server]Changed
language setting to us_english. (5703)
ENTER SQLGetInfoW
HDBC 0F882AF0
UWORD 9 <SQL_ODBC_API_CONFORMANCE>
PTR 0x0C0FEC14
SWORD 2
SWORD * 0x0C0FEC0C
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
UWORD 9 <SQL_ODBC_API_CONFORMANCE>
PTR 0x0C0FEC14 (2)
SWORD 2
SWORD * 0x0C0FEC0C (2)
ENTER SQLGetInfoW
HDBC 0F882AF0
UWORD 6 <SQL_DRIVER_NAME>
PTR 0x0C0FEB24
SWORD 200
SWORD * 0x0C0FEC0C
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
UWORD 6 <SQL_DRIVER_NAME>
PTR 0x0C0FEB24 [ 24] "SQLSRV32.DLL"
SWORD 200
SWORD * 0x0C0FEC0C (24)
ENTER SQLGetInfoW
HDBC 0F882AF0
UWORD 46 <SQL_TXN_CAPABLE>
PTR 0x0C0FEAEE
SWORD 2
SWORD * 0x0C0FE6C0
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
UWORD 46 <SQL_TXN_CAPABLE>
PTR 0x0C0FEAEE (2)
SWORD 2
SWORD * 0x0C0FE6C0 (2)
ENTER SQLGetInfoW
HDBC 0F882AF0
UWORD 23 <SQL_CURSOR_COMMIT_BEHAVIOR>
PTR 0x0E029C58
SWORD 2
SWORD * 0x0C0FE6C0
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
UWORD 23 <SQL_CURSOR_COMMIT_BEHAVIOR>
PTR 0x0E029C58 (1)
SWORD 2
SWORD * 0x0C0FE6C0 (2)
ENTER SQLGetInfoW
HDBC 0F882AF0
UWORD 24 <SQL_CURSOR_ROLLBACK_BEHAVIOR>
PTR 0x0E029C5A
SWORD 2
SWORD * 0x0C0FE6C0
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
UWORD 24 <SQL_CURSOR_ROLLBACK_BEHAVIOR>
PTR 0x0E029C5A (1)
SWORD 2
SWORD * 0x0C0FE6C0 (2)
ENTER SQLGetInfoW
HDBC 0F882AF0
UWORD 1 <SQL_ACTIVE_STATEMENTS>
PTR 0x0C0FEAF4
SWORD 2
SWORD * 0x0C0FEADA
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
UWORD 1 <SQL_ACTIVE_STATEMENTS>
PTR 0x0C0FEAF4 (1)
SWORD 2
SWORD * 0x0C0FEADA (2)
ENTER SQLSetConnectOption
HDBC 0F882AF0
SQLINTEGER 101 <SQL_ACCESS_MODE>
SQLPOINTER 0x00000001
EXIT SQLSetConnectOption with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
SQLINTEGER 101 <SQL_ACCESS_MODE>
SQLPOINTER 0x00000001 (BADMEM)
ENTER SQLGetInfoW
HDBC 0F882AF0
UWORD 17 <SQL_DBMS_NAME>
PTR 0x0C0FEB58
SWORD 200
SWORD * 0x0C0FEC22
EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
UWORD 17 <SQL_DBMS_NAME>
PTR 0x0C0FEB58 [ 40] "Microsoft SQL Server"
SWORD 200
SWORD * 0x0C0FEC22 (40)
ENTER SQLSetConnectOption
HDBC 0F882AF0
SQLINTEGER 101 <SQL_ACCESS_MODE>
SQLPOINTER 0x00000001
EXIT SQLSetConnectOption with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
SQLINTEGER 101 <SQL_ACCESS_MODE>
SQLPOINTER 0x00000001 (BADMEM)
ENTER SQLSetConnectOption
HDBC 0F882AF0
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000000
EXIT SQLSetConnectOption with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000000
ENTER SQLAllocStmt
HDBC 0F882AF0
HSTMT * 320D2174
EXIT SQLAllocStmt with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
HSTMT * 0x320D2174 ( 0x0f8820f0)
ENTER SQLGetStmtOption
HSTMT 0F8820F0
UWORD 0
PTR 0x0C0FEB7C
EXIT SQLGetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 0
PTR 0x0C0FEB7C
ENTER SQLSetStmtOption
HSTMT 0F8820F0
UWORD 0 <SQL_QUERY_TIMEOUT>
SQLPOINTER 0x0000003C
EXIT SQLSetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 0 <SQL_QUERY_TIMEOUT>
SQLPOINTER 0x0000003C (BADMEM)
ENTER SQLGetStmtOption
HSTMT 0F8820F0
UWORD 3
PTR 0x0C0FEB7C
EXIT SQLGetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 3
PTR 0x0C0FEB7C
ENTER SQLSetStmtOption
HSTMT 0F8820F0
UWORD 3 <SQL_MAX_LENGTH>
SQLPOINTER 0x7FFFFFFF
EXIT SQLSetStmtOption with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 3 <SQL_MAX_LENGTH>
SQLPOINTER 0x7FFFFFFF (BADMEM)
ENTER SQLExecDirectW
HSTMT 0F8820F0
WCHAR * 0x320D2690 [ -3] "SELECT "EventKey" ,"EventMember"
,"EventDateFrom" ,"EventDateTo" ,"EventType" ,"EventName" ,"EventDetails"
,"EventAttendanceHere" ,"EventAttendanceOut" ,"EventAttendanceNight"
,"EventCost" ,"EventCostHere" ,"EventCostOut" ,"EventRevenue"
,"EventRevenueIn" ,"EventColIn" ,"EventFamilies" ,"EventContactHrs"
,"EventMeals" ,"EventOtherOrg1" ,"EventOtherOrg2" ,"EventOtherOrg3"
,"EventOtherOrg4" ,"EventOtherOrg5" ,"EventVolunteers" ,"EventVolHrs"
,"EventOutcomeMeasure" ,"EventOutcomeWeight" ,"EventOutcomeNarrative" FROM
"dbo"."Events" WHERE ("EventKey" = 591 ) \ 0"
SDWORD -3
EXIT SQLExecDirectW with return code -1 (SQL_ERROR)
HSTMT 0F8820F0
WCHAR * 0x320D2690 [ -3] "SELECT "EventKey" ,"EventMember"
,"EventDateFrom" ,"EventDateTo" ,"EventType" ,"EventName" ,"EventDetails"
,"EventAttendanceHere" ,"EventAttendanceOut" ,"EventAttendanceNight"
,"EventCost" ,"EventCostHere" ,"EventCostOut" ,"EventRevenue"
,"EventRevenueIn" ,"EventColIn" ,"EventFamilies" ,"EventContactHrs"
,"EventMeals" ,"EventOtherOrg1" ,"EventOtherOrg2" ,"EventOtherOrg3"
,"EventOtherOrg4" ,"EventOtherOrg5" ,"EventVolunteers" ,"EventVolHrs"
,"EventOutcomeMeasure" ,"EventOutcomeWeight" ,"EventOutcomeNarrative" FROM
"dbo"."Events" WHERE ("EventKey" = 591 ) \ 0"
SDWORD -3
DIAG [S1T00] [Microsoft][ODBC SQL Server Driver]Timeout expired (0)
ENTER SQLErrorW
HENV 0F881788
HDBC 0F882AF0
HSTMT 0F8820F0
WCHAR * 0x0C0FEAE8 (NYI)
SDWORD * 0x0C0FEB34
WCHAR * 0x0DFD0048
SWORD 4095
SWORD * 0x0C0FEB20
EXIT SQLErrorW with return code 0 (SQL_SUCCESS)
HENV 0F881788
HDBC 0F882AF0
HSTMT 0F8820F0
WCHAR * 0x0C0FEAE8 (NYI)
SDWORD * 0x0C0FEB34 (0)
WCHAR * 0x0DFD0048 [ 50] "[Microsoft][ODBC SQL Server
Driver]Timeout expired"
SWORD 4095
SWORD * 0x0C0FEB20 (50)
ENTER SQLErrorW
HENV 0F881788
HDBC 0F882AF0
HSTMT 0F8820F0
WCHAR * 0x0C0FEAE8 (NYI)
SDWORD * 0x0C0FEB34
WCHAR * 0x0DFD00BE
SWORD 4036
SWORD * 0x0C0FEB20
EXIT SQLErrorW with return code 100 (SQL_NO_DATA_FOUND)
HENV 0F881788
HDBC 0F882AF0
HSTMT 0F8820F0
WCHAR * 0x0C0FEAE8 (NYI)
SDWORD * 0x0C0FEB34
WCHAR * 0x0DFD00BE
SWORD 4036
SWORD * 0x0C0FEB20
ENTER SQLFreeStmt
HSTMT 0F8820F0
UWORD 1 <SQL_DROP>
EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS)
HSTMT 0F8820F0
UWORD 1 <SQL_DROP>
ENTER SQLTransact
HENV 0F881788
HDBC 0F882AF0
UWORD 1 <SQL_ROLLBACK>
EXIT SQLTransact with return code 0 (SQL_SUCCESS)
HENV 0F881788
HDBC 0F882AF0
UWORD 1 <SQL_ROLLBACK>
ENTER SQLSetConnectOption
HDBC 0F882AF0
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000001
EXIT SQLSetConnectOption with return code 0 (SQL_SUCCESS)
HDBC 0F882AF0
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000001 (BADMEM)
ENTER SQLTransact
HENV 0F881788
HDBC 0F881830
UWORD 1 <SQL_ROLLBACK>
EXIT SQLTransact with return code 0 (SQL_SUCCESS)
HENV 0F881788
HDBC 0F881830
UWORD 1 <SQL_ROLLBACK>
ENTER SQLSetConnectOption
HDBC 0F881830
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000001
EXIT SQLSetConnectOption with return code 0 (SQL_SUCCESS)
HDBC 0F881830
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000001 (BADMEM)
sql
Monday, March 26, 2012
MDAC 2.8
Recently I run Windows Update on my Windows 2000 Server with MS SQL Server
on the same machine. It update the MDAC to 2.8 version.
It broke my store procedure which work fine with MDAC 2.6 sp2.
With MDAC 2.6 it only take 1 minutes to run; however, with MDAC 2.8 it take
all day and lock up the database. Not only that, the CPU utilization is 100%
the whole day.
Please help ! Thank you in advance.
Here is the sql statement:
Create Procedure dbo.spSbcAudit_AddressMismatch
As
Select
A.ListedPhone As SbcPhone,
A.ListingInstructions As SbcListingInstructions,
A.OmitCode As SbcOmitCode,
A.LastName As SbcLastName,
A.FirstName As SbcFirstName,
A.TitleOfAddress As SbcTitleOfAddress,
A.TitleOfLineage As SbcTitleOfLineage,
A.Number As SbcNumber,
A.Directional As SbcDirectional,
A.StreetName As SbcStreetName,
A.Locality As SbcCity,
A.ListType As SbcListType,
A.RecordType As SbcRecordType,
A.InputFileName As SbcInputFileName,
Ltrim(Str(Month(A.DateFromClec)))+'/'+Ltrim(Str(Day(A.DateFromClec)))+'/'+Lt
rim(Str(Year(A.DateFromClec))) As SbcDateFromClec,
-- Icoms fields
B.AccountNumber As IcomsAccountNumber,
B.InstallDate As IcomsInstallDate,
B.TelephoneNumber As IcomsPhone,
B.TelephoneStatus As IcomsListingStatus,
B.RecordType As IcomsRecordType,
B.ListType As IcomsListType,
B.ListingIdCode As IcomsListingIdCode,
B.ListingInstructions As IcomsListingInstructions,
B.LastName As IcomsLastName,
B.FirstName As IcomsFirstName,
B.TitleOfLineage As IcomsTitleOfLineage,
B.SpecialFilingName As IcomsSpecialFilingName,
B.Title As IcomsTitle,
B.Apartment As IcomsApartmentNumber,
B.Directional As IcomsDirectional,
B.AddressNumber As IcomsNumber,
B.StreetName As IcomsStreetName,
B.City As IcomsCity,
Substring(B.ZipCode,1,5) As IcomsZipCode,
B.ClassOfService As IcomsClassOfService
Into dbo.tblSbcAuditResult_AddressMismatch
From dbo.tblPde7661 A
Inner Join dbo.tblIcomsData B On A.ListedPhone = B.TelephoneNumber
Where
A.ListType = B.ListType And
(Upper(Rtrim(Ltrim(A.StreetName))) <> Upper(Rtrim(Ltrim(B.StreetName))))
And
B.TelephoneStatus In (
Select vchListingStatus
From dbo.tblAuditListingStatus
Where bitIsInclude = 1) And
B.RateCenterId <> 9 And
-- caption only, Icoms does not support this
A.ListedPhone Not In (Select ListedPhone From dbo.tblPde7661 Where
Reference='Customer Service') And
-- Install date must be before the SBC download date
B.InstallDate <= (select intInstallDate from tblAuditInstallDate)
Order By
B.ClassOfService,
B.ListType,
A.ListingInstructions,
A.OmitCode,
B.ListingInstructionswell, latest mdac 2.8 includes security fixes and perheps
some not needed enhancements. You can go to Microsoft site
and search for mdac 2.6 service pack 2 and download it
from there. Or you can use following link to download it:
http://www.microsoft.com/downloads/details.aspx?
familyid=8e5f816c-4918-4250-b8bd-
3794582c9089&languageid=f49e8428-7071-4979-8a67-
3cffcb0c2524&displaylang=en
hth.
>--Original Message--
>Hi,
>Recently I run Windows Update on my Windows 2000 Server
with MS SQL Server
>on the same machine. It update the MDAC to 2.8 version.
>It broke my store procedure which work fine with MDAC 2.6
sp2.
>With MDAC 2.6 it only take 1 minutes to run; however,
with MDAC 2.8 it take
>all day and lock up the database. Not only that, the CPU
utilization is 100%
>the whole day.
>Please help ! Thank you in advance.
>Here is the sql statement:
>Create Procedure dbo.spSbcAudit_AddressMismatch
>As
>Select
> A.ListedPhone As SbcPhone,
> A.ListingInstructions As SbcListingInstructions,
> A.OmitCode As SbcOmitCode,
> A.LastName As SbcLastName,
> A.FirstName As SbcFirstName,
> A.TitleOfAddress As SbcTitleOfAddress,
> A.TitleOfLineage As SbcTitleOfLineage,
> A.Number As SbcNumber,
> A.Directional As SbcDirectional,
> A.StreetName As SbcStreetName,
> A.Locality As SbcCity,
> A.ListType As SbcListType,
> A.RecordType As SbcRecordType,
> A.InputFileName As SbcInputFileName,
>Ltrim(Str(Month(A.DateFromClec)))+'/'+Ltrim(Str(Day
(A.DateFromClec)))+'/'+Lt
>rim(Str(Year(A.DateFromClec))) As SbcDateFromClec,
> -- Icoms fields
> B.AccountNumber As IcomsAccountNumber,
> B.InstallDate As IcomsInstallDate,
> B.TelephoneNumber As IcomsPhone,
> B.TelephoneStatus As IcomsListingStatus,
> B.RecordType As IcomsRecordType,
> B.ListType As IcomsListType,
> B.ListingIdCode As IcomsListingIdCode,
> B.ListingInstructions As IcomsListingInstructions,
> B.LastName As IcomsLastName,
> B.FirstName As IcomsFirstName,
> B.TitleOfLineage As IcomsTitleOfLineage,
> B.SpecialFilingName As IcomsSpecialFilingName,
> B.Title As IcomsTitle,
> B.Apartment As IcomsApartmentNumber,
> B.Directional As IcomsDirectional,
> B.AddressNumber As IcomsNumber,
> B.StreetName As IcomsStreetName,
> B.City As IcomsCity,
> Substring(B.ZipCode,1,5) As IcomsZipCode,
> B.ClassOfService As IcomsClassOfService
>Into dbo.tblSbcAuditResult_AddressMismatch
>From dbo.tblPde7661 A
>Inner Join dbo.tblIcomsData B On A.ListedPhone =B.TelephoneNumber
>Where
> A.ListType = B.ListType And
> (Upper(Rtrim(Ltrim(A.StreetName))) <> Upper(Rtrim(Ltrim
(B.StreetName))))
>And
> B.TelephoneStatus In (
> Select vchListingStatus
> From dbo.tblAuditListingStatus
> Where bitIsInclude = 1) And
> B.RateCenterId <> 9 And
> -- caption only, Icoms does not support this
> A.ListedPhone Not In (Select ListedPhone From
dbo.tblPde7661 Where
>Reference='Customer Service') And
> -- Install date must be before the SBC download date
> B.InstallDate <= (select intInstallDate from
tblAuditInstallDate)
>Order By
> B.ClassOfService,
> B.ListType,
> A.ListingInstructions,
> A.OmitCode,
> B.ListingInstructions
>
>.
>
MDAC 2.1 / MDAC 2.53
SQL Server 7.0 (sp4)
Production machine : SQL Server 7.0 (sp4) Entreprise Edition on NT
--> MDAC 2.1,2 sp2
Test machine : SQL Server 7.0 (sp4) Standard Edition on Windows
2000 --> MDAC 2.53
I would like my Test machine be like my Production Machine.
In others words, I would like to change from MDAC 2.53 to MDAC 2.1.2 sp2 on
my Test machine.
Is it possible ? If yes, how can I do that ? (with Mdac_typ.exe ?)
Thank you
DannyDanny,
MDAC is a system component on Windows 2000 and XP and 2003. You cannot
removed it and I am sure that you cannot downgrade it from 2.5. MDAC 2.5 has
problems with DTS when connecting to MDAC 2.1. So you are better off
upgrading your server level to be the same as the workstation.
Chris Wood
Alberta Department of Energy
CANADA
"Danny Presse" <dpresse@.congresmtl.com> wrote in message
news:uwczaaWTDHA.2280@.TK2MSFTNGP12.phx.gbl...
> HI,
> SQL Server 7.0 (sp4)
> Production machine : SQL Server 7.0 (sp4) Entreprise Edition on NT
> --> MDAC 2.1,2 sp2
> Test machine : SQL Server 7.0 (sp4) Standard Edition on Windows
> 2000 --> MDAC 2.53
> I would like my Test machine be like my Production Machine.
> In others words, I would like to change from MDAC 2.53 to MDAC 2.1.2 sp2
on
> my Test machine.
> Is it possible ? If yes, how can I do that ? (with Mdac_typ.exe ?)
> Thank you
> Danny
>
Friday, March 9, 2012
Maximum Memory Settings for Analysis 2005
Dear Anyone,
We have a live machine with an Analysis Services 2005 (32 bit) installed. The machine has been running for a couple of months. They recently upgraded to 8GB (formerly 4GB). It seems that the 32 bit version of MSAS 2005 does not support 8GB or memory. Can anyone please suggest memory settings to maximize the use of the 8GB of memory in the server? Or does anyone know of the maximum memory setup that we can give Analysis Services 2005?
Thanks,
Joseph
AS2K5 is not AWE-aware. As such, its capabilities are based on the underlying OS' virtural address space limitations. The general limits are (32-bit):
2GB -- with an OS that doesn't support the /3GB switch in boot.ini
3GB -- with /3GB enabled in the OS
4GB -- running on an x64 system under WOW
Otherwise, to go more, you need to run in native 64-bit using either x64 or ia64 hardware.
_-_-_ Dave