Ik heb een MS Access database omgezet naar een Oracle database. Dit ging zonder problemen. Op dit moment ben ik mijn ASP webapplicatie voor de communicatie met Oracle aan 't herschrijven en kom ik een aantal zeer vervelende dingen tegen.
a) Als ik een selectie van getallen doe, dan worden deze getallen als tekst beschouwd, terwijl ik ze in de tabel als NUMBER(5,2) heb gedefinieerd.
Zie het volgende voorbeeld:
In bovenstaand voorbeeld krijg ik een foutmelding in de laatste regel. Ik moet nu alle waardes in de recordset in ASP definieren als getal dmv CDbl(). Is hier geen eenvoudige oplossing voor.
b) Als ik in ASP een complexe query uitvoer, krijg ik in sommige gevallen een lege recordset terug. Als ik dezelfde query echter in SQL*Pluws uitvoer dan worden wel records gevonden. De ASP-connectie wordt als volgt gemaakt.
Hoe kan ik dit zeer vervelende probleem verhelpen.
a) Als ik een selectie van getallen doe, dan worden deze getallen als tekst beschouwd, terwijl ik ze in de tabel als NUMBER(5,2) heb gedefinieerd.
Zie het volgende voorbeeld:
ASP:
1
2
3
4
5
| dim rsTEST, strSQL, intTotaal strSQL = "SELECT getal1, getal2 from tabelnaam where rownum = 1 order by getal1" set rsTEST = DBConn.Execute(strSQL) intTotaal = rsTEST("Getal1") intTotaal = intTotaal + rsTest("Getal2") |
In bovenstaand voorbeeld krijg ik een foutmelding in de laatste regel. Ik moet nu alle waardes in de recordset in ASP definieren als getal dmv CDbl(). Is hier geen eenvoudige oplossing voor.
b) Als ik in ASP een complexe query uitvoer, krijg ik in sommige gevallen een lege recordset terug. Als ik dezelfde query echter in SQL*Pluws uitvoer dan worden wel records gevonden. De ASP-connectie wordt als volgt gemaakt.
ASP:
1
2
3
4
5
6
7
8
9
10
11
12
13
| dim ConnStr, DBConn ConnStr = "PROVIDER=MSDAORA;DATA SOURCE=***;USER ID=***;PASSWORD=***;" SET DBConn = Server.CreateObject("ADODB.Connection") DBConn.Open ConnStr dim objTEST, strSQL strSQL = "SELECT * FROM Tabelnaam" set objTEST = DBConn.Execute(strSQL) objTEST.Close set objTEST = nothing DBConn.Close set DBConn = nothing |
Hoe kan ik dit zeer vervelende probleem verhelpen.