[pgsql-jp: 27280] Re: ODBC でアンド算

T.SHIODA sio-ml @ myrealbox.com
2002年 9月 3日 (火) 18:40:31 JST


塩田です。


<003d01c2532c$359ad080$1800a8c0 @ m60> の、
   "[pgsql-jp: 27279] Re: ODBCでアンド算" において、
   ""Okumura" <kml @ deno21.com>"さんは書きました:

> 奥村です。趙さんありがとうございました
> 
> MSアクセスでは、アンド算は&ではなくANDでした。
> 
> そこで、
> SELECT suji From renshu where (suji AND 2) = 2
> を試しましたところ、 suji and 2 の値が、-1となっているようで
> 検索できませんでした。
> 
> どうなっているのだろう・・・?

MS ACCESSはVBの文化なので、trueが-1になりfalseが0です。
ためしにVBで print (1=1), (1=2) のように実行してみましょう。
ところがMS SQL Serverにアップグレードすると、
boolean型がbit型に変換されちゃうので 0(false), -1(true)の関係が
0(bit off),1(bit on)の関係に変換されちゃいます。

というわけで、bool値を直接数値で比較しているような条件式は
注意です。



-------
T.SHIODA
mailto:sio-ml @ myrealbox.com



pgsql-jp メーリングリストの案内