PHP + PostgreSQL

このエントリーをはてなブックマークに追加
734nobodyさん:2006/07/07(金) 14:56:02 ID:AUesg1Gs
/usr/local/pgsql/.bashrc を書き換えたいのですが、bashrcというファイル名
のファイルが見つかりません。windowsのようにフォルダオプションに相当する
コマンドか何かあるのでしょうか?
735nobodyさん:2006/07/07(金) 15:41:15 ID:???
>>734
無ければ作ればいいんだけど・・?
通常は隠しファイルで見えないだけで、 ls -la とかやってみては?
736nobodyさん:2006/07/07(金) 22:39:50 ID:???
/usr/local/pgsql/.bashrcでいいの?
737nobodyさん:2006/07/08(土) 09:08:12 ID:???
>>736
ログインしたユーザーに環境変数をセットしてあげたいんでしょ?
だったら、その人のホーム直下に作らないとダメね。

 ~/.bashrc ね
738nobodyさん:2006/09/27(水) 15:35:11 ID:???
postgreSQL 7.3.1 + PHP
です。
$sql = "DROP TABLE IF EXISTS test";
pg_query($sql);

という感じで、 test というテーブルが存在する場合に DROP TABLEさせたいのですが
テーブルの存在はどのように判定したらよいでしょうか

上記では、pg_query がエラーを出してしまいます。
739nobodyさん:2006/09/28(木) 02:43:52 ID:???
IF EXISTS ってmysqlじゃないですか
740nobodyさん:2006/10/01(日) 13:01:09 ID:???
741nobodyさん:2006/10/01(日) 21:50:33 ID:???
以下のコードで、pg_insert()のエラーが出力されないのですが、エラーを取る方法はあるのでしょうか?

//'bool'カラムでエラー
$data = array('number' => 3, 'bool' => 'trueee', 'time' => date('Y-m-d H:i:s'));

$res = pg_insert($con, 'test', $data);
if (!$res) echo pg_result_error($res);

----------------------------------------------------------

pg_query()の場合は正常にエラーが出力されます。

$date = date('Y-m-d H:i:s');
$res = pg_query($con, "insert into test(number, bool, time) values(5, 'trueee', '{$date}')");
if (!$res) echo pg_result_error($res);

Warning: pg_query() [function.pg-query]: Query failed: ERROR: invalid input syntax for type boolean: "trueee"

環境
 windows XP
 PHP 5.1.4
 Apache 2.0.58
 Postgres 8.1.4

または
 FreeBSD 6.1
 PHP 5.1.4 or PHP 5.2
 Apache 1.3.37
 Postgres 8.1.4
742nobodyさん:2007/06/26(火) 15:17:35 ID:KNA8dvka
phpから、db_dumpの実行方法がわかりません。
もしかして、「psql.exe」を呼び出して実行させるプログラムが別途必要になってくるのでしょうか?
psqlからなら、出来たのですが、、、
743nobodyさん:2007/06/26(火) 15:25:27 ID:KNA8dvka
具体的には「pg_dump」を実行させて、データのバックアップをとりたいのですが、
pg_dump test_db > database_name.sql
をPHPファイルのどこに記入したら良いのかわからないです。
744nobodyさん:2007/06/26(火) 17:39:31 ID:???
system()で実行したらどうでしょうか
745nobodyさん:2007/08/25(土) 00:24:48 ID:???
文字コードの変換は、
PostgreSQLのSET NAMES

PHPのmb_convert_encoding
のどちらでやるほうがいいのでしょうか?
746nobodyさん:2007/09/03(月) 07:59:26 ID:KucjbbQW
初の質問です。
今php+postgresql+fedoracore4でシステムを作っているんですが、
どうも原因がpostgresqlにあるとわかってきました。
自分はDBを作るときまず文字コードをeucに変えて入力するんですが
invalid byte sequence for encoding "EUC_JP": 0xe988
というエラーがでます。
PHPのソースはhttp://www.mywave.co.jp/~ike50/chapter5.zip
にあります。
ぜひ教えてください。
747nobodyさん:2007/09/03(月) 13:19:55 ID:???
>>746
いやです。
関係ないところを削って
30行以内に収めてから出直してください。
748nobodyさん:2007/09/04(火) 02:28:15 ID:???
>>746
マルチは死んでください
749nobodyさん:2007/09/09(日) 02:29:17 ID:zQ9Ko6j+
fedora core4でphp+postgresqlをやろうと思ったんですが
DBが認識してくれません。
DBの部分がエラーになるので、画面が真っ白です。
やった人いませんか?
DB認識はパッケージではだめなんでしょうか?
ちょっとわかりずらいかもしれませんが、よろしくです。
750nobodyさん:2007/09/09(日) 09:10:26 ID:???
apacheのエラーログにはなんて書いてありますか?
751nobodyさん:2007/09/09(日) 11:02:45 ID:???
氏ねバカ、と書いてある。
752nobodyさん:2007/09/10(月) 06:56:33 ID:iLiEDXXm
PHPのconfigure時にPostgresqlが組み込まれているかしりたいです。
fedora core4でパッケージでphpをイントールしたのですが。
組み込まれているのでしょうか?
またこれ追加はできないのでしょうか?
後php info();で見てみたんですが、
dbx support enabled
dbx version 1.1.0
supported databases MySQL ODBC PostgreSQL Microsoft SQL Server FrontBase Oracle 8 (oci8) Sybase-CT SQLite
てでたんだがphpのconfigureの部分はなかった。
どうでしょうか?
753nobodyさん:2007/09/10(月) 14:55:10 ID:???
PostgreSQL(libpq) Version とか出てないのか?
754nobodyさん:2007/09/10(月) 20:00:15 ID:???
DB板のPostgreSQLスレに湧いていた馬鹿が、こんどはこのスレにきたか。消えろ。
755nobodyさん:2008/03/27(木) 13:58:14 ID:???
ユーザIDをキーに持つテーブルを作ってですね

SELECT * FROM TABLE1 WHERE USER_ID = 'T&E SOFT';

まあ、IDはサンプルですが、このように'&'を含む文字列を条件に指定すると結果が一行も返ってきません。
IDに対してpg_escape_stringをかけても結果は同じでした。
CSEやpgAdminではこのクエリーは普通に期待する結果を返してくれるのですが…。

何か特殊なエスケープ処理を行わなくてはいけないんでしょうか?
PostgreSQLはversion7.4
PHPは4.3.3
Apacheha2.0.46
です。
756nobodyさん:2009/05/15(金) 11:17:54 ID:WsVpM47h
質問です。
データベースに先生用テーブルと生徒用のテーブルがあります。
カラム名をtloginIDとsloginIDとして、
新規登録でログインIDの重複をチェックしたいと思っています。
SQL文を教えてください。
テーブル名は、teacherとstudentです。
757nobodyさん:2009/05/15(金) 11:23:15 ID:???
確認するけど、ログインIDの重複をチェックしてどう処理するの?
許可するの?弾くの?
758nobodyさん:2009/05/15(金) 11:30:37 ID:???
select count(tloginID) from teacher
select count(sloginID) from student で2以上なら重複あり
759758:2009/05/15(金) 11:33:25 ID:???
間違った
select count(*) from teacher where tloginID='hoge'

だな
760nobodyさん:2009/09/24(木) 09:08:59 ID:DwG28PME
トランザクションして select for update ってやれば、
selectした行はロックがかかって他の人はその行は参照もロックされて待たせられるのでしょうか?
761nobodyさん:2010/01/21(木) 14:04:11 ID:2fYoTKfz
いつも勉強させてもらっています。質問です。

いくつかのプロセスが残ってしまう問題で行き詰まりました。このような

hogehoge 31926 25387 0 12:04 ? 00:00:00 postgres: nanashi nanashi2010 192.168.00.00(37729) idle

のが数プロセス溜まってしまいます。
select * from pg_stat_activityとしてみても、確かにidleなものが確認出来ます。

PHP 4.3.2 + PostgreSQL 8.1.9 です。
pconnect関数、pgpoolも使ってません。

もし同様の問題についてご存じの方がいらっしゃいましたら、
アドバイスいただけるとありがたいです。
よろしくお願いします。
762nobodyさん:2010/01/21(木) 20:19:55 ID:???
いや問題じゃないので
763nobodyさん:2010/01/21(木) 20:37:51 ID:2fYoTKfz
>>762
仕様だ、ということですか?
764nobodyさん:2010/01/21(木) 21:46:20 ID:???
当然接続は明示的にcloseしてるよな
Apacheがプロセス持ってるからとか言うオチだったらぶっ飛ばすからな
765nobodyさん:2010/01/22(金) 17:15:36 ID:6+I3LoB3
>>764
もちろんしています。
Apacheプロセスについては、残っている場合とそうでない場合があり混乱しています。
通常、Apacheのプロセスが落ちれば残るはずは無いと思うんですが。
766nobodyさん:2010/12/02(木) 19:36:47 ID:JyGm6z0o
■環境
centos5.3
postgresql 8.1

http://www.hizlab.net/app/meibo.html
上記よりsqlファイルをダウンロードし
以下を実行したのですが、エラーがでるのですがわかる人いますか?
2002年位に作られたページみたいなのでpostgresのバージョン違いのためでしょうか?

[www@localhost ~]$ createlang plpgsql -d inet_db
[www@localhost ~]$ psql -f /home/www/meibo.sql -d inet_db
psql:/home/www/meibo.sql:16: ERROR: function m_update_editdata() does not exist
CREATE FUNCTION
psql:/home/www/meibo.sql:29: ERROR: table "inet_job" does not exist
psql:/home/www/meibo.sql:37: NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "inet_job_pkey" for table "inet_job"
CREATE TABLE
psql:/home/www/meibo.sql:41: WARNING: changing return type of function m_update_editdata from "opaque" to "trigger"
CREATE TRIGGER
psql:/home/www/meibo.sql:45: ERROR: sequence "seq_inet_profile_code" does not exist
CREATE SEQUENCE
psql:/home/www/meibo.sql:52: ERROR: table "inet_profile" does not exist
767nobodyさん:2010/12/03(金) 09:15:27 ID:???
存在しないってエラーが出て、その後作成しましたって出てるから作成されてるんじゃないの?
作成に失敗したってエラーが出てれば作成途中で終わってるだろうけど
768nobodyさん:2010/12/03(金) 23:43:10 ID:???
>>767
レスありがとうございます。
ソース(http://www.hizlab.net/view/app/meibo/meibo.sql)
をよく見たところ以下のようにDROP ナニナニ している部分を
コメントアウトしたところエラーがでなくなりましたが
新たに作ったデータベースに
DROP ナニナニ する作者の意図はなんなのでしょうかね?

-- 修正日/修正者を更新するトリガプロシージャを作成
DROP FUNCTION m_update_editdata();
CREATE FUNCTION m_update_editdata() RETURNS OPAQUE AS '
省略
-- テーブルの作成
DROP TABLE inet_profile;
CREATE TABLE inet_profile (
省略
-- 職種マスタの作成
DROP TABLE inet_job;
CREATE TABLE inet_job (
省略
-- INET_PROFILE 用のシーケンスを作成
DROP SEQUENCE seq_inet_profile_code;
CREATE SEQUENCE seq_inet_profile_code
省略
769767:2010/12/04(土) 00:37:08 ID:???
それは初期化スクリプトの定番でしょ

コマンドラインから流し込んでDB初期化するときに、もし前のデータが残っていればそこで初期化が頓挫してしまう
先にDROPした上でCREATEすれば何度流し込んでも同じように初期化できる
770nobodyさん:2010/12/05(日) 10:56:11 ID:???
>>769
なるほど失礼しました。私が無知でした。
ありがとうございました。
771電脳プリオン:2012/01/02(月) 22:52:37.95 ID:??? BE:456084959-2BP(1960)

  ( ・∀・)      | | ガガッ
 と    )      | |
   Y /ノ      .人
    / ) .人   <  >_∧∩
  _/し' <  >_∧∩`Д´)/
 (_フ彡 V`Д´)/   / ←>>479
            / ←>>384
772nobodyさん:2013/08/17(土) NY:AN:NY.AN ID:???
.          \\      ,土ヽ l 十  ├  ゝ‐、ヽ ll               尸  //
            \\  (ノ ) | Cト、.Cト、   ノ l_ノ よ  ̄ ̄ ̄ (⌒/   //
                   .....       .:_ -― ─- 、:.    ......
                  ..::⌒>.、:: ...::/::.::/::.:: ヽ::.::.\::....::x<⌒::.
              ::x-=≦.::.-=`ミO.:/:/:/|:./.:ハ::ヽ::`O::-=ミて`く⌒ヽ::
            ::, イ::ノ⌒'Z _⌒ Y彡::./V  j/ヽ::ハ.::.V::Y⌒/;^)- 入 \:
           ::/ :/八  '(:::::':,\ トV::./⌒     ⌒ヽ.::∨/,.::'::/  /:::∧  '\::
           ::/ `V::/ヽ\ \ :':, 八W __    __ jハ:::l, :':::::, ′ /:::/   ̄ ノ\::
        ::〈   ,.:'::/   ヽ \ \:l:ハ| 〃⌒    ⌒ヾ ハ:|::::/  ,.イ:::/     ∠.::勹::
       ::/ ! :.'::::∧   |  ヽ  \ム .:::::  r ┐ ::::.,'ノ/  / /::/   |__:/::
     ::∠._jハ_ん:ヘ/}ノ /ヘ  ヽゝ_  ヽ ノ   イ/  /⌒ん'⌒)_>::
                     ̄   ̄`ヽ   `=≧r ‐i彡''´  /::     ̄
                      ::\ヽ   ` ´   / /::
                       ::          ,′
                       ::i  :;     :;  i::
                       ::|          |::
                       ::l         |::
                         ::j            ::
                        ::,′           l::
                         ::/           |::
                     ::/              !::
                       ::/    〉┴r      ::
                       ::,′    /:: ::|     |::
773nobodyさん:2013/09/03(火) 08:13:13.43 ID:???
ぬるぽ
774nobodyさん:2013/12/30(月) 19:24:59.46 ID:???
まあまあこんな感じだよ
775nobodyさん:2014/01/02(木) 21:57:26.13 ID:???
今年のラッキーカラーは?
776nobodyさん:2014/01/03(金) 18:08:08.71 ID:???
来てるかも
777nobodyさん:2014/01/27(月) 20:19:46.52 ID:???
周辺は厳戒態勢
778nobodyさん:2014/01/27(月) 22:05:39.86 ID:???
世界一
779nobodyさん:2014/01/29(水) 21:03:23.07 ID:???
どうもどうも
780nobodyさん:2014/08/31(日) 21:38:28.44 ID:???
781nobodyさん:2014/12/16(火) 14:57:58.06 ID:???
782nobodyさん:2015/01/05(月) 20:22:59.39 ID:???
あけおめ
783nobodyさん
ことよろ