2008-10-14 3 views

Répondre

13

Utilisez DBD :: ODBC. Si vous venez de créer une source de données avec le Panneau de configuration -> Gestion du système -> Sources de données ODBC -> Source de données système ou Source de données utilisateur (ce sont les noms que je me souviens, mais mon XP n'est pas en anglais, donc je impossible de vérifier), tout ce que vous avez à faire est d'utiliser le nom de cette source de données dans la chaîne de connexion DBI.

my $dbh = DBI->connect("dbi:ODBC:$dsn", $user, $pwd, \%attr); 

La différence entre les sources de données utilisateur et système est que cette dernière est utilisable par n'importe quel utilisateur.

Voir aussi: HOW TO: Create a System Data Source Name in Windows XP

6

Impossible de trouver ceci fiable partout. Utiliser le code Perl similaire à

use DBI; 
my $dbs = "dbi:ODBC:DRIVER={SQL Server};SERVER={ServerName}"; 
my ($username, $password) = ('username', 'password'); 

my $dbh = DBI->connect($dbs, $username, $password); 

if (defined($dbh)) 
{ 
    #write code here 
    $dbh->disconnect; 
} 
else 
{ 
    print "Error connecting to database: Error $DBI::err - $DBI::errstr\n"; 
} 
4

Vérification Perlmonks, je vois la suggestion d'utiliser effectivement le pilote DBI Sybase pour la connexion à MS SQL. Ce qui est logique, étant donné que MS SQL a ses origines dans le code Sybase. ODBC fonctionne, bien sûr, bien sûr.

0

En utilisant OLEDB avec sécurité intégrée (authentification Windows):

DBI:ADO:Provider=SQLOLEDB.1;Integrated Security=SSPI;Data Source=localhost;Initial Catalog=$dbName;

Questions connexes