通常、データベースに対して 1 つの接続を開いてから、一連の SQL 文を実行して必要なすべての操作を実行します。接続を開くには、connect メソッドを使用します。この戻り値は、接続時に後続の操作を行うために使用するデータベース接続のハンドルです。
connect メソッドのパラメーターは、次のとおりです。
"DBI:SQLAnywhere:" とセミコロンで分けられた追加接続パラメーター。
ユーザー名。この文字列がブランクでないかぎり、接続文字列に ";UID=value" が追加されます。
パスワード値。この文字列がブランクでないかぎり、接続文字列に ";PWD=value" が追加されます。
デフォルト値のハッシュへのポインター。AutoCommit、RaiseError、PrintError などの設定は、この方法で設定できます。
次のコードサンプルは、SQL Anywhere サンプルデータベースへの接続を開いて閉じます。スクリプトを実行するには、データベースサーバーとサンプルデータベースを起動します。
#!/usr/local/bin/perl -w # use DBI; use strict; my $database = "demo"; my $data_src = "DBI:SQLAnywhere:SERVER=$database;DBN=$database"; my $uid = "DBA"; my $pwd = "sql"; my %defaults = ( AutoCommit => 1, # Autocommit enabled. PrintError => 0 # Errors not automatically printed. ); my $dbh = DBI->connect($data_src, $uid, $pwd, \%defaults) or die "Cannot connect to $data_src: $DBI::errstr\n"; $dbh->disconnect; exit(0); __END__ |
オプションとして、ユーザー名またはパスワード値を個々のパラメーターとして指定する代わりに、これらをデータソース文字列に追加できます。このオプションを実施する場合は、該当する引数にブランク文字列を指定します。たとえば、上記の場合、接続を開く文を次の文に置き換えることにより、スクリプトを変更できます。
$data_src .= ";UID=$uid"; $data_src .= ";PWD=$pwd"; my $dbh = DBI->connect($data_src, '', '', \%defaults) or die "Cannot connect to $data_src: $DBI::errstr\n"; |
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |