SQLite基礎學習(1)——SQL基本語句
SQLite基礎學習
以前學習接觸過數據庫,但沒做什么總結,加上許久沒有加以學習,知識丟了很多。現在又重新撿起數據庫的學習,而且剛開始用SQLite,在此作一些個人總結。
一. SQLite簡述
1. 什么是SQLite
SQLite是一款輕型的數據庫,它的占用內存最低只需要幾百k就可以運行,同時它的運行速度較快,效率高,支持多種開發語言,C, C++, PHP, Perl, Java, C#,Python, Ruby等。
2. SQLite的安裝配置
SQLite下載:http://www.sqlite.org/download.html
SQLitem的下載及環境配置并不復雜,但在此作為整體總結,還是簡略作一些說明。
(1) 訪問 SQLite 官網,從 Windows 區下載預編譯的二進制文件s【qlite-dll-】和【sqlite-tools-】。
(2)解壓后得到【sqlite3.def】【sqlite3.dll】文件還有【sqlite3.exe】 【sqlite3_analyzer.exe】 【sqldiff.exe】
(3)環境變量配置:【計算機屬性】——【高級系統設置】——【環境變量……】——【將sqlite3.exe所在文件夾路徑加入path】
(4)打開cmd命令窗,直接輸入sqlite3,顯示如下則配置成功:
二 .SQL基本語句
sql語言是一種對關系型數據庫中的數據進行定義和操作的語言,對語言的學習是數據庫學習的基礎。此處自己一邊學習一邊整理了的一些sql基本語句。
1.創建表語句
create table <表名>(<列名><數據類型>[列級完整性約束條件],
<列名><數據類型>[列級完整性約束條件],
.........
[表級完整性約束條件]);
例如:create table student ( Sno char(5) not null unique,
Sname char(4) unique,
Ssex char(1),
Sage int,
Sdept char(15));
2.修改表語句
alert table <表名>
[add <新列名> <數據類型> [完整性約束]] //add: 用于向表中增加新列及新列相關的完整性約束條件,新的列增加成功后不帶任何數據
[drop <完整性約束名>]//drop:用于刪除指定的完整性約束條件
[modify <列名><數據類型>];//modify:用于修改原來的列定義,包括修改列名和數據類型,列數據類型修改后可能會丟失原有的數據
例:
alert table student add Scome date;
alert table student modify Sage smallint;
alert table student drop unique(Sname);
3.存儲類型
NULL 值是空值
INTEGER 值是帶符號的整型
REAL 值是浮點數
TEXT 值是文本字符串
BLOB 值是一個二進制類型
4.查詢語句
注:select語句中所有使用的關鍵詞必須精確的以下面的順序給出,如果以降序排列,則在order by中加入關鍵字desc,升序則加入關鍵字asc,默認是升序
select [distinct | distinctRow | all]
列名[,列名][,....]
[into {outfile | dumpfile} '文件名' export_options]
[from 表名]
[where 查詢條件]
[group by 列名[, ....]]
[having 條件定義]//having子名能引用任何列或在查詢中命名的別名,它最后運用,就在項目被送到客戶之前是,沒有變化。需要注意,不要對應該在where子句中的項目使用having.
[order by {無符號整數|列名|公式}[asc | desc],...]
[limit [偏移量,] 行數]//limit子名被用來限制select返回的行數,如果給定1個參數,它指出返回行的最大數目;如果給定2個參數,第一個指定要返回的第一行的偏移量,第二個指定返回行的最大數目,初始行的偏移量是0
[procedure 過程名稱]
例:
// 根據姓名和年齡查詢表中的數據
select * from Student where name = '%@' and age = '%ld'
select * from Student 查詢所有
//返回前6個記錄
select * from table limit 6;
//返回第6到第15個記錄
select * from table limit 5,10;
5.刪除語句
注:數據刪除指的是刪除數據庫中的一個記錄,而不是刪除某一列
delete from <表名> where <條件表達式>
例:
// 根據年齡刪除表中的數據
delete from Student where age > '%ld'
6.插入語句
insert into <表名> [<列名>[,<列名>]....) values (value1, value2,...);
//如果表中的每一列均有數據插入,則可不用指定任何表名
例:
// 在創建的表中添加數據
insert into Stuent(name ,gender ,age , number) values('%@' ,'%@' , '%ld' , '%ld')
7.更新語句
update <表名> set <列名>=新值 where <條件表達式>
例:
// 按照姓名更新年齡
update lanOuPerson set age = '%ld' where name = '%@'
這里整理的都是SQL最基本的語句,還有很多沒整理出來,后續會加以整理。
相關學習鏈接.
[1] SQL語句大全:
https://baike.baidu.com/
[2] SQLite教程:
http://www.runoob.com/sqlite/sqlite-tutorial.html
智能推薦
SQL語法以及語句的基本用法(1)
一些最重要的 SQL 命令: SELECT - 從數據庫中提取數據 UPDATE - 更新數據庫中的數據 DELETE - 從數據庫中刪除數據 INSERT INTO - 向數據庫中插入新數據 CREATE DATABASE - 創建新數據庫 ALTER DATABASE - 修改數據庫 CREATE TABLE - 創建新表 ...
SQL基本語句
3.1SQL概述 3.2學生-課程數據庫 3.3數據定義 3.3.1模式的定義與刪除 1.定義模式 在SQL中,模式定義語句如下: CREATE SCHEMA<模式名>AUTHORIZATION<用戶名>; 如果沒有指定<模式名>,那么<模式名>隱含為<用戶名>。 要創建模式,調用該命令的用戶必須擁有數據庫管理員權限,或者獲得了管理員授予...
SQL基本語句實例
目錄 基礎語句 創建、插入數據 刪除表,增加列 視圖操作 索引操作 單表操作 多表操作 表達式與函數的使用 相關子查詢 內、外連接 基礎語句 創建、插入數據 刪除表,增加列 根據表的 STUDENTS 表,建立一個只包含學號、姓名、年齡的女學生表。 視圖操作 索引操作 單表操作 條件比較運算符=、<和邏輯運算符 AND (與),此外還可以使用的運算符有:>、>=、<=、<>、 NOT (非)、 O...
freemarker + ItextRender 根據模板生成PDF文件
1. 制作模板 2. 獲取模板,并將所獲取的數據加載生成html文件 2. 生成PDF文件 其中由兩個地方需要注意,都是關于獲取文件路徑的問題,由于項目部署的時候是打包成jar包形式,所以在開發過程中時直接安照傳統的獲取方法沒有一點文件,但是當打包后部署,總是出錯。于是參考網上文章,先將文件讀出來到項目的臨時目錄下,然后再按正常方式加載該臨時文件; 還有一個問題至今沒有解決,就是關于生成PDF文件...
猜你喜歡
電腦空間不夠了?教你一個小秒招快速清理 Docker 占用的磁盤空間!
Docker 很占用空間,每當我們運行容器、拉取鏡像、部署應用、構建自己的鏡像時,我們的磁盤空間會被大量占用。 如果你也被這個問題所困擾,咱們就一起看一下 Docker 是如何使用磁盤空間的,以及如何回收。 docker 占用的空間可以通過下面的命令查看: TYPE 列出了docker 使用磁盤的 4 種類型: Images:所有鏡像占用的空間,包括拉取下來的鏡像,和本地構建的。 Con...
requests實現全自動PPT模板
http://www.1ppt.com/moban/ 可以免費的下載PPT模板,當然如果要人工一個個下,還是挺麻煩的,我們可以利用requests輕松下載 訪問這個主頁,我們可以看到下面的樣式 點每一個PPT模板的圖片,我們可以進入到詳細的信息頁面,翻到下面,我們可以看到對應的下載地址 點擊這個下載的按鈕,我們便可以下載對應的PPT壓縮包 那我們就開始做吧 首先,查看網頁的源代碼,我們可以看到每一...
Linux C系統編程-線程互斥鎖(四)
互斥鎖 互斥鎖也是屬于線程之間處理同步互斥方式,有上鎖/解鎖兩種狀態。 互斥鎖函數接口 1)初始化互斥鎖 pthread_mutex_init() man 3 pthread_mutex_init (找不到的情況下首先 sudo apt-get install glibc-doc sudo apt-get install manpages-posix-dev) 動態初始化 int pthread_...
統計學習方法 - 樸素貝葉斯
引入問題:一機器在良好狀態生產合格產品幾率是 90%,在故障狀態生產合格產品幾率是 30%,機器良好的概率是 75%。若一日第一件產品是合格品,那么此日機器良好的概率是多少。 貝葉斯模型 生成模型與判別模型 判別模型,即要判斷這個東西到底是哪一類,也就是要求y,那就用給定的x去預測。 生成模型,是要生成一個模型,那就是誰根據什么生成了模型,誰就是類別y,根據的內容就是x 以上述例子,判斷一個生產出...