Perl a MSSQL vo Windows

Ako sa pripojiť v jazyku Perl na MSSQL server vo Windows Server 2003

Stiahnuť distribúciu Perl-u, napríklad z ActiveState:
http://www.activestate.com/Products/activeperl/features.plex

Nainštalovať.

Pokiaľ používate pre prístup na web proxy server, nezabudnite si nastaviť systémové premenné http_proxy a ftp_proxy nasledovným postupom:

  1. Otvorte Control Panel -> System
  2. klik na záložku Advanced, tlačítko Environment Variables
  3. obrazok 1

  4. V časti System Variables (tá spodná) kliknite na tlačítko New
  5. Do Variable name napíšte text „http_proxy“ (bez úvodzoviek)
  6. Do variable value napíšte text „http://vas_proxy_server:port“ (hodnoty vas_proxy_server a port nahraďte vašimi reálnymi hodnotami)
  7. obrazok 2

  8. Potvrďte OK
  9. To isté zopakujte pre premennú „ftp_proxy“

Týmto máme nastavené hodnoty proxy pre prístup na internet.

Keďže nie sú dostupné knižnice pre priamy prístup k MSSQL Serveru, použijeme ODBC ovládač (ktorý musíme tiež najprv nainštalovať). Spustíme program „Perl package Manager“ (Start -> Programs -> ActivePerl… -> Perl package Manager) Pokiaľ sme ho spustili prvý krát, synchronizácia s repozitárom bude trvať trocha dlhšie. Po synchronizácii postupujeme nasledovne:

  1. vyberieme z menu View položku All packakes (CTRL+1)
  2. do vyhľadávacieho poľa napíšeme text „ODBC“
  3. obrazok 3

  4. pravý klik na balíku DBD-ODBC, klikneme na „Install DBD-ODBC…“
  5. klik na menu File, položka Run Marked Actions
  6. objaví sa dialóg
  7. obrazok 4

  8. klik na OK
  9. klik na menu File, položka Exit (CTRL+Q)

Týmto máme nainštalovaný ODBC modul do Perl-u.

Ďalším krokom je konfigurácia ODBC pripojenia:

  1. spustíme Control Panel -> Administrative Tools -> Data Sources (ODBC)
  2. obrazok 5

  3. klikneme na Add, vyberieme zo zoznamu SQL Server
  4. obrazok 6

  5. vyplníme názov spojenia, popis a názov servera
  6. obrazok 7

  7. klikneme na Next, vyberieme typ autorizácie (podľa vašej konfigurácie SQL servera). V tomto prípade použijem SQL Server autorizáciu.
  8. obrazok 8

  9. klikneme na Next
  10. vyberieme databázu na ktorú sa budeme pripájať, pre naše účely použijeme databázu „pubs“
  11. obrazok 9

  12. klikneme na Next, klikneme na Finish
  13. pre otestovanie správnosti konfigurácie klikneme na tlačítko Test Data Source
  14. obrazok 10

  15. Pokiaľ bola naša konfigurácia úspešná, uvidíme
  16. obrazok 11

  17. pokiaľ uvidíte čokoľvek iné, skontrolujte si konfiguráciu, inak kliknite na OK a ukončite sprievodcu

Týmto sme ukončili konfiguráciu ODBC, ďalším krokom bude otestovať spojenie na databázu z perl-u.

Otvoríme si notepad a zapíšeme tento program:

use DBI;
# ucet a heslo nahrad svojimi hodnotami
my $dbh = DBI->connect("DBI:ODBC:bankov-pubs", 'ucet', 'heslo', {PrintError => 0});
die "Unable for connect to server $DBI::errstr"
unless $dbh;

my $rc;
my $sth;

$sth = $dbh->prepare("select * from Authors;");
if($sth->execute) {
while(@dat = $sth->fetchrow) {
print "@dat\n";
}
}

uložíme ho ako test.pl do adresára c:\temp\. Spustíme príkazový riadok. Na príkazovom riadku zadáme:

cd c:\temp
perl test.p

Pokiaľ vidíte podobný výstup ako na obrázku, tak je všetko OK… ;)

obrazok 12

pokiaľ nie, skúste si prejsť konfiguráciu ešte raz. Postup bol testovaný na Windows Server 2003 a Windows Vista Ultimate, Enterprise. Mal by fungovať aj na Windows XP, to som ale netestoval. Testy boli prevádzané oproti MSSQL Server 2000, ale jeden test bol aj proti SQL Server 2005 a problémy som nezaznamenal.

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená.