[pgsql-jp: 36284] Re: odbc経由の配列
hirano
hirano @ valuenet.co.jp
2005年 10月 31日 (月) 11:20:34 JST
平野と申します。
MDAC 2.8 SP1 ON WINDOWS XP(Pro) SP2 - Delphi7Ent
> Postgresのodbcドライバーは、version 8.00.01.02 です。
このドライバがみつかりませんでしたので、以下のドライバで
ちょっと確認してみました。
----
PostgreSQL ODBCドライバ Ver 7.03.02.08
(PostgreSQL Version 8.0.4 日本語インストーラ付属のもの)
----
この環境では、(実行結果を下部に貼り付けましたが)
どうやら、配列を添え字指定しないでSelectすると
「ftString」(Delphiの文字列)としてDelphiのDataSet
クラスが判定しているようです。
添え字指定の場合は「ftFixedChar」として判定している
模様。
ftArrayという型判定の選択肢もありますが、ftArrayには
判定していない様子。
> みなさんの所では、ちゃんと配列型で認識されていますでしょうか
> ご存じの片がいらっしゃいましたら、ご返答よろしくお願いいたします。
ODBCで上記を判定したのか、Delphi側で判定したのか不明
ですが、私の環境でも「配列型で認識していないです」と
いう報告まで。
(以下、弊社ツールでの実行ログ)
select version()
version
----------------------------------------------------------------------------------------
PostgreSQL 8.0.3 on i686-pc-mingw32, compiled by GCC gcc.exe (GCC) 3.4.2 (mingw-special)
結果:1件 (10ms)
DROP TABLE AAA
実行しました。 (1642ms)
CREATE TABLE AAA(
c1 INTEGER NOT NULL PRIMARY KEY,
c2 BOOLEAN[3] NOT NULL DEFAULT ARRAY[true,true,true]
)
実行しました。 (1712ms)
insert into aaa (c1) values (1)
結果: 1 件更新 (10ms)
insert into aaa (c1) values (2)
結果: 1 件更新 (10ms)
insert into aaa (c1) values (3)
結果: 1 件更新 (10ms)
select * from aaa
c1 c2
-- -------
1 {t,t,t}
2 {t,t,t}
3 {t,t,t}
結果:3件 (30ms)
select c1,c2[1] from aaa
c1 c2
-- --
1 1
2 1
3 1
結果:3件 (10ms)
select c1,c2 from aaa where c2[1] = true
c1 c2
-- -------
1 {t,t,t}
2 {t,t,t}
3 {t,t,t}
結果:3件 (10ms)
select c1,c2 from aaa where c2[1] = false
c1 c2
-- --
結果:0件 (10ms)
0--------1---------2---------3---------4---------5
株式会社バリューソフトウエア
平野 源
hirano @ valuenet.co.jp
ValueSQL -- For all SQL developers --
http://gwsrv.valuenet.co.jp/ValueSQL/pukiwiki.php
0--------1---------2---------3---------4---------5
pgsql-jp メーリングリストの案内