ACC: Sample Function to Provide Password for Attached Tables (109829)



The information in this article applies to:

  • Microsoft Access 2.0
  • Microsoft Access for Windows 95 7.0
  • Microsoft Access 97

This article was previously published under Q109829

SUMMARY

Advanced: Requires expert coding, interoperability, and multiuser skills.

When you first link (attach) an external table using an ODBC driver, you have the option to store the User ID and password for the table locally. If you do not store the ID and password locally, you will be prompted later for the ID and password when you open the table (either manually or programmatically).

This article describes a sample function that you can use in Microsoft Access 97, 7.0, 2.0 and 1.x to eliminate the login prompt when you open the table.

This article assumes that you are familiar with Visual Basic for Applications and with creating Microsoft Access applications using the programming tools provided with Microsoft Access. For more information about Visual Basic for Applications, please refer to your version of the "Building Applications with Microsoft Access" manual.

NOTE: Visual Basic for Applications is called Access Basic in Microsoft Access versions 1.x and 2.0. For more information about Access Basic, please refer to the "Introduction to Programming" manual in Microsoft Access version 1.x or the "Building Applications" manual in Microsoft Access version 2.0.

MORE INFORMATION

The following steps demonstrate how to eliminate the login prompt when you open a linked table:
  1. You must first provide your login information. To do this, use one of the four standard ODBC dialog boxes, or create your own custom login box.
  2. Use the sample function below (or one similar to it) along with a valid <UserId> and <Password> to establish the connection.

    NOTE: In the following sample code, an underscore (_) is used as a line- continuation character. Remove the underscore from the end of the line when re-creating this code in Access Basic.
          Function Establish_Connection ()
             Dim db As Database, dbcurr As Database
             Dim ds As Recordset 
             Set dbcurr = CurrentDB()
             Set db = OpenDatabase("", False, False, _
                "ODBC;DSN=<data source name>;" & _             
                "UID=<UserID>;PWD=<Password>;DATABASE=" & _    
                "<database name>;")
             Set ds = db.OpenRecordset("<any table existing in the 
              database defined by DATABASE above>")
          End Function
    						

    Substitute your own server name, password, database name, and table name in the function above.
When you run this function, Microsoft Access establishes a connection with the server specified in the function. The Connection Manager then stores the connection information, enabling you to open other linked tables on that server without being prompted for the login information each time. The Connection Manager will retain the login information until you quit Microsoft Access.

Modification Type:MinorLast Reviewed:1/26/2005
Keywords:kbinfo kbprogramming kbusage KB109829