VB.Net/Database ADO.net/ADO.net Exception

Материал из VB Эксперт
Перейти к: навигация, поиск

Ado.Net Exception: access non-exist column exception

<source lang="vbnet"> Imports System Imports System.Data Imports System.Data.SqlClient

public class MainClass

  Shared Sub Main()
     Dim SqlConnection1 As New SqlConnection("server=(local)\SQLEXPRESS;" & _
         "integrated security=sspi;database=MyDatabase")
     Dim thisCommand As SqlCommand = SqlConnection1.CreateCommand()
     thisCommand.rumandText = "Select * from Employee"
     Try
        " Open connection
        SqlConnection1.Open()
        " Run command and get data as a reader
        Dim thisReader As SqlDataReader = thisCommand.ExecuteReader()
        " Access non-existent column
        Dim str As String = thisReader.GetValue(20).ToString()
        " Close data reader
        thisReader.Close()
     Catch ex As System.InvalidOperationException
        Dim str As String
        str = "Source : " & ex.Source
        str &= ControlChars.NewLine
        str &= "Exception Message : " & ex.Message
        str &= ControlChars.NewLine
        str &= "Stack Trace : " & ex.StackTrace
        Console.WriteLine("Specific Exception:" & str)
     Catch ex As System.Data.SqlClient.SqlException
        Dim str As String
        str = "Source : " & ex.Source
        str &= ControlChars.NewLine
        str &= "Exception Message : " & ex.Message
        Console.WriteLine("Database Exception" & str)
     Catch ex As System.Exception
        Dim str As String
        str = "Source : " & ex.Source
        str &= ControlChars.NewLine
        str &= "Exception Message : " & ex.Message
        Console.WriteLine("Generic Exception" & str )
     Finally
        If SqlConnection1.State = ConnectionState.Open Then
           Console.WriteLine("Finally block closing the connection")
           SqlConnection1.Close()
        End If
     End Try
  End Sub

End Class

      </source>


Ado.Net Exception: No Store Procedure Exception

<source lang="vbnet"> Imports System Imports System.Data Imports System.Data.SqlClient

public class MainClass

  Shared Sub Main()
     Dim SqlConnection1 As New SqlConnection("server=(local)\SQLEXPRESS;" & _
         "integrated security=sspi;database=MyDatabase")
     Dim thisCommand As SqlCommand = SqlConnection1.CreateCommand()
     thisCommand.rumandType = CommandType.StoredProcedure
     thisCommand.rumandText = "SelectAllEmployees"
     Try
        SqlConnection1.Open()
        Dim thisReader As SqlDataReader = thisCommand.ExecuteReader()
        thisReader.Close()
     Catch ex As System.Data.SqlClient.SqlException
        Dim str As String
        str = "Source : " & ex.Source
        str &= ControlChars.NewLine
        str &= "Exception Message : " & ex.Message
        Console.WriteLine("Database Exception" & str)
     Catch ex As System.Exception
        Dim str As String
        str = "Source : " & ex.Source
        str &= ControlChars.NewLine
        str &= "Exception Message : " & ex.Message
        Console.WriteLine("Non-Database Exception " & str)
     Finally
        If SqlConnection1.State = ConnectionState.Open Then
           Console.WriteLine("Finally block closing the connection")
           SqlConnection1.Close()
        End If
     End Try
  End Sub

End Class

      </source>


Ado.Net Exception: Wrong SQL command exception

<source lang="vbnet"> Imports System Imports System.Data Imports System.Data.SqlClient

public class MainClass

  Shared Sub Main()
     Dim SqlConnection1 As New SqlConnection("server=(local)\SQLEXPRESS;" & _
         "integrated security=sspi;database=MyDatabase")
     Dim thisCommand As SqlCommand = SqlConnection1.CreateCommand()
     thisCommand.rumandText = "Select nonExistColumn from Employee"
     Try
        " Open connection
        SqlConnection1.Open()
        " Run stored procedure
        thisCommand.ExecuteNonQuery()
     Catch ex As System.Data.SqlClient.SqlException
        Dim str As String
        str = "Source : " & ex.Source & ControlChars.NewLine
        str &= "Number : " & ex.Number & ControlChars.NewLine
        str &= "Message : " & ex.Message & ControlChars.NewLine
        str &= "Class : " & ex.Class.ToString() & ControlChars.NewLine
        str &= "Procedure : " & ex.Procedure & ControlChars.NewLine
        str &= "Line number : " & ex.LineNumber.ToString() & ControlChars.NewLine
        str &= "Server : " & ex.Server
        Console.WriteLine("Database Exception" & str)
     Catch ex As System.Exception
        Dim str As String
        str = "Source : " & ex.Source
        str &= ControlChars.NewLine
        str &= "Exception Message : " & ex.Message
        Console.WriteLine("General Exception" & str)
     Finally
        If SqlConnection1.State = ConnectionState.Open Then
           Console.WriteLine("Finally block closing the connection")
           SqlConnection1.Close()
        End If
     End Try
  End Sub

End Class

      </source>