Avatar billede kimlarsen1978 Nybegynder
05. januar 2007 - 18:13 Der er 9 kommentarer og
1 løsning

Microsoft OLE DB 80004005 Program type out of range

Jeg bruger MySQL.

Mit SQL:
strSQL = "SELECT SUM(LinkHits) AS intSumSQL FROM links"
Set RS = Conn.Execute(strSQL)
intSum = RS("intSumSQL")
set rs = nothing

Det har kørt i flere år, men nu giver linien

intSum = RS("intSumSQL")

pludselig denne fejl:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Driver Manager] Program type out of range


Jeg har kørt SQL'en direkte på MySQL serveren og der får jeg fint 215015 ud i intSumSQL.
Hvad sker der og hvorfor?
Avatar billede kimlarsen1978 Nybegynder
05. januar 2007 - 18:59 #1
Hmm.. hvis jeg indsætter

strSQL = "SELECT SUM(LinkHits) AS intSumSQL FROM links"
Set rs = Conn.Execute(strSQL)
if not rs.EOF then
  intSum = cInt(rs("intSumSQL"))
else
  intSum = 215025
end if

så får jeg kørst "else" delen... Det vil sige at rs er EOF - hvad sker der mon?
Avatar billede madeindk Nybegynder
05. januar 2007 - 23:44 #2
Cint understøtter ikke så høje tal - du skal skrive Int(rs("intSumSQL")) udenom :-)
Avatar billede kimlarsen1978 Nybegynder
06. januar 2007 - 02:59 #3
Sorry min fejl, det var en test jeg lavede for at se om det hjalp, men det gjorde det ikke:

intSum = Int(rs("intSumSQL")) giver
error '80020009'

intSum = rs("intSumSQL") giver
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Driver Manager] Program type out of range
Avatar billede madeindk Nybegynder
06. januar 2007 - 04:34 #4
strSQL = "SELECT SUM(LinkHits) AS intSumSQL FROM links"
Set rs = Conn.Execute(strSQL)

If not rs.eof Then
  Response.Write(Int(rs("intSumSQL"))
End If
Avatar billede kimlarsen1978 Nybegynder
06. januar 2007 - 12:50 #5
Har jeg også prøvet, men den er EOF, se også 05/01-2007 18:59:07 her står også at det er ELSE delen der kører...

MEN

Jeg har lige fundet ud af at MySQL serveren er opdateret til MySQL5, kan det have noget at sige?
Avatar billede kimlarsen1978 Nybegynder
11. januar 2007 - 19:10 #6
Løst, der skulle en anden OPTION på min connect streng
Avatar billede mvk Nybegynder
13. januar 2007 - 17:40 #7
hvad blev løsningen. hvordan ser din connection ud ?
Avatar billede kimlarsen1978 Nybegynder
13. januar 2007 - 17:47 #8
Set Conn = Server.Createobject("ADODB.Connection")
strDSN = "DRIVER={MySQL}; SERVER=XXXXX; DATABASE=YYYYYYY; UID=QQQQQQQQ; PWD=ZZZZZZZZ;OPTION=16386"
Conn.Open strDSN
Avatar billede emkay Nybegynder
15. januar 2007 - 15:16 #9
Jeg har samme problem nu, men der hjælper det ikke at udskifte Option-strengen til det du skriver. Nu står den til OPTION=3. Hvor kan man finde info om hvad det betyder?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester