Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

ODBC and MS SQL Server 2000 Connection

by peacemaker1820 (Pilgrim)
on Jun 28, 2002 at 19:57 UTC ( [id://178120]=perlquestion: print w/replies, xml ) Need Help??

peacemaker1820 has asked for the wisdom of the Perl Monks concerning the following question:

I am trying to connect to MS SQL Server 2000 that is on my NT server. That's the code I have below but when I try to view through a browser it gives me the following error:
"Perhaps the capitalisation of DBD 'ODBC' isn't right. at C:\Inetpub\wwwroot\cgibin\database.pl line 14 HTTP/1.0 200 OK Content-Type: text/html"

print "HTTP/1.0 200 OK\n";
print "Content-Type: text/html\n\n";
print "<HTML><HEAD><TITLE></TITLE></HEAD>\n";
print "<BODY>\n";

use DBI;
use DBD::ODBC;
use CGI;

my ( $server_name, $database, $user_id, $password ) = qw( 'sdp-si.biz' 'SDPSI' 'myusername' 'mypassowrd' );

#Connect the database handle.
$dbh = DBI->connect("DBI:ODBC:$DSN") or die "$DBI::errstr\n";

#Close connection when finished:
$dbh->disconnect;

print "</BODY>\n";
print "</HTML>\n";

I already installed the DBI package, and i read that DBD::ODBC comes with Active Perl already(that's what i have). WHAT SHOULD I DO??? PLEASE HELP MANY THANKS!

Replies are listed 'Best First'.
Re: ODBC and MS SQL Server 2000 Connection
by dws (Chancellor) on Jun 28, 2002 at 20:23 UTC
    I already installed the DBI package, and i read that DBD::ODBC comes with Active Perl already(that's what i have). WHAT SHOULD I DO???

    1. use strict;
    2. $|++; # to unbuffer STDOUT
    3. provide a value for $DSN

    This won't solve your problem, but it'll get you closer.

Re: ODBC and MS SQL Server 2000 Connection
by thunders (Priest) on Jun 28, 2002 at 20:47 UTC
    first off if you are going to use CGI you might as well use it to print the header..
    #!perl -w # ^ you may need that first line # my local Apache server does... use DBI; use CGI qw/:standard/; print header;

    Also take out use DBD::ODBC; it's nota module you need to import. it's a driver. generally just use DBI. You may Need to Set up a "System DSN" connection to the SQL Server in Conrol Panel->Data Sources(ODBC). and you will have to declare a value for $DSN. Also make sure that the driver for SQL Server is in you list of Drivers in the Same ODBC Panel

Re: ODBC and MS SQL Server 2000 Connection
by peacemaker1820 (Pilgrim) on Jun 28, 2002 at 21:10 UTC
    print "HTTP/1.0 200 OK\n";
    print "Content-Type: text/html\n\n";
    print "<HTML><HEAD><TITLE></TITLE></HEAD>\n";
    print "<BODY>\n";
    
    use DBI;
    #use DBD::ODBC;
    use CGI;
    
    my ( $data_source, $database, $user_id, $password ) = qw( sdp-si.biz SDPSI username password   );
    my $DSN = "driver={SQL Server};Server=$data_source;Database=$database;UID=$user_id;PWD=$password";
    #Connect the database handle.
    $dbh = DBI->connect("DBI:ODBC:$DSN") or die "$DBI::errstr\n";
    
    print "hello there";
    #Close connection when finished:
    $dbh->disconnect;
    print "hello there";
    print "</BODY>\n";
    print "</HTML>\n";
    

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://178120]
Approved by thunders
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (3)
As of 2024-04-25 05:35 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found