Toon posts:

[asp.net] NO DATA error

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben bezig met een edit functie voor reeds bestaande menu items, maar krijg steeds een NO DATA error als een veld in de resultset van de query leeg is.

Dit is mijn code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
'query de menu info
        Dim query_menu_info as string =  "select * from menu where menu_id = 
"& menu_item_id.Text      
        Dim reader_menu_info as OdbcDataReader
        Dim obj_menu_info as neW OdbcCommand ( query_menu_info, objConn)
        
        objConn.Open()
            reader_menu_info = obj_menu_info.ExecuteReader()
            while reader_menu_info.read()
                response.write( reader_menu_info("menu_id") &"<BR>" )
                try 
                    response.write( reader_menu_info("menu_omschrijving") &"<BR>" ) 
                catch 
                end try
                response.write( reader_menu_info("menu_parent") &"<BR>")
                response.write( reader_menu_info("menu_sortering") &"<BR>" )
                response.write( reader_menu_info("menu_soort") &"<BR>" )
                response.write( reader_menu_info("taal_id") &"<BR>" )
            end while
        objConn.Close()
        
    end sub


Het veld menu_omschrijving is optioneel en is dus in 99% van de gevallen leeg.

De error die ik krijg begint echter te zeuren bij het veld wat erna komt (ongeacht welke waarde ik ook opvraag)

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
--------------------------------------------------------------------------------

NO_DATA - no error information available
Description: An unhandled exception occurred during the execution of the current
 web request. Please review the stack trace for more information about the error
and where it originated in the code. 

Exception Details: Microsoft.Data.Odbc.OdbcException: NO_DATA - no error
information available

Source Error: 


Line 110:               catch 
Line 111:               end try
Line 112:               response.write( reader_menu_info("menu_parent") &"<BR>")
Line 113:               response.write( reader_menu_info("menu_sortering") 
&"<BR>" )
Line 114:               response.write( reader_menu_info("menu_soort") &"<BR>" )

hij geeft nu dus de error op line 112.

Als ik de query uitvoer in mysql-front wordt hij gewoon goed uitgevoerd en krijg ik
een leeg veld bij het menu_omschrijving veld. (heb de query gecopy paste uit een
response.write dus de query is correct)

Wat doe ik in mijn almachtige ontwetendheid verkeerd? Ik zit echt al ruim 1.5 uur te klooihannesen maar kom er niet uit :'(

[ Voor 27% gewijzigd door Verwijderd op 12-12-2002 15:29 ]


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

Ik zal maar niets zeggen over de ranzige toepassing van jouw try-catch-end try, constructie, maar goed...

Probeer eerst eens: reader_menu_info(0) eruit te gooien... Doet deze wel wat?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Een if om de response.write, waarin je checked of het veld leeg is, en in dat geval niet afdrukken misschien? ;)

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

offtopic:
MrX verschijnt ook altijd in de ASP.Net topics.. ;)


Volgens mij kan deze quote ook wel een oplossing zijn..
The code is basically correct, just in the wrong order, the connection should have been opened first b4 i did the odbccommand
And no it isn't ADO as far as i know, this is an addon to .NET. "ODBC Data Provider for .NET"
http://www.devcity.net/forums/topic.asp?tid=5910

[ Voor 6% gewijzigd door gorgi_19 op 12-12-2002 15:37 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Topicstarter
de code is prima en de try & catch idd ranzig :)
Hij print alles op het scherm zolang het menu_omschrijving veld maar niet leeg is.
die try & catch heb ik btw gemaakt omdat het heele zooitje altijd op zijn mik gaat als hij leeg is ongeacht welke code er ook volgt om de menu_omschrijving te gaan behandelen

heb al wat gevonden, het is gewoon een al bekende bug als ik dit topic mag geloven:
http://www.dotnet247.com/247reference/msgs/9/45207.aspx

:'(

[ Voor 44% gewijzigd door Verwijderd op 12-12-2002 15:47 ]


Verwijderd

/me leest

Ai, da's slordig, die ODBC 'verspreking' in de MySQL drivers ... heeeel vreemd. En daar kan je volgens mij in code niet omheen. Het lijkt er wel op dat het allemaal goed zou moeten gaan als er Null in de kolom staat, ipv een lege string. Probeer dat eens. Als dat werkt, zul je moeten zorgen dat er nooit een lege string in een kolom kan komen te staan.

Verwijderd

Topicstarter
Inderdaad erg naar, ik dacht al dat het aan mijn code lag :(

Ik heb nu in alle lege velden [EMPTY] gezet en met een if ;) afgevangen, het werkt prima nu.
Hopen dat ze er snel wat aan doen, want dit wel omslachtig zo

Verwijderd

Topicstarter
Just in case...
Als iemand nog steeds met dit probleem kampt, deze patch downloaden en installeren. :)
Pagina: 1