We have a setup like this. This way a connection is opened in the procedure itself and you're not relying on the fact that there is an open connection for a start, secondly, the active connection object is only held in memory for the short time it is needed - not throughout the life of the application.

You can declare all your connection string etc as constants in a common module for each procedure to call which would cut down some coding for you...

VB Code:
  1. Function xyz(b as variable) as variable
  2.     open connection
  3.     do stuff to database
  4.     close connection
  5. End Function
  6.  
  7. Function zyx(a as variable) as variable
  8.     open connection
  9.     do stuff to database
  10.     close connection
  11. End Function