私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレPHP + PostgreSQL
php スレッド一覧へ / php とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 : ○
レスフィルター : (試験中)
>>649
再帰呼出を使えば出来るでしょ。
再帰呼出を使えば出来るでしょ。
スマソ勘違いしてた。
デリミタと囲い子の問題ね。
デリミタと囲い子の問題ね。
>>651
多次元配列じゃなくて、特種文字の扱いが問題だと思うのですが・・・・。
preg_match_allやpreg_splitでも正しくパースするのは難しそう。
#PostgreSQLのソースにヒントがあるかな?
PEAR MDBのキャスト機能で配列型も変換してくれるようになったら嬉しいな。
多次元配列じゃなくて、特種文字の扱いが問題だと思うのですが・・・・。
preg_match_allやpreg_splitでも正しくパースするのは難しそう。
#PostgreSQLのソースにヒントがあるかな?
PEAR MDBのキャスト機能で配列型も変換してくれるようになったら嬉しいな。
ちょっと遅かった... orz
質問させてください
pl/pgsqlを触り始めたのですがエラーに悩まされております
下記のように引数にテーブル名をいれて動かそうとすると
エラーになってしまいます。テーブルの実名をそのまま入れた時は動きました。
うまく動かす方法はないでしょうか?
よろしくお願いします。
CREATE OR REPLACE FUNCTION test_function(text) RETURNS INTEGER AS '
DECLARE
IN_table_name ALIAS FOR $1;
data_cnt INTEGER DEFAULT 0;
rec RECORD;
BEGIN
FOR rec IN SELECT * FROM IN_table_name LOOP
data_cnt := data_cnt + 1;
END LOOP;
RETURN data_cnt;
END;
'
LANGUAGE 'plpgsql';
pl/pgsqlを触り始めたのですがエラーに悩まされております
下記のように引数にテーブル名をいれて動かそうとすると
エラーになってしまいます。テーブルの実名をそのまま入れた時は動きました。
うまく動かす方法はないでしょうか?
よろしくお願いします。
CREATE OR REPLACE FUNCTION test_function(text) RETURNS INTEGER AS '
DECLARE
IN_table_name ALIAS FOR $1;
data_cnt INTEGER DEFAULT 0;
rec RECORD;
BEGIN
FOR rec IN SELECT * FROM IN_table_name LOOP
data_cnt := data_cnt + 1;
END LOOP;
RETURN data_cnt;
END;
'
LANGUAGE 'plpgsql';
寝ぼけてレスしたけど、よく見ると半月も前じゃん
補足です。
■page1.phpを、以下のように書き換えても、結果は同じでした。
---page1.php(改)---
<?php
$con = pg_connect("dbname=db");
$result = pg_query($con, "select * from table where page = 'ページ1'");
# 以下、内容の表示
?>
■また、$pageがひらがな・カタカナ・漢字のみの場合は、正しくselectされます。
---page3.php---
<?php
$page = "ほげほげ";
require ("search.inc");
?>
■データベースの内容をチェックしましたが、
pageフィールドにはきちんと「ページ1」「ページ2」という値が入っています。
■page1.phpを、以下のように書き換えても、結果は同じでした。
---page1.php(改)---
<?php
$con = pg_connect("dbname=db");
$result = pg_query($con, "select * from table where page = 'ページ1'");
# 以下、内容の表示
?>
■また、$pageがひらがな・カタカナ・漢字のみの場合は、正しくselectされます。
---page3.php---
<?php
$page = "ほげほげ";
require ("search.inc");
?>
■データベースの内容をチェックしましたが、
pageフィールドにはきちんと「ページ1」「ページ2」という値が入っています。
携帯サイト作ってるんですけど
開発環境のWEBサーバー(Apache2.0 Windows2000)では動作するんですが、
本番環境のWEBサーバー(Apache1.3 Linux)へ移すと「接続先のサーバは現在ご利用できません(502)」と出ます。
502のエラーとして調べた結果「ゲートウェイもしくはプロキシサーバが上流から無効なレスポンスを受け取った」とのことです。
このエラーの要因として考えられるのはHTTPD.CONFファイルの設定の違いでしょうか?
とすると、対処法として、本番環境のHTTPD.CONFを開発環境と同じにするしかないでしょうか?
開発環境のWEBサーバー(Apache2.0 Windows2000)では動作するんですが、
本番環境のWEBサーバー(Apache1.3 Linux)へ移すと「接続先のサーバは現在ご利用できません(502)」と出ます。
502のエラーとして調べた結果「ゲートウェイもしくはプロキシサーバが上流から無効なレスポンスを受け取った」とのことです。
このエラーの要因として考えられるのはHTTPD.CONFファイルの設定の違いでしょうか?
とすると、対処法として、本番環境のHTTPD.CONFを開発環境と同じにするしかないでしょうか?
一寸煮詰まってしまってまして、よろしければアドバイスいただけないでしょうか?
Select (Case When A.Field = '' Then 0 Else A.Field End)::integer From Table as A
というSQLを発行し、A.Fieldが''(空白文字列)だった場合0を出したいのですが、
invalid input syntax for integer:
と、エラーが出てしまいます。
これがもし、A.Fieldが''ではなく、NULLだったらうまくいくのですが。。
この問題を回避する何か良い方法はないでしょうか?
よろしくお願いします。
Select (Case When A.Field = '' Then 0 Else A.Field End)::integer From Table as A
というSQLを発行し、A.Fieldが''(空白文字列)だった場合0を出したいのですが、
invalid input syntax for integer:
と、エラーが出てしまいます。
これがもし、A.Fieldが''ではなく、NULLだったらうまくいくのですが。。
この問題を回避する何か良い方法はないでしょうか?
よろしくお願いします。
>>698
SELECT (CASE WHEN field='' THEN '0' ELSE field END)
SELECT (CASE WHEN field='' THEN '0' ELSE field END)
類似してるかもしれないスレッド
- PHP PHPって (73) - [24%] - 2016/1/21 13:46
- Mac OS X + PHP + MySQL (199) - [21%] - 2022/3/13 12:00
トップメニューへ / →のくす牧場書庫について