スクリプトからデータベースにアクセスする

スクリプト言語から PostgreSQL にアクセスする方法をまとめておいてみようかなぁと思う

PostgreSQL の test というデータベース上に Memo というテーブルがあるので、その中身をDumpするスクリプト

  • Perl
#! /usr/local/bin/perl

use Pg;

$con = Pg::connectdb("host=**** user=**** dbname=test");
$res = $con->exec("select * from \"Memo\";");
while(@row = $res->fetchrow)
{
    print @row;
    print "\n";
}
  • Python
#! /usr/local/bin/python
# -*- coding:utf-8 -*-

import io
import sys
import psycopg2

sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='euc-jp')

con = psycopg2.connect("dbname=test host=**** user=****")
cur = con.cursor()
cur.execute("SELECT * FROM \"Memo\";")
res = cur.fetchall()
for row in res:
  print(row[0] , end=" ")
  print(row[1])
cur.close()
con.close()
  • PHP
#! /usr/local/bin/php
<?php 
$con = pg_connect("dbname=test host=**** user=**** password=****");
password=****");
$res = pg_query($con , "SELECT * FROM \"Memo\";");
for($i = 0 ; $i < pg_num_rows($res) ; $i++)
{
  $dat = pg_fetch_row($res , $i);
  echo $dat[0] . " " . $dat[1] . "\n";
}
?>
  • Ruby
#! /usr/local/bin/ruby -Ke

require "rubygems"
require "pg"

con = PG::connect(:host => "****" , :user => "****" , :dbname => "test")
res = con.exec("select * from \"Memo\";")
res.each do |a|
  p a
end

一通りメモとして残しておこう

このブログ記事について

このページは、ほーりーが2014年10月24日 22:11に書いたブログ記事です。

ひとつ前のブログ記事は「ラーメン屋 品達のなんつッ亭」です。

次のブログ記事は「Win8.1(64bit)で 幼なじみは大統領 を動かす」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。