PostgreSQL
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2001/05/09(水) 11:36ID:GHX.oCXo関連アプリケーション特有の話題は、以下のスレッドへ。
☆関連スレッド
[PHP + PostgreSQL]
http://corn.2ch.net/test/read.cgi?bbs=php&key=983128806
[PHP以外+PostgreSQL]
http://corn.2ch.net/test/read.cgi?bbs=php&key=988929199
[MySQL vs PostgreSQL]
http://corn.2ch.net/test/read.cgi?bbs=php&key=989341364
0782nobodyさん
02/12/05 11:27ID:???別んとこにsequenceだけ持っておく、というのもアリかも。
0783nobodyさん
02/12/05 16:31ID:zuT0nBpDスレタイテーブルに最終番号をつけといて
BEGIN;
SELECT 最終番号 FROM スレタイテーブル;
INSERT INTO カキコテーブル(スレid, 最終番号 + 1, メッセージ, ...);
UPDATE スレタイテーブル SET 最終番号=最終番号 + 1;
COMMIT or ROLLBACK;
うちはこうしてる。
>>773
SQLだけでもできるけどメチャクチャ遅くなる。
メモリに読みこんでバイナリツリーかな。
レコードに親番号が入ってれば何とかなるよ。
0784nobodyさん
02/12/05 18:09ID:???CREATE GROUP
は使えますか?
CREATE GROUPの行でエラーになるんですが、
原因の特定がうまくできないもので。。。
使えるか使えないかだけでも、わかる方いらっしゃいませんか?
0785nobodyさん
02/12/06 18:47ID:n3ITkPRWselect case NUMBER when NUMBER is null then '1' else NUMBER end from AAA ;
0786ポトスグレと弱気に発音
02/12/06 19:23ID:e3P89aGIまぁ、なんとかユルユルと走らせる程度の事はできるんだけど、
何やらよくわからんのはバキュームやらバックアップやら。
バキュームっつーのはつまり、ノートン先生のスピードディスクみたいなもん?
バックアップは通常全部のSQLをどっかに溜めるとかするのか?
バキュームやらバックアップやらはPostgreを走らせながらできるの?頻度は?
なんて事を小学生でもわかるぐらいの平たい文章で説明してるサイト
とかないものか・・・と
0787nobodyさん
02/12/06 20:34ID:RV7qzP6C型変換だろ?
つまりインテガーとかブーリアンだからそうなるのよ。
わかる?
0788nobodyさん
02/12/06 20:35ID:WQv5Y1p0シーラカンス本を読むといいよ。
0789ポトスグレと弱気に発音
02/12/06 23:32ID:e3P89aGIありがとうございます。ちょいと本屋で購入してみます。
0790nobodyさん
02/12/08 04:30ID:cZH6KLf5windowsからtcp/ip経由で接続時、パスワードを入力しても不正と言われログインすることが
出来なくなってしまいました。
pg_hba.confなどは特に変更していないのですが、何か設定しなければいけないものがあるんでしょうか?
(認証方法をtrustにすると、tcp/ip経由でもログインすることは可能になります)
0791☆☆☆☆☆
02/12/08 05:20ID:mpITnhtZ0792nobodyさん
02/12/08 12:55ID:???http://developer.postgresql.org/docs/postgres/client-authentication.html
0793nobodyさん
02/12/08 16:53ID:CK0ZspDsMacOS X のエクセルで作ったcsvファイルをインポートしたいんですが、
うまくいきません。たぶん、sjisからuecに変換すりゃいいとおもうのですが、
TextEditでEUCにして保存してもエラーがかえってきてしまいます。
で、MacOS Xで動くPostgreSQL用のGUIクライアント(ファイルインポート付き)という都合の良いものはないでしょうか。
当方、筋金入りのマカーなのでWindowsなんてものは自宅にありません。すいません。
0794nobodyさん
02/12/08 17:49ID:???エラーが出る前後のデータをよく見てみれば?
0795nobodyさん
02/12/08 18:59ID:J0X/eNGYエラーメッセージを書こう。
0796nobodyさん
02/12/09 16:35ID:8KLf+wGF犬 | ゴン助 | 中型
犬 | カール | 小型
猫 | チャトラン | 長毛
猫 | クロ | 短毛
というテーブルと
犬 | 01
猫 | 02
というテーブルがあった場合、VIEWなりで検索結果を
犬 | 01 | {パトラッシュ,ゴン助,カール} | {大型,中型,小型}
猫 | 02 | {チャトラン,クロ} | { 長毛,短毛 }
なり
犬 | 01 | {{パトラッシュ,大型},{ゴン助,中型 },{カール,小型}}
猫 | 02 | {{チャトラン,長毛},{クロ,短毛 }}
なんて配列に格納し直す方法って、ありますか?
サブクエリーでは、複数の検索結果を入れ込むことが出来ず、やはり
FUNCTIONを作ってLOOPなりWHILEなりで回すものでしょうか?
0798nobodyさん
02/12/09 20:33ID:KNhGAZpk*.sqlを間違えて削除してしまいました・・・(泣)
0799nobodyさん
02/12/09 22:13ID:???データを出さずにテーブル定義だけを出力するオプションもあったはず。
0801nobodyさん
02/12/10 12:53ID:???ものをSELECTするってどういうSQL書けばいいんだっけ?
0802gn355my0
02/12/10 14:04ID:???あ〜 そーゆーの昔流行ったよね〜
オトコにはあるけどオンナにはないもの
とか
ポパイは2でオリーブは1
とかってやつだろ?
この問題は難しいなぁ。。。もうちょっとヒントくれない?
0803nobodyさん
02/12/10 14:29ID:8bCVhaMrFROM区でAとBをLEFT JOINして、WHERE区でB.idがNULLのヤツだけ選べ。
漏れの借りてる鯖のPostgresは7.0.3だから、JOINが使えなくて試せなんだ、すまん。
0804801
02/12/10 17:41ID:???ありがとうございます。
SELECT * FROM table_a NATURAL LEFT JOIN table_b WHERE table_b.id = NULL
で出来ました。
0806nobodyさん
02/12/13 11:00ID:kiLZZUkt他にもこの現象起きてる人っている?
0807bloom
02/12/13 11:02ID:wUIKbYLkhttp://www.agemasukudasai.com/bloom/
0808nobodyさん
02/12/16 13:10ID:???SERIAL型は追加できないのでしょうか?
ALTER TABLE T_EmpEmerg ADD seq_id SERIAL;
0809nobodyさん
02/12/16 15:21ID:???テーブル名はtestね。
serial型を追加しようとすると、
ERROR: Adding columns with defaults is not implemented.
Add the column, then use ALTER TABLE SET DEFAULT.
と言われたから指示通りに
create sequence test_id_seq;
alter table test add column id integer;
alter table test alter column id set not null;
alter table test alter column set default nextval('public.test_id_seq'::text);
とやったらできた。
ちょっとは自分で試してみたの >808
0810nobodyさん
02/12/16 16:20ID:qVo6yZm2問い合わせ結果でnullのときは0を返し、そうでないときは結果そのものを返す、
としたい場合は、どうしたらよいのでしょうか。
0811nobodyさん
02/12/16 16:34ID:???ALTER TABLE test ADD seq_id SERIAL;
としたらエラーになったので
ALTER TABLE test ADD seq_id SERIAL SET DEFAULT 0;
とかやってました・・・。
先にCREATEするんですね。ありがとうございました!
>810
CASEをつかえば出来ると思います。↓
http://www.postgresql.jp/document/pg721doc/user/functions-conditional.html
0812nobodyさん
02/12/16 17:25ID:???810です。
CASEでできました!
ありがとうございました。
0813nobodyさん
02/12/16 18:07ID:ahIqt+Qvますた。
6.5.3って outer join の概念さえないって本当れすか?
0814nobodyさん
02/12/16 18:12ID:???0815nobodyさん
02/12/16 18:15ID:ahIqt+Qv0816bloom
02/12/16 18:44ID:A19iV2CPhttp://www.agemasukudasai.com/bloom/
0817nobodyさん
02/12/16 18:46ID:???outer join がどういう集合かをよく考えましょう。
たとえばテーブル a と b についてそれぞれの id 列で left outer join するなら
select .... where a.id = b.id union select .... where a.id not in (select id from b);
みたいな感じでいけたと思います。
7.1 が出る前は PostgreSQL の FAQ みたいなもんだったので、探せばこの辺の
解説をしてるドキュメントが色々見付かるんじゃないでしょうか。
0818あぼーん
NGNG0819nobodyさん
02/12/17 14:52ID:6p0SRl9wpgadmin2も使ってみましたが、いまいちでした、、
Enterprise Managerみたいのが、あると良いなぁ、、
0820nobodyさん
02/12/17 17:36ID:6p0SRl9wpsqlで、フィールドの削除のやりかたが分からないのです。
7.3ならできるのでしょうか?
0821nobodyさん
02/12/17 18:18ID:???7.3は知りませんが、7.2.3ではカラムの削除について下記に書いてあります。
http://www.postgresql.jp/document/pg721doc/reference/sql-altertable.html
下のほうです。
0822nobodyさん
02/12/18 23:06ID:???GRANT ALL ON * TO PUBLIC;
みたいなのでできれば楽なんだけど。
0823nobodyさん
02/12/19 02:30ID:FGefAUMKPostgreSQLのバキュームについて教えてください。
当方6.5.?なので、バキュームは非常に不安定です。
また、バキュームだけではインデックスは作り替えてくれません。
ですので、代わりにDBのメンテとして
pg_dumpでバックアップし、dropdb,createdbをして
psqlで復元するという方法を使おうと思うのですが、
問題ないですか?
(一度バキュームでDBが壊れたことがありますので。。。)
0824nobodyさん
02/12/19 18:24ID:???timestamp without time zone で作ったカラムを with time zone で取り出したりできまつか?
仕様ころころ変えんなやなぁ。
0825nobodyさん
02/12/20 03:03ID:???0826nobodyさん
03/01/07 00:53ID:???http://usogres.good-day.net/
http://www.fastconnector.com/
こういうものもあるケド、実際にレプリケーション
やったという経験のある人の意見を聞きたいです。
0827nobodyさん
03/01/10 11:30ID:fFednd0xpostgresqlを稼働させています。
文字コードをEUC_JPにしたいのですが、
redhatデフォルトだと、
template1 | postgres | SQL_ASCII
とSQL_ASCIIになります。
ソースからインストールするときは、./configure
で指定するやり方は知っているのですが・・・
お手透きの時で結構ですので、ご教授願います。
0828nobodyさん
03/01/10 15:49ID:???Redhatは使ったことが無いのでどういったオプションで
コンパイルされてるかはわかんないけど、
initdb -E EUC_JPとかcreatedb -E EUC_JPではどうですか?
0830nobodyさん
03/01/11 03:02ID:???http://www.postgresql.jp/document/pg721doc/admin/multibyte.html
をみると、それでいいみたい。
0831nobodyさん
03/01/11 21:35ID:yqAMD38w0832山崎渉
03/01/15 13:33ID:???0833nobodyさん
03/01/16 16:40ID:ru9T9Sg6例えば、2002年12月中のデータだけ抽出するには、どんなパラメーター
で出来ますか?
強引に、
TIMESTAMP>'2002-12-01 00:00:00 AND TIMESTAMP<2002-12-31 23:59:59'
とすれば出てきますが、アプリケーションからパラメタとして引き渡すのに
しんどいです。
0834nobodyさん
03/01/16 19:19ID:n/WrAFU3WHERE to_char(TIMESTAMP, 'YYYY-MM') = '2002-12'; じゃダメ?
0835834
03/01/16 19:31ID:n/WrAFU3「2002年」だけとか「12月」だけとかなら、以下の方法でもいいかも。
http://ml.postgresql.jp/pgsql-jp-old/pgsql-jp/2000Jun/msg00574.html
1.誕生月を指定して、検索(SELECT)するには?
(6.5.3)
SELECT * from birthday from where date_part('month', birth)='6';
SELECT * from birthday from where date_part('month', birth)='06';
(7.0 or later)
0836834
03/01/16 19:35ID:???[pgsql-jp 15577] Re: 日付型のSQLについて
http://ml.postgresql.jp/pgsql-jp-old/pgsql-jp/2000Jun/msg00616.html
0837833
03/01/17 11:11ID:tgNj6nW9>>835
>>836
ありがとうございます。
試してみたら、めちゃくちゃレスポンスが悪かったです。
>>836の紹介記事にもあったのですが、変換したりすると、せっかく設定
したインデックスが使われないようです。
諦めて、しんどい方法でやっていくことにします。
0838nobodyさん
03/01/17 15:04ID:O7wqB+4aIs the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
createdb: database creation failed
というようなエラーが出てしまい、データベースを作成することができません。
postmaster は起動しているようです。
どうしたらいいのでしょうか?
0839vvv
03/01/17 15:15ID:RZuaWe8+★YAHOOOプロフィール★
0840nobodyさん
03/01/19 17:40ID:???man postmasterして-iオプションの項目を読め。
それでも分からなければ、どういう環境でどうやっらだめだったかを書け。
0842nobodyさん
03/01/20 17:54ID:Gy69YlCs遅レスすまそ。
レプリケーションは7.3で導入する予定だったんだけど間に合わず、
7.4に持ち越しになったんじゃなかったっけ?
というわけで、現行のレプリケーション用ミドルウェア?は
なくなるような気がする罠
0843nobodyさん
03/01/20 18:40ID:frlninEM0844nobodyさん
03/01/20 20:16ID:???レプリケーションは、アーキテクチャや実装、運用環境によって、
複数のソリューションが並立し得るので、
単一の実装に収斂していくということはないでしょう。
0845nobodyさん
03/01/21 21:43ID:k4hDw3acPostgres での負荷分散と分散トランザクションについての特集やってたよ。
かなり面白い。
0846nobodyさん
03/01/22 17:56ID:46vMCsSo端末は、主にwinから行っています。
SQLに関しては自信があまりありません。
SQLコマンドポチポチうって、テーブルの作成するの面倒でつ。
http://www.hi-ho.ne.jp/tsumiki/のCSEと言うツールを使っているのですが、
いまいちしっくり来ません。
webminのpostgresqlのツールは良いのですが、webmin自体
あまりインスコしたくありません。
なにか(・∀・)イイ!!ツールあったらおしえてください。
0847nobodyさん
03/01/22 18:23ID:aZrGkOwn0848hmk
03/01/22 18:45ID:skROudWDテキストエディタでテーブル定義のSQLを編集し、psql上にコピペしろ。
0849nobodyさん
03/01/22 18:59ID:???まぁテーブル定義のSQLは自分で書くわけだが。
0850nobodyさん
03/01/22 19:45ID:???psql -f table.sql でファイルを読ませればいいじゃん。
0851hmk
03/01/23 00:21ID:???0852nobodyさん
03/01/23 01:33ID:aJndFgwsを使って住所録を作ってます。
そこに「最初に登録した日付」と、「最終更新日」をいれようと
思ってるんです。
最終更新日をTIMESTAMPにすればいいというのは、
検索してわかったんですが、最初に登録した日付というのは
どういう設定をすればいいでしょうか。
0854ほげ
03/01/23 10:36ID:Vttepi7gdefault now,
ほげほげ。
0855nobodyさん
03/01/23 15:18ID:2Xl85Zl1"pg_relcheck" does not exist
になりました。pg_relcheckはなくなっちゃったんでしょうか。
0856nobodyさん
03/01/23 16:16ID:MK3OE1fp★こんなサイト見つけました★
0857nobodyさん
03/01/23 17:24ID:zqFajCIjこのページを pg_relcheck と pg_constraint でページ内検索してごらん。
http://osb.sra.co.jp/PostgreSQL/7.3/changes.html
0858nobodyさん
03/01/24 20:45ID:+YoyoLvT0859nobodyさん
03/01/27 23:38ID:qiTUaeBV$ psql -U username dbname < database/database.pgsql
と実行すると
\connect: FATAL: user "root" does not exist
となってしまいます。どの設定(環境変数?)を訂正すれば
よいのでしょうか。
0860nobodyさん
03/01/28 15:08ID:oYLjlQQn0862nobodyさん
03/01/29 20:04ID:TOlFKMtQ複数テーブルの特定の列の中から検索したいんです
下記のようにテーブルを必要なところだけ結合して
そのあと検索文字をいれればいいと思ってたんですが
SELECT A.m,B.n FROM A,B WHERE A.o = B.o
このあとに検索したい文字をいれてもだめなんですよね?
0863nobodyさん
03/01/29 21:11ID:???SELECT A.m,B.n FROM A,B WHERE A.o = B.o AND A.m LIKE '検索言葉%'
はできましたが、
A.m,B.nに対して同じ検索言葉で検索をかけたいんですが
どうすればいいでしょうか・・・
0864nobodyさん
03/01/29 22:03ID:???WHERE ( a.a = b.a OR c.c = d.c) AND (e.e = f.f)
とかそういう単純な話ですか?
SQLはどこで(あるいはどの本で)勉強してます?
0865nobodyさん
03/01/31 18:45ID:9q8lNi9S0866nobodyさん
03/02/03 00:09ID:NaYZglLl最近のWin版ポスグレは、どうなのん?
http://download.desk.ne.jp/win/2/00026/4991.html
http://www.nonsensecorner.com/pgsql/
0867nobodyさん
03/02/03 01:05ID:???一年半ぐらい前に入れたときは自分でcompileしたんだが今のはcygwinのインストール時にインストールできる。
性能はどうだろうなぁ。普段使ってるLinux鯖はCPUパワーも違うのでよく分かんないや。
Win用apache、PostgreSQL@cygwin、php@winでちょっと遊んでみたけど、
ローカルで実験するには問題ないみたい。
ついでにFireBird、MySQLも入れてみたが、どれも正常に動いた。
0868nobodyさん
03/02/03 01:18ID:lZTOrefbアクセス権限付けれん?
grantだとテーブルごとじゃんか
0869nobodyさん
03/02/03 02:12ID:???せめて個人用途向けにはFreeで出して欲しかったよ。
Native版pgsqlの作者もPowerGresの開発に携わっていたみたいだが、
7.3.1用psqlは作っていたからその後も継続すると思うんだが。
0870nobodyさん
03/02/03 10:57ID:avIlzK7i0871nobodyさん
03/02/03 16:28ID:KAKRkF84WinならFirebirdだろやっぱり。
0872nobodyさん
03/02/03 20:46ID:UWLHra2gまだベータなのでしかたないのかもしれないけど。
CREATE TABLE test (
code VARCHAR(64) NOT NULL,
field001 VARCHAR(64) NOT NULL,
〜
field032 VARCHAR(64) NOT NULL,
PRIMARY KEY (code)
)
(本当はfieldをもっと増やしたかったけど、firebirdの制限に引っかかるため)
これに3万レコードINSERTして、
SELECT * FROM test ORDER BY code;を発行すると、
MySQL-MyISAMが00:13:79
MySQL-InnoDBが00:09:413
Firebirdが00:14:010
PwerGresが13:06:851
ちなみにテストして思ったけど、FirebirdのJDBCドライバってリークしてない?
0873nobodyさん
03/02/04 01:18ID:1kJ2WuvK0874nobodyさん
03/02/04 01:48ID:???元になってるInterBaseは実績あるよ。
続けるならスレ違いになりそうだから、プログラム板にどうぞ。
てか、最近そっちにスレがあることに気付いた(w
0875873
03/02/04 11:18ID:1kJ2WuvKThx!!
0876nobodyさん
03/02/04 13:12ID:P8TNJ8CdPowerGresに期待したいのだが、こっちも微妙だ。
0877nobodyさん
03/02/04 13:56ID:1kJ2WuvK0878nobodyさん
03/02/04 14:00ID:P8TNJ8Cd0879nobodyさん
03/02/04 18:54ID:ECWcc/cR5.0で実装されるらしいけど。
サーバーサイドでFirebirdを使った場合、
同時アクセス200以上に耐えうるかも疑問。
SQLServerだと200くらいから性能が落ちてくるみたいだし。
http://www.eweek.com/article2/0,3959,293,00.asp
0880nobodyさん
03/02/04 19:48ID:Ogsd33ZD■ このスレッドは過去ログ倉庫に格納されています