2013-03-22 79 views
5

我想將NaN值插入到SQLite數據庫中。將NaN值存儲在SQLite數據庫中

我有身份證,StringColumn和DoubleColumn(不能爲空)耳鼻喉科表,我嘗試使用下面的SQL語句:

INSERT INTO Ent (Id, StringColumn, DoubleColumn) VALUES (1, 'NaN test', ????) 

我不知道要放什麼東西來代替「???? 「有NaN存儲。

我正在訪問數據庫使用System.Data.SQLite - 也許這也很重要?

+0

你可以用NULL來代替嗎?這將有類似的目的。 – SDC 2013-03-22 12:04:33

回答

1

SQLite沒有NaN值的文本表示。

在SQL中,特殊的NULL在計算上的行爲相似,可以達到同樣的目的。

+0

謝謝你的提示。 我試過在這種情況下使用null,但我得到錯誤「由於違反約束而中止,Ent.DoubleColumn可能不是NULL」。讓它工作的唯一方法是將DoubleColumn更改爲空。 – 2013-03-22 13:17:17

1

我目前使用的技巧是在Real列上存儲-Infinity時,null不足或不被允許(因爲您在該列上有「not null」)。

4

對於數據類型,SQLite是相當......鬆懈......。隨意將「NaN」放入定義爲「double」的列中。或「無限」。或者「雙」,就此而言。 SQLite不關心。