qileilove

          blog已經轉移至github,大家請訪問 http://qaseven.github.io/

          sqlite數據庫 boolean類型的小小測試

           根據官方文檔的介紹:
            SQLite does not have a separate Boolean storage class. Instead, Boolean values are stored as integers 0 (false) and 1 (true).
            sqlite數據庫中沒有單獨的Boolean存儲類,Booean值以0(false)和1(true)來存儲.
            經我短時間測試的實踐, 顯示boolean 有三種狀態(tài), 0(false)  1(true)  和 null,如下圖所示,
            經過下列插入語句,測試,均可插入成功.而且, 可以通過
            select * from stu where flag  ="數據庫"
            查詢到name 為a9 的行.
          insert into stu (name,flag) values ('a1','true'); -- 0
          insert into stu (name,flag) values ('a2','ture'); -- 0
          insert into stu (name,flag) values ('a3',1);  -- 1
          insert into stu (name,flag) values ('a4','null'); --0
          insert into stu (name,flag) values ('a5','1');   --1
          insert into stu (name,flag) values ('a6',null); -- null
          insert into stu (name,flag) values ('a7','2'); --1
          insert into stu (name,flag) values ('a8',15); --1
          insert into stu (name,flag) values ('a9',"數據庫"); --0
            導出數據庫,可以發(fā)現,執(zhí)行的sql語句是這樣的,
          insert into [stu] values('a1', 0);
          insert into [stu] values('a2', 0);
          insert into [stu] values('a3', 1);
          insert into [stu] values('a4', 0);
          insert into [stu] values('a5', 1);
          insert into [stu] values('a6', null);
          insert into [stu] values('a7', 1);
          insert into [stu] values('a8', 1);
          insert into [stu] values('string', 0);
          insert into [stu] values('string2', 0);
          insert into stu (name,flag) values ('a9',0); --0
            如此, 猜想, sqlite 是采用了 字符型存儲插入的boolean類型數據, 但是,取出的時候, 會將插入的字符型數據轉換成int類型來使用.
            因此,可以得到下面的結論:
            -- 字符可轉換為int類型的為且不為0的為 true, 轉換失敗或轉換后為0的為 false(0)
            -- int ,long double 等數字,0為false, 其他>=1的為 true(1)
            -- 布爾類型報錯, null為 null,默認值
            ps:尚未對其進行深入了解,目前是實踐測試的結論,純屬猜測,如果有知情者,可告知.

          posted on 2014-04-17 10:49 順其自然EVO 閱讀(264) 評論(0)  編輯  收藏 所屬分類: 測試學習專欄

          <2014年4月>
          303112345
          6789101112
          13141516171819
          20212223242526
          27282930123
          45678910

          導航

          統(tǒng)計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 南通市| 如东县| 平塘县| 酉阳| 阿拉善左旗| 襄汾县| 南康市| 榆林市| 苗栗县| 祥云县| 军事| 浠水县| 宁波市| 泾川县| 昌黎县| 大竹县| 饶阳县| 连江县| 洪湖市| 岐山县| 慈利县| 黔西县| 重庆市| 和顺县| 平乡县| 黎平县| 郓城县| 济南市| 景宁| 商水县| 舒城县| 康乐县| 龙泉市| 海原县| 云梦县| 万荣县| 随州市| 定西市| 汤阴县| 万宁市| 广灵县|