Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


OdbcException.Errors(0)

Postades av 2009-09-21 14:53:06 - Yaser Mosavi, i forum vb.net, Tråden har 1 Kommentarer och lästs av 1059 personer

Objektet OdbcException har en matris med erorrs, OdbcException.Errors().

Men varför en matris? Kan adaptern generera flera error samtidigt? OdbcException blir väll disposad efter innevarande Catch fas?

Här bekräftar dom att det är en matris:

http://msdn.microsoft.com/en-us/library/system.data.odbc.odbcerrorcollection.aspx

Dom till och med bläddrar runt i den och visar alla olika meddelandena.


Så när får man flera meddelanden? Jag kan tänka mig att man bygger ett program och själv genererar ett OdbcException som man fyller med en bunt med error, eller att man i en catchblock tar emot en OdbcException.Errors(0), svarar med att försöka göra en ny SQL sats, fångar ett nytt fel där och stoppar in även det felet i den första felsamlingen... lol, men vad är poängen med det?

Kort sagt, varför har vi "oException.Errors(0).SQLState" och inte enbart "oException.SQLState" ?


Exempelkod:

oConnection = New OdbcConnection(sDSN)
oCommand = New OdbcCommand("", oConnection)



Try
oCommand.CommandText = "SELECT * FROM TableName WHERE KolumnName = 1"
oReader = oCommand.ExecuteReader

Catch ex As OdbcException
If ex.Errors(0).SQLState = "42S02" Then
'Tabellen finns inte
bTableExists = False
End If
End Try





Svara

Sv: OdbcException.Errors(0)

Postades av 2009-09-21 17:32:12 - Ola Lindfeldt

Det är väl egentligen bara de på MS som har skrivit OdbcException som kan svara på detta, men om jag får gissa lite.. Det normala i .NET är ju att man har ett Exception, som kan ha ett InnerException, som också kan ha ett InnerException osv (och att det mest korrekta sättet att skriva ut alla fel är ju då att loopa igenom den nästlade Exception-listan - vilket inte så många utvecklare har koll på iofs.. :-)

När det gäller ODBC så kommer ju det från underliggande DB-drivers som oftast inte alls har någonting med .Net att göra.. Då är det väl typ en Feature att dessa komponenter kan presentera en lista på flera st fel som har inträffat i kontakt med databasen.
Det är väl inte så ovanligt i SQL att man skickar en batch med SQL-kommandon, då kan jag tänka mig att Errors-listan kan ge ett fel per SQL-instruktion som skickats över till DB. Om detta antagande stämmer, så verkar ju den här konstruktionen klart användbar :)


Svara

Nyligen

  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 764
27 959
271 761
589
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies