I am currently in the early stages of a new project, plhaskell. plhaskell is a language handler for PostgreSQL that will allow you to write PostgreSQL functions in Haskell. The project has already taught me a lot, but recently I’ve had a somewhat mind bending encounter with what is almost dependently typed programming in Haskell - and I’ve just got to share it with you. Here’s the problem. At runt
また、PostgreSQL にはいわゆる CLOB, BLOB のような巨大データ専用の型は存在せず、1GB までであれば text や bytea 型をそのまま使えます。1GB を超える場合はラージオブジェクトも利用できますが、アクセスや管理の方法にクセがあるためお奨めできません。数MBまでは text や bytea を使い、それを超えるようなら外部ファイルとして保持したほうが、むしろ安心して運用できるかと思います。 char と varchar, text の比較 PostgreSQL の文字列は以下のような特徴があります。 1. char(n) や varchar(n) の 'n' は「文字数」を表す 他のデータベースではバイト数を表すものもあるので注意しましょう。 2. char(n) は n 文字になるように末尾に空白を追加して保持する n 文字ぴったりで無い限り、末尾の空白の
NTT オープンソースソフトウェアセンタ 板垣 貴裕 PostgreSQL でロケール (国際化と地域化) の設定を行うと、データベース内での文字列処理、日付や通貨の表示、メッセージの言語などを変更することができます。特に PostgreSQL 8.4 では、日本語のメッセージ・カタログが追加されたため、エラーメッセージを日本語化したい場合にはロケールを設定する必要があります。 ただし、C ロケール以外を設定すると、インデックスが使われないなどの性能への影響がある場合もあります。また、特に古いバージョンの PostgreSQL では、誤った設定によりサーバが正しく動作しなくなるケースもありました。 この記事では、ロケール設定の効果を結果例を交えて解説すると共に、トラブルへの対応方法を示します。PostgreSQL で日本語を扱う際に、ロケール設定を決める時の参考にして下さい。 Postgr
URLYou can post either your article on Qiita or your blog post. About reserved postingIf you register a secret article by the day before the same day, it will be automatically published around 7:00 on the same day. About posting periodOnly articles submitted after November 1 of the year can be registered. (Secret articles can be registered anytime articles are posted.)
NTTグループなど企業の基幹システムで広く使われているオープンソースのデータベース「PostgreSQL」。石井達夫氏は1999年からそのコミッターを務め、日本での普及に大きく貢献した。現在59歳で社長でもある石井氏だが「これからもコードを書き続けていきたい」と語る。 PostgreSQLには世界中から65人のコントリビューターがコードを提供しています。コミッターは16人いて、うち日本人は2人。私と板垣貴裕さんです。 PostgreSQLはもともと米カリフォルニア大学バークレー校の研究プロジェクトが源流です。コミュニティーは96年に2人の学生が立ち上げたのですが、その前から興味を持っていました。日本語が使えるようにしたいと思い、改良して投稿したところそれが採用され、98年にコミッターになりました。 でもその頃は完全に趣味でした。仕事になったのは99年、SRAでOSSビジネス部が設立されてか
POSTGRESQLのSQLで以下はどのように書くのでしょうか? PHPでかきます。 PHPでの変数を年を$year、月を$monthとします。 テーブルAは次のようになっています。(ins_dateはdate型) no price ins_date 1 5000 2006-03-01 2 4000 2005-10-10 3 3000 2006-01-11 4 2000 2006-02-15 5 1000 2005-12-24 6 2000 2006-02-24 ここから、 (1)$year年$month月を含んで、それよりも前の期間のselect結果 (例えば2005年12月だとしたら、2005年12月までの結果。noで言うと、2と5が結果としてでるようなSQL) (2)$year年$month月の結果 (例えば2006年02月だとしたら、2006年02月までの結果。noで言うと、4と6
はじめに 本連載ではPostgreSQL 8.4を使って、再帰SQLの入門事項や、Oracle Technology Network(OTN)でよく見かける問題の解法、Oracleの階層問い合わせや再帰with句の機能を模倣する方法を、SQLのイメージを交えて解説します。 本稿では、再帰SQLの構文などを扱います。 対象読者 PostgreSQLで再帰SQLを使ってみたい方 再帰SQLの理解を深めたい方 必要な環境 本稿で扱うSQLは、PostgreSQL 8.4 beta 2で動作確認しました。その他、次の環境でも応用が可能です。 Oracle 11g R2以降 DB2 SQL Server 2005以降 1. 再帰SQLとは with句でselect文を実行して、そのselect文の結果を使ってselect文を実行して、そのselect文の結果を使ってselect文を実行して、……(以
平素よりQA@ITをご利用いただき、誠にありがとうございます。 QA@ITは「質問や回答を『共有』し『編集』していくことでベストなQAを蓄積できる、ITエンジニアのための問題解決コミュニティー」として約7年間運営をしてきました。これまでサービスを続けることができたのは、QA@ITのコンセプトに共感をいただき、適切な質問や回答をお寄せいただいた皆さまのご支援があったからこそと考えております。重ねて御礼申し上げます。 しかしながら、エンジニアの情報入手方法の多様化やQAサービス市場の状況、@ITの今後のメディア運営方針などを検討した結果、2020年2月28日(金)15:00をもちましてQA@ITのサービスを終了することにしました。 これまでご利用をいただきました皆さまには残念なお知らせとなり、誠に心苦しく思っております。何とぞ、ご理解をいただけますと幸いです。 QA@ITの7年間で皆さまの知識
gauche-dbd-pg は、先日 serversman(CentOS)にも入れました。 vallog: serversman(centos) に postgreSQL に Gauche-dbd-pg Emacs から tramp でサーバ側の shell を立ち上げるとローカルの Emacs からサーバ側の gosh REPL にコードを送ることができるので、サーバの PostgreSQL を操作するプログラムをローカルで開発できます。 できますが、例えば何かモジュールを作ってそれを利用するようなコードを書いた時にそのモジュールをサーバにアップロードしてからでないとテストができません。アップロードといっても、tramp を用いてローカルの Emacs の dired から直接コピーできるのですが、その一手間が面倒です。それに gosh の再起動もしくは reload 等も必要になります
また、PostgreSQL にはいわゆる CLOB, BLOB のような巨大データ専用の型は存在せず、1GB までであれば text や bytea 型をそのまま使えます。1GB を超える場合はラージオブジェクトも利用できますが、アクセスや管理の方法にクセがあるためお奨めできません。数MBまでは text や bytea を使い、それを超えるようなら外部ファイルとして保持したほうが、むしろ安心して運用できるかと思います。 char と varchar, text の比較 PostgreSQL の文字列は以下のような特徴があります。 1. char(n) や varchar(n) の 'n' は「文字数」を表す 他のデータベースではバイト数を表すものもあるので注意しましょう。 2. char(n) は n 文字になるように末尾に空白を追加して保持する n 文字ぴったりで無い限り、末尾の空白の
PostgreSQLで「'」(シングルクォーテーション/単一引用符)をエスケープ処理する方法 IT・コンピュータ・家電等 PostgreSQLで「'」(シングルクォーテーション/単一引用符)をエスケープ処理する方法を以下にメモしておく。 ■SQLの実行に失敗する例 insert into nobuneko_dictionary (dic_name,dic_name2) values ('Foundation's Edge','ファウンデーションの彼方へ'); このSQLを実行すると、以下のようなエラーメッセージが表示される。 ERROR: syntax error at or near "s" LINE 3: ...ictionary (dic_name,dic_name2) values ('Foundation's Edge','... ^ ********** エラー *******
PostgreSQL9.1の仕様変更にて、デフォルト時の設定として、standard_conforming_stringsがonとみなされるようになりました。この仕様変更により、デフォルト設定でのPostgreSQLは、バックスラッシュをエスケープする必要がなくなり、ISO規格のSQLと同様のエスケープルール(シングルクォートを重ねるのみ)となります。 PostgreSQLの文字列リテラルは、元々MySQL同様に、バックスラッシュをエスケープする仕様でした。その後、リリース8.1にて、設定パラメータ standard_conforming_strings が追加され、この値が on の場合、バックスラッシュをエスケープしない(ISO規格と同様の)仕様となりました。従来のリリースでは、standard_conforming_stringsを指定しない場合offとみなされていました。これは、後
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く