SQLite 數據類型

SQLite?數據類型

參考:

SQLite 數據類型 | 菜鳥教程
http://www.runoob.com/sqlite/sqlite-data-types.html

?

SQLite 數據類型是一個用來指定任何對象的數據類型的屬性。SQLite 中的每一列,每個變量和表達式都有相關的數據類型。

您可以在創建表的同時使用這些數據類型。SQLite 使用一個更普遍的動態類型系統。在 SQLite 中,值的數據類型與值本身是相關的,而不是與它的容器相關。

SQLite 存儲類

每個存儲在 SQLite 數據庫中的值都具有以下存儲類之一:

存儲類描述
NULL值是一個 NULL 值。
INTEGER值是一個帶符號的整數,根據值的大小存儲在 1、2、3、4、6 或 8 字節中。
REAL值是一個浮點值,存儲為 8 字節的 IEEE 浮點數字。
TEXT值是一個文本字符串,使用數據庫編碼(UTF-8、UTF-16BE 或 UTF-16LE)存儲。
BLOB值是一個 blob 數據,完全根據它的輸入存儲。

SQLite 的存儲類稍微比數據類型更普遍。INTEGER 存儲類,例如,包含 6 種不同的不同長度的整數數據類型。

SQLite 親和(Affinity)類型

SQLite支持列的親和類型概念。任何列仍然可以存儲任何類型的數據,當數據插入時,該字段的數據將會優先采用親緣類型作為該值的存儲方式。SQLite目前的版本支持以下五種親緣類型:

親和類型描述
TEXT數值型數據在被插入之前,需要先被轉換為文本格式,之后再插入到目標字段中。
NUMERIC當文本數據被插入到親緣性為NUMERIC的字段中時,如果轉換操作不會導致數據信息丟失以及完全可逆,那么SQLite就會將該文本數據轉換為INTEGER或REAL類型的數據,如果轉換失敗,SQLite仍會以TEXT方式存儲該數據。對于NULL或BLOB類型的新數據,SQLite將不做任何轉換,直接以NULL或BLOB的方式存儲該數據。需要額外說明的是,對于浮點格式的常量文本,如"30000.0",如果該值可以轉換為INTEGER同時又不會丟失數值信息,那么SQLite就會將其轉換為INTEGER的存儲方式。
INTEGER對于親緣類型為INTEGER的字段,其規則等同于NUMERIC,唯一差別是在執行CAST表達式時。
REAL其規則基本等同于NUMERIC,唯一的差別是不會將"30000.0"這樣的文本數據轉換為INTEGER存儲方式。
NONE不做任何的轉換,直接以該數據所屬的數據類型進行存儲。  

SQLite 親和類型(Affinity)及類型名稱

下表列出了當創建 SQLite3 表時可使用的各種數據類型名稱,同時也顯示了相應的親和類型

數據類型親和類型
  • INT

  • INTEGER

  • TINYINT

  • SMALLINT

  • MEDIUMINT

  • BIGINT

  • UNSIGNED BIG INT

  • INT2

  • INT8

INTEGER
  • CHARACTER(20)

  • VARCHAR(255)

  • VARYING CHARACTER(255)

  • NCHAR(55)

  • NATIVE CHARACTER(70)

  • NVARCHAR(100)

  • TEXT

  • CLOB

TEXT
  • BLOB

  • no datatype specified

NONE
  • REAL

  • DOUBLE

  • DOUBLE PRECISION

  • FLOAT

REAL
  • NUMERIC

  • DECIMAL(10,5)

  • BOOLEAN

  • DATE

  • DATETIME

NUMERIC

Boolean 數據類型

SQLite 沒有單獨的 Boolean 存儲類相反,布爾值被存儲為整數 0(false)和 1(true)。

Date 與 Time 數據類型

SQLite 沒有一個單獨的用于存儲日期和/或時間的存儲類,但 SQLite 能夠把日期和時間存儲為 TEXT、REAL 或 INTEGER 值。

存儲類日期格式
TEXT格式為 "YYYY-MM-DD HH:MM:SS.SSS" 的日期。
REAL從公元前 4714 年 11 月 24 日格林尼治時間的正午開始算起的天數。
INTEGER從 1970-01-01 00:00:00 UTC 算起的秒數。

您可以以任何上述格式來存儲日期和時間,并且可以使用內置的日期和時間函數來自由轉換不同格式。

轉載于:https://www.cnblogs.com/Renyi-Fan/p/7440616.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/394375.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/394375.shtml
英文地址,請注明出處:http://en.pswp.cn/news/394375.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

leetcode1143. 最長公共子序列(動態規劃)

給定兩個字符串 text1 和 text2,返回這兩個字符串的最長公共子序列的長度。 一個字符串的 子序列 是指這樣一個新的字符串:它是由原字符串在不改變字符的相對順序的情況下刪除某些字符(也可以不刪除任何字符)后組成的新字符串。 …

php開發支付寶支付密碼忘記了怎么辦_密碼箱忘記密碼怎么辦?密碼箱解鎖方法大全...

密碼箱忘記密碼經常發生,有時候急著趕車趕飛機必須用的證件在密碼行李箱,怎么辦?破壞?當你忘記密碼的時候千萬不要著急,不要試著用暴力破壞密碼鎖。操作方法一此類型的密碼箱的開鎖方法。把箱子放在光線好的地方放平&a…

Python網絡編程之TCP服務器客戶端(二)

傳輸控制協議(官方術語為TCP/IP協議)是互聯網的重要組成部分。TCP的第一個版本是在1974年定義的,它建立在網際層協議(IP)提供的數據包傳輸技術之上。TCP使得應用程序可以使用連續的數據流進行相互通信,除非出現網絡原因導致連接中斷等意外情況&#xff0…

請寫出至少5個html塊元素標簽_34道常見的HTML+CSS面試題(附答案)

公眾號【傳智播客博學谷】回復關鍵詞:前端 PS Java(100G) Python(80G) 大數據 區塊鏈 測試 PPT JS(40g300教程) HTML 簡歷 領取相關學習資料!一、HTML1、標簽上title屬性與alt屬性的區別是什么?alt屬性是為了給那些不能看到你文檔中圖像的瀏覽…

leetcode劍指 Offer 42. 連續子數組的最大和(動態規劃)

輸入一個整型數組,數組里有正數也有負數。數組中的一個或連續多個整數組成一個子數組。求所有子數組的和的最大值。 要求時間復雜度為O(n)。 示例1: 輸入: nums [-2,1,-3,4,-1,2,1,-5,4] 輸出: 6 解釋: 連續子數組 [4,-1,2,1] 的和最大,為 6。 常數…

nginx mozilla_我發現Mozilla的私人瀏覽模式存在重大缺陷。

nginx mozillaby Konark Modi通過Konark Modi 我發現Mozilla的私人瀏覽模式存在重大缺陷。 (I found a major flaw in Mozilla’s private browsing mode.) If left unfixed this flaw could have wreaked havoc but Mozilla’s prompt fixes saved the day.如果不加以解決&am…

4月8日隨筆

周一滿課,晚上唱紅歌,寫概率論。。 轉載于:https://www.cnblogs.com/wxy2000/p/10686058.html

linux開機出現一下錯誤Give root password for maintenance (or type Control-D to continue):

linux開機出現一下錯誤Give root password for maintenance (or type Control-D to continue):第一種錯誤的情況:由于錯誤的編輯/etc/fstab文件 而引起的不能正常進入系統。假如你將某一個分區或者磁盤最后一個參數設置為1或2時,系統默認會在開機過程中檢…

[閱讀筆記]Zhang Y. 3D Information Extraction Based on GPU.2010.

1.立體視覺基礎 深度定義為物體間的距離 視差定義為同一點在左圖(reference image) 和右圖( target image) 中的x坐標差。 根據左圖中每個點的視差得到的灰度圖稱為視差圖。 那么根據三角幾何關系可以由視差(xR - xT ) 計算出深度.bcamera基線距離,f焦距。 離相機越…

r語言 小樹轉化百分數_“小樹”機器人1.0新品發布會

產品初衷伴隨著AI的落地,從最開始的刷臉支付,再到自動駕駛,還是現在互聯網的5G時代,AI無疑都是產業變革的核心動力。那么作為一家科技創新的企業,小樹機器人從建立之初就在不斷的創新,我們致力于從智能出發…

mac安裝python虛擬環境_詳解Mac配置虛擬環境Virtualenv,安裝Python科學計算包

最近正在自學Python做科學計算,當然在很多書籍和公開課里最先做的就是安裝Numpy, Scipy, Matplotlib等包,不過每次安裝單獨的包時,都會有各種問題導致安裝失敗或者調用失敗。比如,遇到 Exception 和 Error:明明已經提示…

破解系統設計訪談:Twitter軟件工程師的提示

by Zhia Hwa Chong志華化 破解系統設計訪談:Twitter軟件工程師的提示 (Crack the System Design interview: tips from a Twitter software engineer) I recently wrote about how I landed offers from multiple top-tier tech companies. During my interview pr…

leetcode474. 一和零(動態規劃)

在計算機界中,我們總是追求用有限的資源獲取最大的收益。 現在,假設你分別支配著 m 個 0 和 n 個 1。另外,還有一個僅包含 0 和 1 字符串的數組。 你的任務是使用給定的 m 個 0 和 n 個 1 ,找到能拼出存在于數組中的字符串的最大…

jQuery對象與DOM對象的相互轉換

一、檢測方式上的區別 檢測DOM對象: if (Object.nodeType) 檢測jQery對象: if (Object.jquery) 二、轉換方式 jQuery對象轉DOM對象: var DOMObject jQueryObject.get([index]); // 或者 var DOMObject jQueryObject[index]; DOM對象轉jQuer…

ProcessExplore 最新版

http://files.cnblogs.com/files/zhangdongsheng/ProcessExplorer.zip轉載于:https://www.cnblogs.com/zhangdongsheng/p/6195743.html

javascript對象包含哪些要素_讓人迷糊的JavaScript對象(Object一)

對于很多初學的小伙伴聽到JavaScript內置對象、BOM、DOM、WEB API等關鍵詞基本上都是迷糊,不是很明白他們之間的關系,以及他們是如果建立聯系的。雖然我們現在小伙伴在學VUE,React等框架能簡化我們的操作,但是遇到一些基礎的問題還…

被吐嘈的NodeJS的異常處理

被吐嘈的NodeJS的異常處理 許多人都有這樣一種映像,NodeJS比較快; 但是因為其是單線程,所以它不穩定,有點不安全,不適合處理復雜業務; 它比較適合對并發要求比較高,而且簡單的業務場景。 在Expr…

javascript關鍵字_讓我們揭開JavaScript的“ new”關鍵字的神秘面紗

javascript關鍵字by Cynthia Lee辛西婭李(Cynthia Lee) 讓我們揭開JavaScript的“ new”關鍵字的神秘面紗 (Let’s demystify JavaScript’s ‘new’ keyword) Over the weekend, I completed Will Sentance’s JavaScript: The Hard Parts. It might not sound like the most…

查看 rabbitmq 啟動websocket 提示404_RabbitMQ在windows下安裝(筆記)

先保證Java開發環境一切正常,【jdk,maven】,然后下載兩個文件,1,下載OTPhttps://www.rabbitmq.com/download.html 下載地址下載RabbitMQ Downloading and Installing RabbitMQ:地址安裝沒有別的操作,一直下一步就好;2&…

[Leetcode] Longest Valid Parentheses

找出字串裡最長的合法括號組 簡單說&#xff0c;一樣stack搜尋合法parenth&#xff0c;把不合法的 ( & ) index 紀錄下來&#xff0c;最後算index間的差值取最大就是最長的 public class Solution{/// <summary>/// 把不合法的( )的index記下來&#xff0c;取最長的差…