Pete,
Right before the connect, do the following:
DBI->trace(5, "c:/trace.txt");
Then, send me the trace.txt from the web server's C: drive. (and, look at
it yourself to see if the error is recognizable).
Some other questions...
What version of DBD::ODBC are you using?
Are you using MS-Access security?
Does the web server user have access to the admin database?
Regards,
Jeff
> -----Original Message-----
> From: MacGown, Peter [mailto:[EMAIL PROTECTED]]
> Sent: Tuesday, March 12, 2002 10:05 AM
> To: [EMAIL PROTECTED]
> Subject: RE: MS Access/CGI/Apache on WinNT questions
>
>
> Jeff,
> You are correct that it does work from the command line. The share name
> "fssdata" share is accessible to me, but just to verify that
> something funky
> isn't going on, I copied the mdb file over to the web server and tried to
> run it from there. I still got the same message.
> As a newbie to perl and apache, I took on a task of trying to set up a web
> application to cut my teeth. The existing application has proven all too
> successful and the user population has outgrown MS Access. An
> Oracle server
> is in the works, but until then, I need to get it up and running using MS
> Access.
> I Know that this question is perl-101, but, given my inexperience
> with perl,
> what do you mean by "...set a trace file and set the DBI tracing level to
> 4..."?
> Thanks,
> Pete MacGown
>
> -----Original Message-----
> From: Jeff Urlwin [mailto:[EMAIL PROTECTED]]
> Sent: Monday, March 11, 2002 9:22 PM
> To: MacGown, Peter; [EMAIL PROTECTED]
> Subject: RE: MS Access/CGI/Apache on WinNT questions
>
>
> That, unfortunately, can be a bad message because of the way that
> DBD::ODBC
> handles opening the database. What's happening is that DBI can't open the
> database using the "DSN-less" style open (SQLDriverConnect) which
> fails and
> then tries to call SQLConnect, which expects a 32? character or
> less DSN. I
> hope to make this better in the future...
>
> In the mean time, I'm going to guess that this may work from the command
> line and not from the CGI. If that's not the case, this may or may not
> apply.
> Check the share name "fssdata" and ensure it's accessible from the
> username
> starting the web service (make sure the web server is not being started as
> local system, either, as that will have NO access to the network).
>
> IF that doesn't work, set a trace file and set the DBI tracing level to 4
> (or above) and post it back here.
>
> Jeff
>
> >
> > Hi,
> > I hope other people have been successful at getting CGI scripts
> > running that
> > access MS Access because I haven't. Here is a snippet of code that I am
> > trying to get to work:
> >
> > #!d:/perl/bin/perl -wT
> >
> > use DBI;
> >
> > my $dsn = "driver=Microsoft Access Driver
> > (*.mdb);dbq=\\\\nrent01\\fssdata\\Roster03b.mdb";
> > my $dbh = DBI->connect("DBI:ODBC:$dsn","admin","xyzzy") ||
> > print "<BR>Error Opening Database: $DBI::errstr\n";
> >
> > But I get this message:
> >
> > Error Opening Database: [Microsoft][ODBC Driver Manager]
> Invalid string or
> > buffer length (SQL-S1090)(DBD: db_login/SQLConnect err=-1)
> >
> > Am I doing something amazingly stupid and just can't see it? Is there a
> > better way to get to an MS Access database?
> >
> > Please help!
> >
> > Thanks,
> > Pete MacGown
> >
> >
>
>
>