トップページ⇒php
1001コメント345KB

PostgreSQL

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2001/05/09(水) 11:36ID:GHX.oCXo
PostgreSQLについて語りましょう。
関連アプリケーション特有の話題は、以下のスレッドへ。

☆関連スレッド
[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
0027名無しさん@お腹いっぱい。2001/06/14(木) 08:12ID:N.VaDaWU
PostgreSQL ODBCでAccess2000上にリンクテーブルを新規作成しようとしているのですが・・・


ODBC--呼び出しは失敗しました。
Could not connect to server.
Could not connect to remote socket.(#101) [Microsoft][ODBC Driver Manager]

と言われてしまいます。
どうしたらよいのでしょうか?
#これだけでは情報が足りないのかもしれませんが、
#しかし、どういった情報を提示すれば皆様にお助けいただけるか分からないため、
#それもお教えねがえますでしょうか?
0028名無しさん@お腹いっぱい。2001/06/14(木) 08:46ID:???
>>27

エラーメッセージ読めば分かるだろ。
0029名無しさん@お腹いっぱい。2001/06/14(木) 15:07ID:???
Postgreでtextカラムにでかい文字列入れたらそのテーブルが壊れる(selectも利かなくなる)って
聞いたことないでしょうか?
0030名無しさん@お腹いっぱい。2001/06/14(木) 15:08ID:???
Postgreでtextカラムにでかい文字列入れたらそのテーブルが壊れる(selectも利かなくなる)って
聞いたことないでしょうか?
0031名無しさん@お腹いっぱい。2001/06/14(木) 16:00ID:bZl.pTIs
どれくらいの文字列だ?
0032292001/06/14(木) 16:15ID:???
二重スマソ。

>>31
破損時にinsertしたのがおおよそ4k。発生しない場合もあります。
何kだから発生するというものではないようです。
0033名無しさん@お腹いっぱい。2001/06/14(木) 17:06ID:bZl.pTIs
ラージオブジェクトを使ってない前提で確か1レコード8kまでは
いけるはずだったと思うよ。
昔掲示板作ったけど内容の部分を4kで規制してるが問題なく動いてる
0034292001/06/14(木) 17:54ID:???
ある程度正常なデータをinsertしておいてから長いSQL文等でpg_exec()のエラーを
起こすと発生するようです。「ようです」としか書けないヘタレで申し訳ありませんが。
0035292001/06/14(木) 18:02ID:???
環境。
Apache/1.3.20
PHP Version 3.0.18-i18n-ja-2
PostgreSQL 6.5.3
0036272001/06/14(木) 18:10ID:ObjdY6qg
Could not connect to remote socket
の原因が分からないもので・・・。
「詳解PostgreSQL入門」の通りにやったはずなのですが・・・
0037272001/06/16(土) 06:00ID:1YgBviPk
postmaster でiオプション付けるの忘れてました。鬱だしのう
0038名無しさん@お腹いっぱい。2001/06/18(月) 00:16ID:4Y6BFwKU
>>35
そのPostgreのバージョンはvacuumするとデータが壊れちゃう
バージョンだけど、そのせいじゃないの?

vacuumかけると、データが壊れるらしい。。。
0039名無しさん@お腹いっぱい。2001/06/19(火) 00:16ID:???
7.1.2 にすると、無制限になるはず。
0040名無しさん@お腹いっぱい。2001/06/20(水) 18:41ID:CEGcishk
MLで非常に気になる発言が・・・。

[pgsql-jp 21916]
>  主キーの1つを検索する場合にはインデクスの全体がオンメモリに入っていな
> くてもそれほどパフォーマンスが落ちるとは思えません。たとえば1ページに
> 200件のエントリがあるとして、3回アクセスで 200×200×200で8,000,000件の
> データを網羅できますから、データ本体へのアクセスを含めてせいぜい4回のディ
> スクアクセスで済むはずです。200件というのは大雑把に言っただけで根拠があ
> る数字ではありませんが、仕組みを理解すれば30万件を過ぎたら急にパフォーマ
> ンスが落ちるということが起こりにくいと推測できます。ただしこれはB-Treeが
> バランスよく構成されている場合の話です。

マジすか、これ?
俺の想像していたのと全然違う・・・。
0041名無しさん@お腹いっぱい。2001/06/20(水) 18:49ID:628tfmwg
>>40
どう想像してたの
0042夜勤 ★2001/06/20(水) 18:54ID:???
ちょっとテスト
0043名無しさん@お腹いっぱい。2001/06/21(木) 10:46ID:oxRjCmRE
>>41
2^22 < 8,000,000 < 2^23ですよね。
だから、800万件のインデックスアクセスは、最大23回のアクセスが必要。
平均は・・・うーん、解らない。12回、じゃないよね。

ただし、同じブロック内にn回目、n+1回目、・・・がある場合もあるからディスク
アクセスの回数はそれなりに減るけど、「せいぜい4回で」というのはどうも
納得できません。
0044名無しさん@お腹いっぱい。2001/06/22(金) 11:27ID:WswC8UUc
B-Treeはbinary treeでは ないよ。ノード数がもっと多い。
アルゴリズム辞典でも調べるべし。
0045名無しさん@お腹いっぱい。2001/06/22(金) 12:03ID:4sT6WJJU
B-Treeについて、勘違いしてました。昨日からいろいろと調べてみました。

でも、さらに疑問が。
> 1ページに200件のエントリがあるとして
これは一体どういう意味なんでしょう?N=100ということ?

また、「せいぜい4回のディスクアクセス」というのは、「木の高さはせいぜい4である」
ということですよね?
何故これが言えるのでしょう?
0046名無しさん@お腹いっぱい。2001/06/25(月) 17:09ID:ejiw8dks
そこから先は実装にもよるし、ソースを読んで納得してもらうしか。
0047rissen-truchi2001/07/13(金) 03:47ID:IdnCE2mY
どこかしこで初心者質問していて非常に恐縮なのですが教えて下さい。
redhat7.0+postgresql7.0でpgaccessを使おうと思いました。

まずlinux版を導入しようと思って、/usr/local上にpgaccessを展開して、
/usr/binにシンボリックリンクを張りました。「pgaccess testdb」で
起動しようとしたところ、invalid command name "image"とのエラーが。
/usr/local/pgaccess/main.tclの5行目のimageというコマンドが実行
出来ていないみたいです。

とりあえず問題は棚上げしてWindowsでpgaccessを導入しようと思いました。
Windows2000にtcl/tkを入れてpgaccessを導入しました。main.tclを
起動するとpgaccessが起動したのですが、「database」「open」で繋がっている
linuxマシンに接続しようとしたら
Is the postmaster running (with -i) at 'localhost' and accepting
connections on TCP/IP port '5432'?
とエラーメッセージが出ます。
postmasterに-iは付けて起動しているのでその点は問題なさそうなので、
localhostの名前が違ってるかport5432が閉じているかという所でしょうか。
ちなみにlinuxでユーザ名postgresで接続しているときに、コンソールで
[postgres@localhost postgres]$と表示されていたらWin2000からの接続先の
名前はlocalhostでいいんですよね?
そうするとport5432が開いているかどうかも確認する必要ありでしょうか。

linux版でもwindows版でもどちらでもいいので、pgaccessが動くようにしたいです。
どなたか上記書き込みから何か分かる事は無いでしょうか。
0048名無しさん2001/07/13(金) 04:44ID:eePtt3OA
漏れは、WindowsからCommon SQL Environment使って、
開発するぞ(゚Д゚)ゴルァ
http://www.hi-ho.ne.jp/tsumiki/

他にもいいのが有ったら教えれ。
0049名無しさん@お腹いっぱい。2001/07/13(金) 13:29ID:???
日記の検索システムを作ろうと思ってるのですが、date型で7月分だけを選択とか、textである文字列を検索というのをselect文でやろうとしたのですが、やり方が分かりません。
どうやればできますか?
0050名無しさん2001/07/13(金) 14:06ID:???
7月分は、'2001-07-01'::date + '1 month'::interval とかつかって検索かな?

textの検索は、正規表現使って、WHERE mojiretsu ~* '.*h[ao]ge.*'とするか、
それで速度に不満が出れば、Chasenとかで単語を抜き出してインデックス作ったり、
全文検索ソフトのNamazuと組合わせたりするのがいいと思う。

自信無いけどな。
0051492001/07/13(金) 22:56ID:TzQ65wDI
ありがとうございます。>50
取り敢えず7月分ってのは
select * from hoge where date =< '2001-07-01' and date > '2001-08-01'
って感じでやりました。
全文検索はソースがあるページとかないですかね?
0052名無しDB2001/07/13(金) 23:57ID:???
Postgreでもtext型の中を検索することはできるけど、
それをやるならnamazuのがいいよ。

Postgreでやると、ホントに、1文字づつ全文検索する
ことになるから、文章の検索ならnamazuだね。

ちなみに、もし Postgreを使う場合のやり方は

nikki_bunsyo like '%日記%'

とかって書くよ。この場合 nikki_bunsyo 項目の中で
日記の文字がつくレコードが全部選択されるよ。
でも、この方法は負荷がメチャ高いからほどほどに。。。
005350じゃないけど2001/07/14(土) 07:25ID:???
>>52 PostgreSQLは正規表現のマッチングもできるのは>>50の書いた通り。
それでもあえて%を薦めるのは速度のため?
0054名無しさん@お腹いっぱい。2001/07/24(火) 02:04ID:goR17G.A
DBのモデル図は何を使って書くのがいいのでしょう?
VisioProEditionを使ってみたのですが、MSAccessやOracleには対応しているそうですが、
Postgresには対応していないみたいで。。。
0055名無しさん@お腹いっぱい。2001/08/05(日) 04:08ID:qlDpZz.I
テーブルAにれこーどを登録したあと、
そのときにデフォルトで登録された列(というか、シリアル値のID)が何番かを、
参照するにはどうすればいいのでしょう?
0056名無しさん2001/08/05(日) 04:34ID:jKHgi2nI
select currval('hage_seq');
じゃねいの(´Д`)y-~~
0057名無しさん@お腹いっぱい。2001/08/05(日) 05:41ID:qlDpZz.I
あ、なるほど。
ところで、知りたい列がシリアルではない場合、
何が入れられたかを参照する方法はありますか?
0058コメント無しさん2001/08/05(日) 06:17ID:???
>>54
対応してるっていっても、ERからテーブル作成のスクリプト吐いてくれる
だけで。
それが使えるのも結局最初だけだから、Visioでいいんじゃない?
0059さる2001/08/05(日) 06:30ID:???
↓のような場合、もっと別のスマートな書き方がありますか?
ちなみに、TODOテーブルに登録されている「TODO」のタイトル、本文、および、ジャンル名を表示するSQLで、
ジャンル名は別テーブルGENREからIDでひっぱっています。
で、IDが割り当てられていないときのみ「未分類」としたいのですが

SELECT a.title, a.body, b.genrename
FROM todo a, genre b
WHERE (a.todogenreid = b.genreid)
UNION
SELECT a.title, a.body,'未分類' AS genrename
FROM todo a
WHERE (a.todogenreid = NULL)";
0060電動ナナシ2001/08/05(日) 17:48ID:T/JQahRQ
>>59
PostgreSQL 7.1 以降なら、outer join を使えばいい。

SELECT a.title, a.body, NULLIF(b.genrename, '未分類')
FROM todo a LEFT OUTER JOIN genre b ON a.todogenreid = b.genreid;
0061名無しさん@お腹いっぱい。01/08/30 23:08ID:M8F0Dr3g
正規化についていい書籍またはwebページとかあったら教えてください。
0062名無しさん@お腹いっぱい。01/08/30 23:27ID:FDHNcC5c
正規表現とかでも前方一致検索だとまだ早いのか。へー
0063名無しさん@お腹いっぱい。01/08/30 23:38ID:lbHU/sz6
A|B
------
1|あ
2|い
3|う
4|お

なんてテーブルがあったとします。
カラムBのデータのみ配列に入れたい場合、
つまり、array(あ,い,う,え,お)としたい場合は
どうしたら良いのでしょうか?
行の配列格納なら簡単に可能ですが、列の配列格納は
ひとつずつ読み込んでいくしかないのでしょうか?
0064名無しさん@お腹いっぱい。01/08/31 00:18ID:cTlje8/Q
>>63
array(あ,い,う,お)
でした。
0065名無しさん@お腹いっぱい。01/08/31 06:42ID:8Ot53tF2
行の配列格納って簡単なの?そーなの?
0066名無しさん@お腹いっぱい。01/08/31 09:36ID:OPUkQPbU
PHPを使ってという大前提が抜けてました。
行の配列格納はpg_fetch_rowとか使えばできます。
0067名無しさん@お腹いっぱい。01/08/31 10:13ID:8Ot53tF2
postgresの話っていうよりDBを扱う言語(のライブラリ)の話ですな。
pg_fetch_array()をループで回すのが普通みたいですね。
0068名無し三脚01/08/31 10:36ID:N78y3VFE
pgsqlに流れてた石井さんのpgstattupleってどうですか?
ftp://ftp.sra.co.jp/pub/cmd/postgres/pgstattuple/pgstattuple-0.1.tar.gz
漏れは厨房なので、ここの偉い人の感想キボンヌ
0069名無しさん@お腹いっぱい。01/09/05 20:10ID:dYMWGvtU
WindowsでPostgreSQLって今どうなってるんだっけ?
0070名無しさん@お腹いっぱい。01/09/05 20:38ID:iE4iOxe.
あげ
0071名無しさん@お腹いっぱい。01/09/06 15:51ID:a4GcKC6.
すみません教えてください。
タプルって意味なんですが・・・
カラム(行数)=タプルって言う解釈でいいんでしょうか?
0072コピペでGo!01/09/06 16:28ID:8PdBtivg
>>71
カラム <> タプル
タプル = 行

http://www.rccm.co.jp/~juk/pgsql/faq-japanese.html
より (っていうか、あんたのディスクにも入ってない?)

4.18) PostgreSQL で使われるいくつかの用語の意味は何ですか?

いくつかのソースコードや古い文書の中には、それぞの専門分野の中でもっと一般的に
使われる専門用語が使われています。


・ テーブル(table)、関係(relation)、クラス(class)
・ 行(row)、レコード(record)、タップル(tuple)
・ 列(column)、フィールド(field)、属性(attribute)
・ 取得(retrieve)、選択(select)
・ 置換(replace)、更新(update)
・ 追加(append)、挿入(insert)
・ OID, 連番(serial value)
・ ポータル(portal), カーソル(cursor)
・ 領域変数(range variable)、テーブル名(table name)、テーブル別名(table alias)

一般的なデータベース用語のリストは: http://www.comptechnews.com/~reaster/dbdesign.html で見つけられます。
0073名無しさん@お腹いっぱい。01/09/06 17:19ID:l3o4Kuog
>72さん
わかりました。ありがとうございました。
0074名無しさん@お腹いっぱい。01/09/07 15:54ID:H1pdW9FE
pgbenchでのベンチマーク結果について教えて下さい。
pgbench hoge -t 1000 と実行した所,

number of clients: 1
number of transactions per client: 1000
number of transactions actually processed: 1000/1000
tps = 26.423163(including connections establishing)
tps = 27.191780(excluding connections establishing)

となりました。つまり、1000トランザクション実行し終わるのに
大雑把な計算で、1000/27=37秒かかるという認識で宜しいのでしょうか?

当方、CPU:P2-233,メモリ:64M,postgres7.1.1での結果ですが、ミドルクラス
PCではどのくらいになるか教えて頂ければ、買い替えの参考になり非常に助かります。
0075名無しさん@お腹いっぱい。01/09/07 16:21ID:8FwfcxVs
普通のSQLの質問してもよろしいでしょうか。
(間違っていたらスレッドを教えて下さい)

update AAA set Fn = "hoge"
where Fn is null;

Fnに複数のフィールドを一度に設定したいのですが可能でしょうか。
フィールドが100個くらいあるデータで、データがnull値の時は
hogeに置き換えろって事なんです。
一度に設定できないと、100回フィールド名を変えなければならないのでかなり大変な作業になります。
どうかお願いします。
00767501/09/07 16:25ID:8FwfcxVs
ただしテーブル全体を検索対象っていうのはだめなんです。
F1〜F10まで くらいの間隔なんで。
0077名無しさん@お腹いっぱい。01/09/07 19:13ID:bNMP41Og
age
0078名無しさん@お腹いっぱい。01/09/07 21:10ID:fbb/xWKg
お腹がタプる。
0079名無しさん01/09/07 22:02ID:iS1WYxjU
>>75
何がやりたいのかよく分からんが、default値使えないの?
0080名無しさん@お腹いっぱい。01/09/09 01:00ID:???
使い始めて3日目ー。
表の各列の型情報一覧を表示させるコマンドってありませんか?
すぐ忘れてしまいます。

>>75
同じ事態になりました。時間がなくて、copyコマンドで書き出してnkf -sして
ftpでwinに持っていってエクセル(アクセスは無理)で「置き換え」で空白をNULLにしてタブ区切りのテキスト出力してlinuxに再び持っていってnkf -eして
copy hogetable to '/tmp/hoge.txt' with null as 'NULL';
っつーアホなことをしました。
あーあ。
00818001/09/09 01:02ID:gDhospho
copy hogetable to '/tmp/hoge.txt' with null as 'NULL';
to じゃなく fromだ。
鬱氏
0082名無しさん@お腹いっぱい。01/09/10 07:42ID:???
>>69
サーバーならCygwinで動かすのとWinネイティブのがあるけど
ネイティブなのは1セッション限定なので遊びにしか使えん
Cygwinのはまだマシだけど運用は無理だろうな
0083名無しさん@お腹いっぱい。01/09/10 11:16ID:bMbW9tU6
Great Bridge操業停止ー
どこも不景気なのね。
0084名無しさん@お腹いっぱい。01/09/10 14:48ID:CV8.18JQ
>>82
ありがとありがと
自マシンでテスト用だったら使えるって感じなのかな
0085名無しさん@お腹いっぱい。01/09/13 20:31ID:h.lgqqlI
大きなchar型とかtext型の中を検索したいんですけど、>>50−52の方法ぐらいしか一般的なのはないんでしょうか?

あと・・・
pgnmz.cが使えそうな感じだとreadme.txtから読み取れたんでコンパイルしようとしたんですが・・・

VARSIZE(retp) =

ってやってる行全部で左辺値が変だって言われてコンパイル失敗するんです・・・。
これのコンパイル方法誰か教えてお願い。。

環境:pg/7.1.2
    なまず/2.0.7
    gcc/2.95.2.1
0086名無しさん@お腹いっぱい。01/09/13 22:53ID:Nq5e6DE2
よこやり
pgnmz.cってどういうものですか(汗?
0087名無しさん@お腹いっぱい。01/09/14 10:49ID:VVeFQun.
煽られてるのかまじめに聞かれてるのかよくわからないけど(;´∀`)

りーどみーからこぴぺ
■PGnamazuとは
 PostgreSQLから,namazuの全文検索結果を参照するためのユーザー定義関数です。

これのソースコード。

うーん、まだコンパイルできないよう
008885=8701/09/14 12:16ID:???
めーくふぁいるの
../intl/hogehoge.o \
を全部カット

VARSIZE(retp) =
となってる部分を
VARATT_SIZEP(retp) =
に置換

で一応コンパイルは通った。さて、、、後はぽすとぐれすから検索出来ればいいんだが。。
これで駄目ならあきらめよーっと( ・∀・)y━~~
0089名無しさん@お腹いっぱい。01/09/14 19:32ID:???
誰が見てるかわからんが(誰も見てないな)一応報告。。

まず、何故かintl/以下の*.oが作成されなかったので、ネットで強引に.oファイルを拾ってきてこぴぺ(ぉぃ

なまずは2.0.5を使用。

これで一応psqlから関数が使えるようになりました。
が、まだ検索がうまく・・・・・・・

(−_−)鬱だし脳
0090ななしさん01/09/14 21:44ID:I5Sj1HiA
厨房の漏れに優しく教えてくれてありがとう。
でも、PostgreSQLって、PHPとかPerlとかと併せて使うのがメジャーだけど
それでもPostgreSQLからnamazuの検索結果を参照するメリットってどこにあるのかな。
0091名無しさん@お腹いっぱい。01/09/15 01:00ID:6vm7gPGI
Yahoo!みたいなカテゴリって、postgres(つーかsql)で、
どういう設計をすればいいのえしょう?
図書館みたいなn進法しか思いつかない。。。
0092電動ナナシ01/09/15 02:19ID:41dU1HoU
>>91
ここを見るといいと思う。ちょっと古いが。
http://www.webreference.com/perl/xhoo/php1/
0093名無しさん@お腹いっぱい。01/09/15 11:25ID:yhMUGX2Y
>>89
見てる見てる。報告待ってる。
00948901/09/16 13:04ID:???
>>93
メインマシン死亡につき一時避難中ですが、がんばりまーす
00959101/09/19 22:42ID:kmLdS2pE
>>92
ありがとうございます。
なるほど、カテゴリについて、「おやカテゴリ」というフィールドを作るほうがフレキシブルですね。
ところで、もし1つのURLに対して、複数のカテゴリを割り当てる場合、
やはり、「カテゴリ割り当てマスタ」みたいなテーブルをつくって、
link_id category_id
---------------------
1 3
1 5
1 14
2 4
2 6
2 14
みたいにするのが順当なんでしょうか?
(自分にはそれしか思いつかない)
0096電動ナナシ01/09/20 03:35ID:Mw5BZ/Is
>>95
それでいいでしょ。

テーブルのデータ量が気になるなら、ビットでカテゴリ表現することにして、
OR を取った値を入れてもいいかも。カテゴリが多いと使えないが。
ex.)
カテゴリA = 0x01
カテゴリB = 0x02
カテゴリC = 0x04
X というリンクがカテゴリ A と B に属するなら、カテゴリ値は 0x03
(0x01 | 0x02 なので) となり、Y というリンクがカテゴリ A と C なら
0x05 (0x01 | 0x04) ・・・という具合。
0097名無しさん@お腹いっぱい。01/09/20 09:41ID:???
>>95
それでいいと思うんだけど、
そのテーブル内容だと、カテゴリ14にリンク1とリンク2両方が
張られてるのってどうなの?
カテゴリテーブルに link_id フィールド作っちゃえばいい気もする。
00989701/09/20 09:47ID:???
あ、俺の考えたリンクの意味が全然違うことに気づいたよ。
電波入った。鬱。
0099電動ナナシ01/09/21 02:35ID:FQe/4xL2
PostgreSQL for Win32 が同時複数セッション対応になったというアナウンスが
流れていた。
http://hp.vector.co.jp/authors/VA023283/PostgreSQL.html
0100名無しさん@お腹いっぱい。01/10/27 23:32ID:???
age
0101名無しさん@お腹いっぱい。01/11/16 17:20ID:Di9IWgGX
Sirial型が含まれるテーブルに
COPY hoge from 'hoge2.csv' using delimiters ',';
みたいなんで、テキストファイルインポートする事って可能ですか?
0102名無しさん@お腹いっぱい。01/11/16 17:35ID:???
>>101
SERIAL っつても所詮は int4 なのでインポート自体は問題ない
けど、SERIAL 値の再設定はいるよ。
0103名無しさん@お腹いっぱい。01/11/16 17:44ID:???
>>102
SERIAL型の項目に適当に重ならない数字はめたらいけました。
通常のInsertのように自動的にNoをふらせてのインポートは
不可能なんでしょうか?
0104名無しさん@お腹いっぱい。01/11/16 18:02ID:???
>>103
例えば。

CREATE TABLE テーブル名 (カラム名 SERIAL);

すると実際には

CREATE SEQUENCE テーブル名_カラム名_seq;
CREATE TABLE テーブル名 (カラム名 INT4 DEFAULT nextval('テーブル名_カラム名_seq');
CREATE UNIQUE INDEX テーブル名_カラム名_key ON テーブル名 (カラム名);

と SQL を実行したのと同じ状態になる。
どういうことかわかってもらえるかな?
0105名無しさん@お腹いっぱい。01/11/16 22:53ID:???
をおぉ、こ、これは…

postgresql.4dd.co.jpのホームページ:
http://www.jp.postgresql.org/
0106名無しさん@お腹いっぱい。01/11/17 13:54ID:fXBlmqnN
COBALT?
0107教えて君01/11/19 15:44ID:???
phpPgAdmin 2.3.1 で adv_auth = true にしてもpg_user.passwd を見に行ってくれないような気がするんですけど気のせいでしょうか?
ちなみに PostgreSQL 7.1.3 上です。
0108名無しさん@お腹いっぱい。01/12/05 18:50ID:???
すいません、教えてください
古い順番で100件をselectするのは

select * from hoge limit 100;

でOKですよね?
では新しい順番で100件をselectする場合はどうしてますか?
0109教えて君01/12/05 19:42ID:???
>>108
http://osb.sra.co.jp/PostgreSQL/Manual/PostgreSQL-7.1-ja/sql-select.html
0110名無しさん@お腹いっぱい。01/12/05 23:02ID:???
>>109
それをみてもわからないのです。。。鬱
0111名無しさん@お腹いっぱい。01/12/06 00:33ID:???
そもそも、古い順でselectできてるってのは気のせいだ。
そのページのORDER BYのとこを読め。
0112名無しさん@お腹いっぱい。01/12/06 16:13ID:ZWim4af9
例えば、DBに入っているデータと、静的作成されたページを同時に
検索でき、結果表示する方法とかないですかね??
namazuは、静的なページの検索のみなのかな?
0113教えて君201/12/06 20:41ID:6hzVUgau
Cでlibpqを使用しています。(postgreSQL7.1.2)
Varcharの列に
snprintfでSQL文を作り登録しているのですが
psqlから登録した文字列を条件でセレクトしてもデータを取得できないのです。
Cのchar型の終端文字列に問題があるのでしょうか?
実際characterlengthで文字数を取得すると一文字多いのです。
0114名無しさん@お腹いっぱい。01/12/06 21:03ID:???
\dでテーブル一覧表示させて
drop table発行しても、消えないテーブル(does not exist)
があります。どうしたら消せますか?
あと、大文字、小文字は関係あるのでしょうか?
OSはRedHat7.1 Postgres7.1です。
0115名無しさん@お腹いっぱい。01/12/06 21:11ID:???
>>114
権限がない or 大文字のテーブル名だから

基本的にCREATE TABLEコマンドを使って大文字でテーブルを作成しても小文字に直してくれます
が、odbcドライバとか使って仮に大文字のテーブル名になっちゃった場合は
テーブル名を小文字 or 2バイト文字のテーブル名に直した後データベースの再構築がいります
0116名無しさん@お腹いっぱい。01/12/06 23:34ID:???
>>114
DROP TABLE "OHMOJI";
0117 01/12/07 02:32ID:???
>>108
何を基準に並べるのか知らないが、仮に登録日順(create_date)に並べたかったら

(昇順)SELECT * FROM hoge ORDER BY create_date LIMIT 100
(降順)SELECT * FROM hoge ORDER BY create_date DESC LIMIT 100
0118名無しさん@お腹いっぱい。01/12/07 07:27ID:2/lCxAnu
postgresをいじるGUIなツールでwindowsでうごくものがあったはずなんですが、
名前がどうしても思い出せません。
略称で、アルファベット3文字だと思ったのですが・・・
どなたかご存知ありませんか?
0119名無しさん@お腹いっぱい。01/12/07 08:47ID:???
CSE(Common SQL Environment)のことかな?
http://www.hi-ho.ne.jp/tsumiki/
0120名無しさん@お腹いっぱい。01/12/07 10:57ID:???
>>118
ODBC経由でAccessとつなげるとかとか
0121名無しさん@お腹いっぱい。01/12/07 19:58ID:XHyaWtTT
select func(); で呼び出した関数内でSELECT文を発行したとき、
その結果セットを返すにはどうやればいいんでしょうか。

関数内で SELECT TBL FROM HOGE; とか書いても
表示してくれません。
012212101/12/07 19:59ID:XHyaWtTT
>>121
補足。
SELECT文は関数内でEXECUTEしてます。
0123親切な人01/12/07 21:10ID:???

ヤフーオークションで、幻の人気商品、発見!!!

今は無き「コピーガードキャンセラー」↓
http://page2.auctions.yahoo.co.jp/jp/auction/b18505597

ヤフーオークション内では、現在、このオークション
の話題で、持ちきりです。
0124名無しさん@お腹いっぱい。01/12/08 01:05ID:???
>>117様
遅くなりましたがありがとうございます。精進いたします
012512101/12/08 03:39ID:9UlfiqqN
>>121
自己解決。
012611801/12/08 08:17ID:BnyHCSQg
>>119
CSE(Common SQL Environment)のことかな?
そうそう、それです。ありがとうございます。
どっかのpostgres本でみかけたきになってて。。。

>>120
>ODBC経由でAccessとつなげるとかとか
それは、やってるんだけど、やはり制限があるから・・・
0127名無しさん@お腹いっぱい。01/12/11 01:14ID:dPLgUoIj
質問です。
データベースをpg_dumpで出力してテキストファイルに保存しました。
テキストファイルを別サーバーに移してpsql -f (ファイル名)で移しました。
sequenceのlast_valueが全て1にリセットされていて動かなくて困っています。
update文を使おうと思ったら変更できないとメッセージが返されました。
どなたかどうすれば変えられるか教えてください。
■ このスレッドは過去ログ倉庫に格納されています