MDAC 2.5 SDK - ADO


 

Version Property Example (VJ++)

See Also

This example uses the Version property of a Connection object to display the current ADO version. It also uses several dynamic properties to show:

import com.ms.wfc.data.*;
import java.io.*;

public class VersionX
{
   // The main entry point of the application.
   public static void main (String[] args)
   {
      VersionX();
      System.exit(0);
   }
   // VersionX Function
   static void VersionX()
   {
      // Define ADO Objects.
      Connection cnn1 = null;

      // Declarations.
      String strCnn = "Driver={SQL Server};Server=srv;" +
                  "User Id=sa; Password=;database=Pubs;";
      String strVersionInfo;
      BufferedReader in = new 
         BufferedReader(new InputStreamReader(System.in));
      try
      {
         // Open connection.
         cnn1 = new Connection();
         cnn1.open(strCnn);

         strVersionInfo = "\tADO Version:\t\t" + 
            cnn1.getVersion().toString()+"\n"+
            "\tDBMS Name:\t\t" + 
            cnn1.getProperties().getItem("DBMS Name").getString() +"\n"+
            "\tDBMS Version:\t\t"+ 
            cnn1.getProperties().getItem("DBMS Version").getString() + 
            "\n" + "\tOLE DB Version:\t\t" + 
            cnn1.getProperties().getItem("OLE DB Version").getString()+ 
            "\n" + "\tProvider Name:\t\t" + 
            cnn1.getProperties().getItem("Provider Name").getString() + 
            "\n" + "\tProvider Version:\t" + 
            cnn1.getProperties().getItem("Provider Version").
            getString() + "\n" + "\tDriver Name:\t\t" + 
            cnn1.getProperties().getItem("Driver Name").getString() + 
            "\n" + "\tDriver Version:\t\t" + 
            cnn1.getProperties().getItem("Driver Version").getString()+ 
            "\n" + "\tDriver ODBC Version:\t" + 
            cnn1.getProperties().getItem(
            "Driver ODBC Version").getString()+ "\n";
         System.out.println("\n\n" + strVersionInfo);

         // Cleanup Objects before exit.
         cnn1.close();
         System.out.println("Press <Enter> to continue..");
         in.readLine();
      }
      // System read requires this catch.
      catch(java.io.IOException je)
      {
         PrintIOError(je);
      }
      catch(AdoException ae)
      {
         // Notify the user of any errors that result from ADO.

         // As passing a recordset, check for null pointer first.
         if(cnn1!= null)
         {
            PrintProviderError(cnn1);
         }
         else
         {
            System.out.println("Exception: " + ae.getMessage());
         }
      }

   }
   // PrintProviderError Function
   static void PrintProviderError(Connection cnn1)
   {
      // Print Provider Errors from Connection Object.
      // ErrItem is an item object in the Connection’s Errors Collection.
      com.ms.wfc.data.Error               ErrItem = null;
      long                                 nCount = 0;
      int                                       i = 0;

      nCount = cnn1.getErrors().getCount();

      // If there are any errors in the collection, print them.
      if ( nCount > 0)
      {
         // Collection ranges from 0 to nCount-1.
         for ( i=0;i<nCount; i++)
         {
            ErrItem = cnn1.getErrors().getItem(i);
            System.out.println("\t Error Number: " + ErrItem.getNumber() 
               + "\t" + ErrItem.getDescription());
         }
      }
   }
   // PrintIOError Function
   static void PrintIOError(java.io.IOException je)
   {
      System.out.println("Error: \n");
      System.out.println("\t Source: " + je.getClass() + "\n");
      System.out.println("\t Description: "+ je.getMessage() + "\n");
   }
}