サーチ…


パラメーター

カラムカラム
$driver DB用ドライバ、Postgresql用の "Pg"、MySQL用 "mysql"
$database あなたのデータベース名
$userid あなたのデータベースID
$password データベースのパスワード
$query ex: "select * from $ your_table"を入力してください。

DBIモジュール

モジュールDBIがあなたのPCにインストールされていることを確認してから、以下の手順に従ってください:

  1. perlスクリプトでDBIモジュールを使用する

use DBI;

  1. いくつかの主要なパラメータを宣言する

my $driver = "MyDriver";

my $database = "DB_name";

my $dsn = "DBI:$driver:dbname=$database";

my $userid = "your_user_ID";

my $password = "your_password";

my $tablename = "your_table";

  1. データベースに接続する

my $dbh = DBI->connect($dsn, $userid, $password);

  1. あなたの質問を準備する

my $query = $dbh->prepare("Your DB query");

例:

$my_query = qq/SELECT * FROM table WHERE column1 = 2/;

my $query = $dbh->prepare($my_query);

以下のように、クエリ内で変数を使用することもできます。

my $table_name = "table";

my $filter_value = 2;

$my_query = qq/SELECT * FROM $table_name WHERE column1 = $filter_value/;

  1. クエリを実行する

$query->execute();

*注:注入攻撃を避けるために、プレースホルダを使用する必要があります?あなたの変数をクエリに入れるのではなく、

例: 'table'のすべてのデータを表示する場合は、column1 = $ value1およびcolumn2 = $ value2:

my $query = $dbh->prepare("SELECT * FROM table WHERE column1 = ? AND column2 = ?;");

$query->execute($value1, $value2);

  1. データをフレッチする

my @row = $query->fetchrow_array();データを配列として格納する

または

my $ref = $sth->fetchrow_hashref();ハッシュリファレンスとしてデータを格納する

  1. DBの終了と切断

$sth->finish;

$dbh->disconnect();



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow