2008-10-14 10 views

Respuesta

13

Use DBD :: ODBC. Si acaba de crear una fuente de datos con el Panel de control -> Administración del sistema -> Fuentes de datos ODBC -> Fuente de datos del sistema o Fuente de datos del usuario (esos son los nombres tal como los recuerdo, pero mi XP no está en inglés, entonces no se puede verificar), entonces todo lo que tiene que hacer es usar el nombre de esa fuente de datos en la cadena de conexión de DBI.

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

La diferencia entre el usuario y el origen de datos del sistema es que este último puede ser utilizado por cualquier usuario.

Consulte también: HOW TO: Create a System Data Source Name in Windows XP

6

No se pudo encontrar en ningún lugar confiable. Use código Perl similar a

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

Comprobación Perlmonks, veo la sugerencia de utilizar realmente el controlador Sybase DBI para conectar a MS SQL. Lo cual tiene sentido, dado que MS SQL tiene sus orígenes en el código de Sybase. ODBC también funciona, por supuesto.

0

Usando OLEDB con seguridad integrada (autenticación de Windows):

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

Cuestiones relacionadas