ASP.Net/ADO.net Database/Catch Exception — различия между версиями

Материал из .Net Framework эксперт
Перейти к: навигация, поиск
м (1 версия)
 
м (1 версия)
 
(нет различий)

Текущая версия на 14:50, 26 мая 2010

Try Catch Finally for reading data from SQL server (VB.net)

   <source lang="csharp">

<%@ Page Language="VB" %> <%@ Import Namespace="System.Data" %> <%@ Import Namespace="System.Data.SqlClient" %> <html>

  <title>Try-Catch-Finally Example</title>
  <head>
     <script runat="server">
        Sub Page_Load()
    "    Dim ConnStr As String = "Data Source=(local)\NetSDK;" & _
     "      "Initial Catalog=Pubs;Trusted_Connection=True;"
           Dim ConnStr As String = "Data Source=whsql-v08.prod.mesa1.secureserver.net;Initial Catalog=DB_49907;User ID=nfexuser;Password="password";"
           Dim SQL As String = "SELECT ID, FirstName FROM Employee " & _ 
              "WHERE ID IS NOT NULL"
           Dim PubsConn As New SqlConnection(ConnStr)
           Dim TitlesCmd As New SqlCommand(SQL, PubsConn)
           Dim Titles As SqlDataReader
           Try
              PubsConn.Open()
              Titles = TitlesCmd.ExecuteReader()
Output.Text = "" While Titles.Read() Output.Text &= "" Output.Text &= "" " Output.Text &= "" Output.Text &= "" End While Output.Text &= "
" & Titles.GetString(0) & "$" & _ " Format(Titles.GetDecimal(1), "##0.00") & "
"
           Catch sqlEx As SqlException
              Response.Write("A SqlException has occurred.")
           Catch ex As Exception
              Response.Write("An Exception has occurred.")
           Finally
              If Not Titles Is Nothing Then
                 If Not Titles.IsClosed Then
                    Titles.Close()
                 End If
              End If
              If PubsConn.State = ConnectionState.Open Then
                 PubsConn.Close()
              End If
           End Try
           Response.Write("
The current connection state is: " & _ PubsConn.State.ToString() & ".") End Sub </script> </head>

<body>

SqlDataReader Example

  <asp:label id="Output" runat="server"/>

</body> </html>

      </source>
   
  


Writing data from the connection with try and catch (C#)

   <source lang="csharp">

<%@ Import Namespace="System.Data" %> <%@ Import Namespace="System.Data.OleDb" %> <script Language="c#" runat="server">

 void Page_Load()
 {
   string strConnection = "Provider=Microsoft.Jet.OleDb.4.0;";

// strConnection += @"Data Source=C:\Northwind.mdb";

   strConnection += @"Data Source="+MapPath("EmployeeDatabase.mdb");
   data_src.Text = strConnection;
   string strSQL = "SELECT FirstName, LastName FROM Employee;";
   DataSet objDataSet = new DataSet();
   OleDbConnection objConnection = new OleDbConnection(strConnection);
   OleDbDataAdapter objAdapter = new OleDbDataAdapter(strSQL, objConnection);
   try
   {
     objAdapter.Fill(objDataSet, "Employees");
     DataView objDataView = new DataView(objDataSet.Tables["Employees"]);
     dgNameList.DataSource = objDataView;
     dgNameList.DataBind();
   }
   catch (OleDbException objError)
   {
     if (objError.Message.Substring(0,21) == "Login failed for user")
     {
       divErrorReport.InnerHtml = "Problem with Log-in";
     }
     else if (objError.Message.Substring(0,19) == "Could not find file")
     { 
       divErrorReport.InnerHtml = 
                         "We could not find the MDB file that you asked for"; 
     }
     else
     {
       divErrorReport.InnerHtml =  "
message - " + objError.Message; divErrorReport.InnerHtml += "
source - " + objError.Source; } } }

</script> <html>

 <body>

Writing data from the connection <asp:label id="data_src" runat="server"/> to the DataGrid control with error checking.

 <asp:datagrid id="dgNameList" runat="server" />
</body>

</html>

      </source>
   
  

<A href="http://www.nfex.ru/Code/ASPDownload/EmployeeDatabase.zip">EmployeeDatabase.zip( 10 k)</a>