24h購物| | PChome| 登入
2009-03-17 09:55:41| 人氣840| 回應0 | 上一篇 | 下一篇

PostgreSQL欄位是bit型態的SQL處理

推薦 0 收藏 0 轉貼0 訂閱站台

PostgreSQL支援bit format,因為正好需要bit格式所以就用了,
不巧jdbc driver Byte對不上bit,會throw一個Exception上來告訴你型態不對,
所以必須自己產生SQL段,經Query Window測試有下兩種語法可用(B大小寫都可)
update table_name set type=b'101' where id=1
update table_name set type=B'111'::bit( 3 ) where id=1
其餘的就照原先的作法就可以。
測試平台: Fedora 9+ PostgreSQL 8.3 in ibook,
jdbc : postgresql-8.3-604.jdbc4.jar

另外,Integer.toBinaryString可用來轉換型態,接到上面B的後面,如下,
Integer.toBinaryString(type.byteValue()) --> type is Byte

後來,發現有長度問題(因為長度3,長度2的資料進不去)
加上以下function應該就OK了,用意在前面補0
String.format("%1$03d",new Integer)

台長: softlive
人氣(840) | 回應(0)| 推薦 (0)| 收藏 (0)| 轉寄
全站分類: 數位資訊(科技、網路、通訊、家電) | 個人分類: postgresql |
此分類下一篇:PostgreSQL欄位是ENUM的SQL處理

是 (若未登入"個人新聞台帳號"則看不到回覆唷!)
* 請輸入識別碼:
請輸入圖片中算式的結果(可能為0) 
(有*為必填)
TOP
詳全文