Suche senden
Hochladen
Ruby Postgres 2009
•
4 gefällt mir
•
2,140 views
Akio Ishida
Folgen
Technologie
Melden
Teilen
Melden
Teilen
1 von 26
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
PostgreSQL + pgpool構成におけるリカバリ
PostgreSQL + pgpool構成におけるリカバリ
hiroin0
日本 GNU AWK ユーザー会チラシ - OSC2012 Tokyo/Fall
日本 GNU AWK ユーザー会チラシ - OSC2012 Tokyo/Fall
博文 斉藤
CMSとPerlで遊ぼう
CMSとPerlで遊ぼう
Daiki Ichinose
私とmysqlとROLE
私とmysqlとROLE
lhfukamachi 深町
MongoDB Configパラメータ解説
MongoDB Configパラメータ解説
Shoken Fujisaki
Webサーバ勉強会03
Webサーバ勉強会03
oranie Narut
MongoDBのはじめての運用テキスト
MongoDBのはじめての運用テキスト
Akihiro Kuwano
serverspecみんなで集めて(゚Д゚)ウマー?
serverspecみんなで集めて(゚Д゚)ウマー?
Sho Hashimoto
Empfohlen
PostgreSQL + pgpool構成におけるリカバリ
PostgreSQL + pgpool構成におけるリカバリ
hiroin0
日本 GNU AWK ユーザー会チラシ - OSC2012 Tokyo/Fall
日本 GNU AWK ユーザー会チラシ - OSC2012 Tokyo/Fall
博文 斉藤
CMSとPerlで遊ぼう
CMSとPerlで遊ぼう
Daiki Ichinose
私とmysqlとROLE
私とmysqlとROLE
lhfukamachi 深町
MongoDB Configパラメータ解説
MongoDB Configパラメータ解説
Shoken Fujisaki
Webサーバ勉強会03
Webサーバ勉強会03
oranie Narut
MongoDBのはじめての運用テキスト
MongoDBのはじめての運用テキスト
Akihiro Kuwano
serverspecみんなで集めて(゚Д゚)ウマー?
serverspecみんなで集めて(゚Д゚)ウマー?
Sho Hashimoto
Webサーバのチューニング
Webサーバのチューニング
Yu Komiya
第8回KPF発表資料
第8回KPF発表資料
cryks
パフォーマンスの良いGASの書き方 Best Practice
パフォーマンスの良いGASの書き方 Best Practice
啓介 大橋
20171103 pg con-jp-lt-plpgsql
20171103 pg con-jp-lt-plpgsql
Toshi Harada
卒研発表
卒研発表
yayugu
社内勉強会資料(Varnish Module)
社内勉強会資料(Varnish Module)
Iwana Chan
20171106 ntt-tx-postgre sql-10
20171106 ntt-tx-postgre sql-10
Toshi Harada
未踏成果発表
未踏成果発表
yayugu
VarnishではじめるESI
VarnishではじめるESI
Iwana Chan
20171028 osc-nagaoka-postgre sql-10
20171028 osc-nagaoka-postgre sql-10
Toshi Harada
ノンプログラマのためのウェブサーバ入門
ノンプログラマのためのウェブサーバ入門
Atsu Yamaga
20140828 #ssmjp 社内チューニンガソンで優勝したはなし
20140828 #ssmjp 社内チューニンガソンで優勝したはなし
Masahiro NAKAYAMA
サーバー実装いろいろ
サーバー実装いろいろ
kjwtnb
第1回鹿児島node.jsの会資料_内村
第1回鹿児島node.jsの会資料_内村
Koichi Uchimura
Openjdk 入門してみた話
Openjdk 入門してみた話
Tokuhiro Matsuno
今日から使い始めるChef
今日から使い始めるChef
Masahiro NAKAYAMA
ザ・ドキュメント~うまくいかないNoSQL~
ザ・ドキュメント~うまくいかないNoSQL~
Akihiro Kuwano
Apacheチューニング
Apacheチューニング
ii012014
serverspecでサーバ環境のテストを書いてみよう
serverspecでサーバ環境のテストを書いてみよう
Daisuke Ikeda
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
Yoshio Hanawa
Ruby Postgres
Ruby Postgres
Akio Ishida
PostgreSQLの範囲型と排他制約
PostgreSQLの範囲型と排他制約
Akio Ishida
Weitere ähnliche Inhalte
Was ist angesagt?
Webサーバのチューニング
Webサーバのチューニング
Yu Komiya
第8回KPF発表資料
第8回KPF発表資料
cryks
パフォーマンスの良いGASの書き方 Best Practice
パフォーマンスの良いGASの書き方 Best Practice
啓介 大橋
20171103 pg con-jp-lt-plpgsql
20171103 pg con-jp-lt-plpgsql
Toshi Harada
卒研発表
卒研発表
yayugu
社内勉強会資料(Varnish Module)
社内勉強会資料(Varnish Module)
Iwana Chan
20171106 ntt-tx-postgre sql-10
20171106 ntt-tx-postgre sql-10
Toshi Harada
未踏成果発表
未踏成果発表
yayugu
VarnishではじめるESI
VarnishではじめるESI
Iwana Chan
20171028 osc-nagaoka-postgre sql-10
20171028 osc-nagaoka-postgre sql-10
Toshi Harada
ノンプログラマのためのウェブサーバ入門
ノンプログラマのためのウェブサーバ入門
Atsu Yamaga
20140828 #ssmjp 社内チューニンガソンで優勝したはなし
20140828 #ssmjp 社内チューニンガソンで優勝したはなし
Masahiro NAKAYAMA
サーバー実装いろいろ
サーバー実装いろいろ
kjwtnb
第1回鹿児島node.jsの会資料_内村
第1回鹿児島node.jsの会資料_内村
Koichi Uchimura
Openjdk 入門してみた話
Openjdk 入門してみた話
Tokuhiro Matsuno
今日から使い始めるChef
今日から使い始めるChef
Masahiro NAKAYAMA
ザ・ドキュメント~うまくいかないNoSQL~
ザ・ドキュメント~うまくいかないNoSQL~
Akihiro Kuwano
Apacheチューニング
Apacheチューニング
ii012014
serverspecでサーバ環境のテストを書いてみよう
serverspecでサーバ環境のテストを書いてみよう
Daisuke Ikeda
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
Yoshio Hanawa
Was ist angesagt?
(20)
Webサーバのチューニング
Webサーバのチューニング
第8回KPF発表資料
第8回KPF発表資料
パフォーマンスの良いGASの書き方 Best Practice
パフォーマンスの良いGASの書き方 Best Practice
20171103 pg con-jp-lt-plpgsql
20171103 pg con-jp-lt-plpgsql
卒研発表
卒研発表
社内勉強会資料(Varnish Module)
社内勉強会資料(Varnish Module)
20171106 ntt-tx-postgre sql-10
20171106 ntt-tx-postgre sql-10
未踏成果発表
未踏成果発表
VarnishではじめるESI
VarnishではじめるESI
20171028 osc-nagaoka-postgre sql-10
20171028 osc-nagaoka-postgre sql-10
ノンプログラマのためのウェブサーバ入門
ノンプログラマのためのウェブサーバ入門
20140828 #ssmjp 社内チューニンガソンで優勝したはなし
20140828 #ssmjp 社内チューニンガソンで優勝したはなし
サーバー実装いろいろ
サーバー実装いろいろ
第1回鹿児島node.jsの会資料_内村
第1回鹿児島node.jsの会資料_内村
Openjdk 入門してみた話
Openjdk 入門してみた話
今日から使い始めるChef
今日から使い始めるChef
ザ・ドキュメント~うまくいかないNoSQL~
ザ・ドキュメント~うまくいかないNoSQL~
Apacheチューニング
Apacheチューニング
serverspecでサーバ環境のテストを書いてみよう
serverspecでサーバ環境のテストを書いてみよう
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
Andere mochten auch
Ruby Postgres
Ruby Postgres
Akio Ishida
PostgreSQLの範囲型と排他制約
PostgreSQLの範囲型と排他制約
Akio Ishida
Local php-100828 2
Local php-100828 2
Akio Ishida
Getting start with knockout.js
Getting start with knockout.js
Akio Ishida
PostgreSQLで学ぶBoyer-Moore-Horspoolアルゴリズム
PostgreSQLで学ぶBoyer-Moore-Horspoolアルゴリズム
Akio Ishida
XIDを周回させてみよう
XIDを周回させてみよう
Akio Ishida
使いこなそうGUC
使いこなそうGUC
Akio Ishida
Rubysapporo Stringsearch
Rubysapporo Stringsearch
Akio Ishida
phpspecで学ぶLondon School TDD
phpspecで学ぶLondon School TDD
Akio Ishida
textsearch_jaで全文検索
textsearch_jaで全文検索
Akio Ishida
よりよいPHPUnitの実行方法を求めて
よりよいPHPUnitの実行方法を求めて
Akio Ishida
Elsevier与Lib2
Elsevier与Lib2
guestb62477
Prophecyを使ったユニットテスト
Prophecyを使ったユニットテスト
Akio Ishida
Andere mochten auch
(13)
Ruby Postgres
Ruby Postgres
PostgreSQLの範囲型と排他制約
PostgreSQLの範囲型と排他制約
Local php-100828 2
Local php-100828 2
Getting start with knockout.js
Getting start with knockout.js
PostgreSQLで学ぶBoyer-Moore-Horspoolアルゴリズム
PostgreSQLで学ぶBoyer-Moore-Horspoolアルゴリズム
XIDを周回させてみよう
XIDを周回させてみよう
使いこなそうGUC
使いこなそうGUC
Rubysapporo Stringsearch
Rubysapporo Stringsearch
phpspecで学ぶLondon School TDD
phpspecで学ぶLondon School TDD
textsearch_jaで全文検索
textsearch_jaで全文検索
よりよいPHPUnitの実行方法を求めて
よりよいPHPUnitの実行方法を求めて
Elsevier与Lib2
Elsevier与Lib2
Prophecyを使ったユニットテスト
Prophecyを使ったユニットテスト
Ähnlich wie Ruby Postgres 2009
配布用Beginnerならきっと役立つmaster slave環境
配布用Beginnerならきっと役立つmaster slave環境
yut148atgmaildotcom
tcpdump & xtrabackup @ MySQL Casual Talks #1
tcpdump & xtrabackup @ MySQL Casual Talks #1
Ryosuke IWANAGA
社内向けTech Talk資料~Fluentdの基本紹介~
社内向けTech Talk資料~Fluentdの基本紹介~
Daisuke Ikeda
CPANの依存モジュールをもう少し正しく検出したい
CPANの依存モジュールをもう少し正しく検出したい
charsbar
位置情報を使ったサービス「スマポ」をPostgreSQLで作ってみた db tech showcase 2013 Tokyo
位置情報を使ったサービス「スマポ」をPostgreSQLで作ってみた db tech showcase 2013 Tokyo
Yoshiyuki Asaba
Puppet on AWS
Puppet on AWS
Sugawara Genki
MoteMote Compiler Plugin
MoteMote Compiler Plugin
yoshiaki iwanaga
MySQLとPostgreSQLにおける基本的なアカウント管理
MySQLとPostgreSQLにおける基本的なアカウント管理
Shinya Sugiyama
Groovyで楽にSQLを実行してみよう
Groovyで楽にSQLを実行してみよう
Akira Shimosako
Subprocess no susume
Subprocess no susume
Makoto Kishimoto
Ruby 2.5
Ruby 2.5
Masahiro Tomita
MySQLとPostgreSQLの基本的な実行プラン比較
MySQLとPostgreSQLの基本的な実行プラン比較
Shinya Sugiyama
Gumi study7 messagepack
Gumi study7 messagepack
Sadayuki Furuhashi
gumiStudy#7 The MessagePack Project
gumiStudy#7 The MessagePack Project
Sadayuki Furuhashi
Haikara
Haikara
jewel12
あなたの知らないPostgreSQL監視の世界
あなたの知らないPostgreSQL監視の世界
Yoshinori Nakanishi
OpenStack + Common Lisp
OpenStack + Common Lisp
irix_jp
Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋
Mori Shingo
Introduction pp.js
Introduction pp.js
Mizushima Kazuhiro
20181212 - PGconf.ASIA - LT
20181212 - PGconf.ASIA - LT
Kohei KaiGai
Ähnlich wie Ruby Postgres 2009
(20)
配布用Beginnerならきっと役立つmaster slave環境
配布用Beginnerならきっと役立つmaster slave環境
tcpdump & xtrabackup @ MySQL Casual Talks #1
tcpdump & xtrabackup @ MySQL Casual Talks #1
社内向けTech Talk資料~Fluentdの基本紹介~
社内向けTech Talk資料~Fluentdの基本紹介~
CPANの依存モジュールをもう少し正しく検出したい
CPANの依存モジュールをもう少し正しく検出したい
位置情報を使ったサービス「スマポ」をPostgreSQLで作ってみた db tech showcase 2013 Tokyo
位置情報を使ったサービス「スマポ」をPostgreSQLで作ってみた db tech showcase 2013 Tokyo
Puppet on AWS
Puppet on AWS
MoteMote Compiler Plugin
MoteMote Compiler Plugin
MySQLとPostgreSQLにおける基本的なアカウント管理
MySQLとPostgreSQLにおける基本的なアカウント管理
Groovyで楽にSQLを実行してみよう
Groovyで楽にSQLを実行してみよう
Subprocess no susume
Subprocess no susume
Ruby 2.5
Ruby 2.5
MySQLとPostgreSQLの基本的な実行プラン比較
MySQLとPostgreSQLの基本的な実行プラン比較
Gumi study7 messagepack
Gumi study7 messagepack
gumiStudy#7 The MessagePack Project
gumiStudy#7 The MessagePack Project
Haikara
Haikara
あなたの知らないPostgreSQL監視の世界
あなたの知らないPostgreSQL監視の世界
OpenStack + Common Lisp
OpenStack + Common Lisp
Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋
Introduction pp.js
Introduction pp.js
20181212 - PGconf.ASIA - LT
20181212 - PGconf.ASIA - LT
Kürzlich hochgeladen
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
WSO2
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
sn679259
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Hiroshi Tomioka
Kürzlich hochgeladen
(12)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Ruby Postgres 2009
1.
RubyでPostgreSQLと
お話しする方法 (株)サイクル・オブ・フィフス 石田朗雄
2.
自己紹介等 / PostgreSQLの方から来ました
(Hatena|Twitter)id:iakio / 石田@苫小牧市 PostgreSQL徹底入門(翔泳社) pgpool-II Developer http://postgresql.g.hatena.ne.jp 普段はPHP、C、Java、C++等 Rubyはあんまり詳しくないです たまにruby-sapporo勉強会に顔を出しています
3.
(宣伝)JPUG北海道支部 2004年から細々と勉強会やイベントをやったりやらな
かったり 「PostgreSQLで学ぶBoyer-Mooreアルゴリズム」 「PostgreSQL8.3はいかにしてTEXT型のサイズを3バイト縮 めたか」 PostgreSQLを使う上では特に役に立たないかもしれません 自分の知識を発表する→普通の勉強会 知らないしやったこと無いけど気になってることを当日ま でに必死で調べて発表する→JPUG北海道Style
4.
RubyとPostgreSQL
5.
プログラムからSQLを実行するということ クライアント/サーバー間のソケット通信 Frontend/Backendプロトコルの仕様もドキュメントに
含まれています http://www.postgresql.jp/document/current/html/p rotocol.html
6.
2種類の実装 Frontend/Backendプロトコルを実装したC言語のライ
ブラリ(libpq.so又はlibpq.dll)
7.
RubyとPostgreSQL ruby-postgres(1997-)
http://rubyforge.org/projects/ruby-postgres libpqを使った実装 postgres-pr http://rubyforge.org/projects/postgres-pr Pure Ruby版 Cコンパイラが使えない環境 libpqが使えない環境
8.
第6回 Ruby勉強会@札幌 2007-11-17
http://www.slideshare.net/iakio/ruby-postgres ruby-postgres → 微妙 postgres-pr → なにそれ こわい
9.
postgres-pr VS ruby-postgres
ruby-postgres PGconn.instance_methods(false).sort => ["async_exec", "async_query", "client_encoding", "close", "db", "endcopy", "error", "exec", "finish", "get_notify", "getline", "host", "insert_table", "lo_create", "lo_export", "lo_import", "lo_open", "lo_unlink", "locreate", "loexport", "loimport", "loopen", "lounlink", "on_notice", "options", "port", "protocol_version", "putline", "query", "reset", "select_one", "select_value", "select_values", "server_version", "set_client_encoding", "status", "trace", "transaction_status", "tty", "untrace", "user"] postgres-pr PGconn.instance_methods(false).sort => ["close", "db", "exec", "host", "query", "user"]
10.
ruby-pg登場 http://rubyforge.org/projects/ruby-pg/
11.
PGconn.instance_methods(false).sort
ruby-pg => [:async_exec, :async_query, :backend_pid, :block, :cancel, :close, :conndefaults, :connect_poll, :connection_needs_password, :connection_used_password, :consume_input, :db, :describe_portal, :describe_prepared, :error_message, :escape, :escape_bytea, :escape_string, :exec, :exec_prepared, :finish, :flush, :get_client_encoding, :get_copy_data, :get_last_result, :get_result, :host, :is_busy, :isnonblocking, :lo_close, :lo_creat, :lo_create, :lo_export, :lo_import, :lo_lseek, :lo_open, :lo_read, :lo_seek, :lo_tell, :lo_truncate, :lo_unlink, :lo_write, :loclose, :locreat, :locreate, :loexport, :loimport, :lolseek, :loopen, :loread, :loseek, :lotell, :lotruncate, :lounlink, :lowrite, :make_empty_pgresult, :notifies, :options, :parameter_status, :pass, :port, :prepare, :protocol_version, :put_copy_data, :put_copy_end, :query, :quote_ident, :reset, :reset_poll, :reset_start, :send_describe_portal, :send_describe_prepared, :send_prepare, :send_query, :send_query_prepared, :server_version, :set_client_encoding, :set_error_verbosity, :set_notice_processor, :set_notice_receiver, :setnonblocking, :socket, :status, :trace, :transaction, :transaction_status, :tty, :unescape_bytea, :untrace, :user]
12.
他の言語との比較 各種ドライバで使われているlibpq関数の数(nm調べ)
13.
ruby-pgは最強のlibpq wrapper
ruby-pgはpgpool-IIのデバッグをするときに便利 残念ながらWindows用のバイナリは配布されてません
14.
ruby-pgの使い方
15.
本を読めばいいと思う Ruby逆引きレシピ 「レシピ100
PostgreSQLを使いたい」 以下、重箱の隅をつつくような 内容にお付き合い下さい
16.
レシピ100.1 接続時のTips 引数がよくわからん ------------------------------------------------------------
PGconn::new PGconn.new(connection_hash) -> PGconn PGconn.new(connection_string) -> PGconn PGconn.new(host, port, options, tty, dbname, login, password) -> PGconn ------------------------------------------------------------------------ * +host+ - server hostname * +hostaddr+ - server address (avoids hostname lookup, overrides +host+) … * +connect_timeout+ - maximum time to wait for connection to succeed * +options+ - backend options
17.
PGconn.open() == PQconnectdb()
18.
libpqのドキュメントを読みましょう http://www.postgresql.jp/document/current/html/li
bpq-connect.html
19.
実際けっこう色んなことが書けます パスワードは$HOME/.pgpassに書くという方法もある c
= PGconn.open "host=127.0.0.1 user=ishida dbname=ishida connect_timeout=10 options='-c client_encoding=utf-8 -c work_mem=1MB -c client_min_messages=debug'"
20.
環境変数等 接続時にオプションが指定されなかった場
合、PGUSER,PGDATABASE,PGOPTIONS等の環境変数を 参照する http://www.postgresql.jp/document/current/html/li bpq-envars.html $ PGUSER=user1 PGDATABASE=postgres psql psql (8.4.1) Type "help" for help. postgres=# select current_user; current_user -------------- user1 (1 row)
21.
たとえばRailsから # config/database.yaml development: ...
database: pool: 5 username: $ PGDATABASE=blog_development PGUSER=blog script/console Loading development environment (Rails 2.3.4) >> ActiveRecord::Base.connection.query "select current_user" => [["blog"]] $ PGDATABASE=blog_development PGUSER=blog script/server
22.
レシピ100.2 bulk load
タブ区切りやCSVファイルのロード サーバー上のファイルにはバックエンドからアクセス 可能(DBのスーパーユーザー権限が必要) psqlから => copy t1 from '/tmp/copy.data'; Rubyから c.query "copy t1 from '/tmp/copy.data'"
23.
クライアント上のファイルのコピー スーパーユーザー権限不要 psqlから =>
copy t1 from stdin; コピーするデータに続いて改行を入力します。 バックスラッシュ()とピリオドだけの行で終了します。 >> 1 One >> 2 Two >> .
24.
PGconn#put_copy_data 改行に関係なく、任意のサイズで送信できる PGconn.open
"" do |c| l = "" c.query "copy t1 from stdin" open("copy.data", "r") do |f| while f.read(8192, l) c.put_copy_data l end end c.put_copy_end end
25.
26.
まとめ 他にもいろいろ便利な機能があります 非同期問い合わせ
ruby-pg + fiber #=> NeverBlockPG http://www.scribd.com/doc/18166746/NeverBlockRubyKai gi2009 非同期通知 SQLSTATEのエラーコードを返す SSLサポート libpqドキュメントを読みましょう
Jetzt herunterladen