Connect to Database Function

V

vunet

Hello,
I want to create a useful function or sub whichever works great for
database connection to avoid typing same code all over. Earlier I was
using include file for opening and closing adoCon object and
connection. Now I really want to use a function to do it.
Can one recommend a good example?

I have this sample below which does not work for me because of the
mappath being wrong depending on what file under what directory calls
the file with this function:

Sub DB_CONN
Set adoCon = Server.CreateObject("ADODB.Connection")
adoCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &
Server.MapPath("./db/web.mdb") & ";"
End Sub

Sub DB_CONN_CLOSE
Set adoCon = nothing
End Sub

Thank you for any advice.
 
B

Bob Barrows [MVP]

vunet said:
Hello,
I want to create a useful function or sub whichever works great for
database connection to avoid typing same code all over. Earlier I was
using include file for opening and closing adoCon object and
connection. Now I really want to use a function to do it.

Where would you put that function? What is wrong with using an include
file?
Can one recommend a good example?

I have this sample below which does not work for me because of the
mappath being wrong depending on what file under what directory calls
the file with this function:

Sub DB_CONN

This isn't a function, it's a subroutine.
Set adoCon = Server.CreateObject("ADODB.Connection")
adoCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &
Server.MapPath("./db/web.mdb") & ";"

"/" gets to the root. I don't know what your directory structure is but
something like this should work (you don't need the ending semicolon):

adoCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Server.MapPath("/db/web.mdb")
 
V

vunet

Where would you put that function? What is wrong with using an include
file?




This isn't a function, it's a subroutine.


"/" gets to the root. I don't know what your directory structure is but
something like this should work (you don't need the ending semicolon):

adoCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Server.MapPath("/db/web.mdb")




--
Microsoft MVP -- ASP/ASP.NET
Please reply to the newsgroup. The email account listed in my From
header is my spam trap, so I don't check it very often. You will get a
quicker response by posting to the newsgroup.

Thanks. When I run that subroutine in a function it generates error:

Arguments are of the wrong type, are out of acceptable range, or are
in conflict with one another.

If I move the code from subroutine to the function it works fine.
Function and subroutine are both in "inc" directory but database is in
"db" directory:

root:
--db
----db.mdb
--inc
----functions.asp
 
B

Bob Barrows [MVP]

vunet said:
On Aug 20, 12:34 pm, "Bob Barrows [MVP]" <[email protected]>
Thanks. When I run that subroutine in a function it generates error:

Arguments are of the wrong type, are out of acceptable range, or are
in conflict with one another.

That error does not seem to be related to an inability to find the mdb
file.
If I move the code from subroutine to the function it works fine.

Again ... unrelated to the mdb file location.
Could you show us the code that works followed by the code that fails?
I'm thinking it's a scope issue.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,770
Messages
2,569,584
Members
45,075
Latest member
MakersCBDBloodSupport

Latest Threads

Top