日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

sqlite3 select查询一列_一眼就会的sqlite3数据库

發布時間:2024/1/23 数据库 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 sqlite3 select查询一列_一眼就会的sqlite3数据库 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、SQLite數據庫簡介

SQLite 是一個軟件庫,實現了自給自足的、無服務器的、零配置的、事務性的 SQL 數據庫引擎。SQLite 是在世界上最廣泛部署的 SQL 數據庫引擎。

二、SQLite數據庫安裝

目前,幾乎所有版本的 Linux 操作系統都附帶 SQLite。所以,只要使用下面的命令來檢查您的機器上是否已經安裝了 SQLite。

如果沒安裝在Ubuntu下輸入如下命令:sudo  apt-get  install  sqlite3

三、SQLite數據庫使用

1-- 安裝數據庫:

sudo  apt-get  install  sqlite3

2-- 創建數據庫

sqlite3 stu.db

3-- sqlite命令

系統命令 以 "."開頭普通命令 ,以";"結束 .schema 查看表的結構.quit 退出數據庫.exit 退出數據庫.help 查看幫助信息.databases 查看數據庫.tables 顯示數據庫中所有的表的表名

4-- sqlite3 的使用

1-- 創建一張表

create table 表名(字段名稱1 字段類型,字段名稱2 字段類型, ....);

create table stu(id int, name char, sex char , score int);

2-- 向表中插入一條記錄

insert into 表名 values (字段值1,字段值2,...);

insert into stu values(1001, 'zhangsan', 'm', 89);insert into stu (id, name, sex,score) values(1002, 'lisi', 'm', 99);

3-- 查詢記錄

select * from stu; // 查找所有的記錄select * from stu where id=1001; // 查找符號條件的記錄select * from stu where id=1001 and name='zhangsan'; // 字符串需要加引號select * from stu where name = 'zhangsan' or score=92;

4-- 刪除記錄

delete from stu where id=1004;

5-- 更新記錄

update stu set score=98 where id=1003;

6-- 刪除一張表

drop table stu;

7-- 添加一列

alter table stu add column score int;

8-- 刪除一列

sqlite3 不允許直接刪除一列

1)先創建一張新表

create table stu1 as select id , name from stu;

2)刪除原來的舊表

drop table stu;

3)對新表重命名

alter table stu1 rename to stu;

9-- 數據庫主鍵(既設置的數據將會是唯一存在的)

create table usr(name text primary key , passwd text);

5-- sqlite3 API 函數接口

(1)int sqlite3_open( const char *filename, /* Database filename (UTF-8) */sqlite3 **ppDb /* OUT: SQLite db handle */);功能:打開一個數據庫參數:filename 數據庫名字ppdb 操作數據庫的指針,句柄。返回值:成功 SQLITE_OK , 失敗 error_code(2)const char *sqlite3_errmsg(sqlite3* db);功能:獲取錯誤信息描述(3)int sqlite3_close(sqlite3* db);功能:關閉一個數據庫(4)int sqlite3_exec(sqlite3* db, /* An open database */const char *sql, /* SQL to be evaluated */int (*callback)(void*,int,char**,char**), /* Callback function */void * arg, /* 1st argument to callback */char **errmsg /* Error msg written here */);功能:執行一條sql語句參數:db 數據庫的句柄指針sql 將要被執行sql語句callback 回調函數, 只有在查詢語句時,才給回調函數傳參arg 為callback 傳參的errmsg 錯誤信息的地址返回值:成功 SQLITE_OK出錯 errcode 錯誤碼***********************************************************int (*callback)(void* arg ,int ncolumn ,char** f_value,char** f_name)功能:得到查詢結果參數:arg 為回調函數傳遞參數使用的ncolumn 記錄中包含的字段的數目f_value 包含每個字段值的指針數組f_name 包含每個字段名稱的指針數組返回值:成功 0,出錯 非0*********************************************************(5)int sqlite3_get_table(sqlite3 *db, /* An open database */const char *zSql, /* SQL to be evaluated */char ***pazResult, /* Results of the query */int *pnRow, /* Number of result rows written here */int *pnColumn, /* Number of result columns written here */char **pzErrmsg /* Error msg written here */);功能:查詢數據庫,它會創建一個新的內存區域來存放查詢的結果信息參數:db 數據庫操作句柄sql 數據庫的sql語句azResult 查詢的結果nRow 行數nColumn 列數errmsg 錯誤消息返回值:成功 0出錯 errcodenrow的值為查詢到的符合條件的記錄數(不包括字段名)。ncolumn的值為查詢到的符合條件的字段數。注意:nrow的值不包括字段名,如果打印時用for (i = 0; i < nrow; i++)會打印出字段名,但是會少打印出一條符合條件的記錄。因此打印時要用 for (i = 0; i <nrow + 1; i++);將包括字段名在內的數據都打印出來。(6)void sqlite3_free_table(char **result);功能:釋放內存

備注:

于作者水平,難免有理解和描述上有疏漏或者錯誤的地方,歡迎共同交流;部分參考已經在正文和參考文獻中列表注明,但仍有可能有疏漏的地方,有任何侵權或者不明確的地方,歡迎指出,必定及時更正或者刪除;文章供于學習交流,轉載注明出處。

總結

以上是生活随笔為你收集整理的sqlite3 select查询一列_一眼就会的sqlite3数据库的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。