91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

玩轉(zhuǎn)SQLite7:基本語法與數(shù)據(jù)類型

碼農(nóng)愛學習 ? 來源:碼農(nóng)愛學習 ? 作者:碼農(nóng)愛學習 ? 2022-09-26 09:07 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前面幾篇文章已經(jīng)快速了解了SQLite的基本用法以及簡單的Pyhton與C語言的API函數(shù)的使用。本篇再來全面介紹下SQLite的基本語法與數(shù)據(jù)類型。

1 SQLite 基本語法

1.1 SQLite注釋

單行注釋以兩個連續(xù)的橫杠: "--" 開始

多行注釋則與C風格的:“/* */”一致

sqlite>.help -- 這是一個簡單的注釋
sqlite>.help /* 這也是一個簡單的注釋 */

1.2 SQLite大小寫

SQLite是不區(qū)分大小寫,比如select語句中,既可以使用大寫的SELECT,也可以用小寫的select。

但有例外:GLOBglob在SQLite語句中有不同的含義。

1.3 SQLite語句/命令

SQLite 語句以關鍵字開始,以分號 ; 結(jié)束

關鍵字,也稱SQLite命令,如:SELECT,INSERT,UPDATE,DELETE,ALTER,DROP等,具體分類如下:

1.3.1 DDL - 數(shù)據(jù)定義語言

數(shù)據(jù)操作語言,即數(shù)據(jù)的增、刪、改數(shù)據(jù)庫在的數(shù)據(jù)表

命令 描述
CREATE/create 創(chuàng)建一個新的表,一個表的視圖,或者數(shù)據(jù)庫中的其他對象
ALTER/alter 修改數(shù)據(jù)庫中的某個已有的數(shù)據(jù)庫對象,比如一個表
DROP/drop 刪除整個表,或者表的視圖,或者數(shù)據(jù)庫中的其他對象

1.3.2 DML - 數(shù)據(jù)操作語言

數(shù)據(jù)操作語言,即對數(shù)據(jù)表中的數(shù)據(jù)進行增、刪、改操作

命令 描述
INSERT/insert 創(chuàng)建一條記錄
DELETE/delete 刪除記錄
UPDATE/update 修改記錄

1.3.3 DQL - 數(shù)據(jù)查詢語言

數(shù)據(jù)操作語言,即對數(shù)據(jù)表中的數(shù)據(jù)進行操作

命令 描述
SELECT/select 從一個或多個表中檢索某些記錄

總結(jié)一下:

poYBAGMwWtGAJyhcAAC5pcK6YkU088.png

2 SQLite數(shù)據(jù)類型

SQLite存儲類

SQLite 中的每一列,每個變量和表達式都有相關的數(shù)據(jù)類型,每個存儲在 SQLite 數(shù)據(jù)庫中的值都具有以下存儲類之一:

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

SQLite 的存儲類稍微比數(shù)據(jù)類型更普遍。

比如INTEGER存儲類,包含 6 種不同的不同長度的整數(shù)數(shù)據(jù)類型,但只要INTEGER值被從磁盤讀出進內(nèi)存處理,就被轉(zhuǎn)換成最一般的數(shù)據(jù)類型(8-字節(jié)有符號整形)。

對于BLOB數(shù)據(jù),它表示二進制大對象,一般用來保存圖片,視頻等,另外還有CLOB,表示字符大對象,能夠存放大量基于字符的數(shù)據(jù)。

Boolean 數(shù)據(jù)類型

SQLite 沒有單獨的 Boolean 存儲類,它使用INTEGER作為存儲類型,布爾值被存儲為整數(shù) 0(false)和 1(true)。

Date 與 Time 數(shù)據(jù)類型

SQLite 沒有一個單獨的用于存儲日期和/或時間的存儲類,但內(nèi)置的sqlite日期和時間函數(shù)能夠?qū)⑷掌诤蜁r間以TEXT,REAL或INTEGER形式存放數(shù)能夠?qū)⑷掌诤蜁r間以TEXT,REAL或INTEGER形式存放。

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

內(nèi)置的日期和時間函數(shù)包括:

函數(shù) 含義
date(timestring, modifier, modifier, ...) 以 YYYY-MM-DD 格式返回日期
time(timestring, modifier, modifier, ...) 以 HH:MM:SS 格式返回時間
datetime(timestring, modifier, modifier, ...) 以 YYYY-MM-DD HH:MM:SS 格式返回
julianday(timestring, modifier, modifier, ...) 這將返回從格林尼治時間的公元前 4714 年 11 月 24 日正午算起的天數(shù)
strftime(format, timestring, modifier, modifier, ...) 這將根據(jù)第一個參數(shù)指定的格式字符串返回格式化的日期

第一個參數(shù)(timestring):時間字符串

后面的參數(shù)(modifier):修飾符

strftime() 函數(shù)可以把格式字符串format作為其第一個參數(shù)

前四個個函數(shù)也可以轉(zhuǎn)換成strftime函數(shù):

date(...)         strftime('%Y-%m-%d', ...)
time(...)         strftime('%H:%M:%S', ...)
datetime(...)     strftime('%Y-%m-%d %H:%M:%S', ...)
julianday(...)    strftime('%J', ...)  

strftime中的格式包括:

-- 格式   格式說明
-- %d    天數(shù),例如:01-31中某一個天
-- %f    帶小數(shù)部分(SS.SSS格式)的秒
-- %H    小時,例如: 00-23中某一個小時
-- %j   一年中的第幾天,001-366
-- %J    儒略日數(shù),DDDD.DDDD
-- %m    月,00-12中某一具體月份
-- %M    分,00-59
-- %s    從 1970-01-01 算起的秒數(shù)
-- %S    秒,00-59
-- %w    一周中的第幾天,0-6 (0 is Sunday)
-- %W    一年中的第幾周,01-53
-- %Y    年,YYYY
-- %%    % symbol

通過SQLite語句,可以簡單測試一些日期格式(打印當前的時間):

pYYBAGMwWueAJMoKAABPoqWM94k730.png

end
審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • C語言
    +關注

    關注

    183

    文章

    7644

    瀏覽量

    145643
  • SQlite
    +關注

    關注

    0

    文章

    81

    瀏覽量

    16735
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    基于凌羽派的OpenHarmony北向應用開發(fā):ArkTS語法-數(shù)據(jù)類型和變量聲明

    可以在程序執(zhí)行期間具有不同的值。使用TS風格,聲明的時候使用冒號給出數(shù)據(jù)類型。 let hi: string = \'hello\'; let num: number = 0; 2.2 常量聲明
    發(fā)表于 02-26 14:24

    基于凌羽派的OpenHarmony北向應用開發(fā):ArkTS語法-數(shù)據(jù)類型和變量聲明

    一、簡介ArkTS是一種設計用于構(gòu)建高性能應用的編程語言。它在繼承TypeScript語法的基礎上進行了優(yōu)化,以提供更高的性能和開發(fā)效率。環(huán)境配置如下所示:API:18SDK:OpenHarmony-v5.1.0-Release
    的頭像 發(fā)表于 02-26 13:55 ?207次閱讀
    基于凌羽派的OpenHarmony北向應用開發(fā):ArkTS<b class='flag-5'>語法</b>-<b class='flag-5'>數(shù)據(jù)類型</b>和變量聲明

    睿遠研究院丨IO-Link規(guī)范解讀(十五):數(shù)據(jù)類型詳解

    前言 本篇對IO-Link規(guī)范的附錄F的數(shù)據(jù)類型做個詳細解釋,附錄定義了 ?基本數(shù)據(jù)類型 (Basic Data Types) 和? 組合數(shù)據(jù)類型 (Composite Data Types),并
    的頭像 發(fā)表于 01-14 18:25 ?5395次閱讀
    睿遠研究院丨IO-Link規(guī)范解讀(十五):<b class='flag-5'>數(shù)據(jù)類型</b>詳解

    LabVIEW 變體:萬能數(shù)據(jù)容器的藝術

    在LabVIEW的豐富數(shù)據(jù)類型體系中,變體(Variant)是一種極具靈活性的通用數(shù)據(jù)類型,其核心價值在于能夠兼容并封裝LabVIEW中的所有其他數(shù)據(jù)類型(包括標量、數(shù)組、簇、波形等),并支持
    發(fā)表于 01-05 11:06

    C語言主要特點

    。 3.數(shù)據(jù)類型豐富。C語言提供的數(shù)據(jù)類型包括整形、浮點型、字符型、數(shù)組類型、指針類型、結(jié)構(gòu)體類型和共用體
    發(fā)表于 01-05 07:41

    枚舉類型的講解

    枚舉是一個基本的數(shù)據(jù)類型,它可以讓數(shù)據(jù)更簡潔。 如果寫一個判斷星期的文章,我們當然可以使用宏定義來使代碼更加易懂,不過: #define MON 1 #define TUE 2
    發(fā)表于 12-08 08:14

    電能質(zhì)量在線監(jiān)測裝置支持的數(shù)據(jù)推送頻率是多少?

    電能質(zhì)量在線監(jiān)測裝置的數(shù)據(jù)推送頻率 可靈活配置 ,根據(jù)數(shù)據(jù)類型(穩(wěn)態(tài) / 暫態(tài) / 事件)和應用場景(電網(wǎng)關口 / 工業(yè)用戶 / 新能源并網(wǎng))的不同, 覆蓋從毫秒級到小時級的廣泛范圍 ,主流裝置支持
    的頭像 發(fā)表于 12-05 15:07 ?415次閱讀
    電能質(zhì)量在線監(jiān)測裝置支持的<b class='flag-5'>數(shù)據(jù)</b>推送頻率是多少?

    C語言自動類型轉(zhuǎn)換

    一、自動類型轉(zhuǎn)換 數(shù)據(jù)類型存在自動轉(zhuǎn)換的情況. 自動轉(zhuǎn)換發(fā)生在不同數(shù)據(jù)類型運算時,在編譯的時候自動完成。 char類型數(shù)據(jù)轉(zhuǎn)換為int
    發(fā)表于 11-25 08:04

    C語言強制類型轉(zhuǎn)換

    強制類型轉(zhuǎn)換是通過定義類型轉(zhuǎn)換運算來實現(xiàn)的。其一般形式為: (數(shù)據(jù)類型) (表達式) 其作用是把表達式的運算結(jié)果強制轉(zhuǎn)換成類型說明符所表示的類型
    發(fā)表于 11-24 06:32

    【HZ-T536開發(fā)板免費體驗】5、安裝sqlite3和使用golang讀寫數(shù)據(jù)

    如果想在嵌入式設備上實現(xiàn)簡單的設備管理功能,需要數(shù)據(jù)庫和服務后端程序。服務端程序,我更傾向使用golang來實現(xiàn)。 安裝sqlite3,使用ubuntu環(huán)境,可以直接用apt install安裝程序
    發(fā)表于 08-26 00:04

    SQL 通用數(shù)據(jù)類型

    SQL 通用數(shù)據(jù)類型 數(shù)據(jù)庫表中的每個列都要求有名稱和數(shù)據(jù)類型。Each column in a database table is required to have a name and a
    的頭像 發(fā)表于 08-18 09:46 ?715次閱讀

    零死角玩轉(zhuǎn)STM32——中級篇

    本文共4冊,由于資料內(nèi)存過大,分開上傳,有需要的朋友可以去主頁搜索下載哦~ 《零死角玩轉(zhuǎn) STM32》系列教程由初級篇、中級篇、高級篇、系統(tǒng)篇、四個部分組成,更適合初學者,步步為營,從入門到精通
    發(fā)表于 05-21 13:56

    IEC101協(xié)議可以傳輸什么類型數(shù)據(jù)

    IEC101協(xié)議作為電力系統(tǒng)遠動通信的核心標準,其核心能力在于支持多種類型數(shù)據(jù)的傳輸,滿足調(diào)度端與場站端(如變電站、發(fā)電廠)的實時監(jiān)控、控制及狀態(tài)感知需求。以下從數(shù)據(jù)類型、傳輸模式及典型應用場景三個
    的頭像 發(fā)表于 05-21 11:37 ?1036次閱讀

    詳解Prometheus的數(shù)據(jù)類型

    對于 Prometheus 生態(tài)的監(jiān)控系統(tǒng),PromQL 是必備技能,本文著重點講解這個查詢語言,摻雜一些生產(chǎn)實踐場景,希望對你有所幫助。
    的頭像 發(fā)表于 05-13 09:50 ?1472次閱讀
    詳解Prometheus的<b class='flag-5'>數(shù)據(jù)類型</b>

    樹莓派5 + Hailo AI加速器:工業(yè)級數(shù)值數(shù)據(jù)處理實戰(zhàn),打通SQLite與機器學習全鏈路

    本文討論了在工業(yè)自動化背景下,開發(fā)者利用樹莓派5和HailoAI加速器進行工業(yè)級數(shù)值數(shù)據(jù)處理實戰(zhàn),打通SQLite與機器學習全鏈路時遇到的問題及解決方案。關鍵要點包括:1.開發(fā)者需求:構(gòu)建能從
    的頭像 發(fā)表于 03-25 09:22 ?1237次閱讀
    樹莓派5 + Hailo AI加速器:工業(yè)級數(shù)值<b class='flag-5'>數(shù)據(jù)</b>處理實戰(zhàn),打通<b class='flag-5'>SQLite</b>與機器學習全鏈路