2016-04-25 53 views
-1

雖然它看起來很簡單,但我在這裏嘗試了幾個小時。從iOS中的SQLite獲取雙值

大家好,我在iPad應用程序的SQLite數據庫中存儲了雙重值。

SQLite Database image for field containing Double values

我取使用簡單的所有記錄 「SELECT * FROM表名」 查詢。

然後我將此patient_dos值轉換爲雙倍。

但是,當我顯示第一個患者詞典的內容時,它就是這樣打印的。

"patient_dos" = "1461561219160.408936"; 

下面這個是我將這個值轉換爲雙變量使用以下轉換方法後得到的值。

double p_dos = [[dict objectForKey:@"patient_dos"] doubleValue]; 

結果是

Printing description of p_dos: 
(double) p_dos = 1461561767624.27 

我主要關心的是搭配這雙,這實際上是一個時間戳,當病人沒有HH承認日:MM:SS信息。

更新: Added data type Image.

+0

顯示實際的代碼從DB讀取值。 –

+0

正如我所說的,我從簡單選擇*從tableName查詢中獲取數據,然後當我打印查詢返回的數組時,它會輸出「patient_dos」字段的不一致值。 – Anand

回答

0

你可以在字符串(從數據庫中獲取)轉換爲雙象,

NSString *str = @"1461561219160.408936"; 

double fl = [str doubleValue]; 

NSLog(@"double vvalue is : %f",fl); 

這是在我的控制檯打印精確1461561219160.408936

+0

從SQLite數據庫本身,我得到錯誤的雙重,如果我得到正確的值正是我在數據庫中然後轉換是第二步。 – Anand

+0

然後將sqlite數據類型'文本更改爲'double'。意味着不要將其作爲字符串存儲存儲爲double,並以double形式檢索。 – Lion

+0

該領域已經是一個雙重類型,在SQLite數據庫本身,原來的問題更新圖像。 – Anand