国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【嵌入式數(shù)據(jù)庫(kù)之sqlite3】

這篇具有很好參考價(jià)值的文章主要介紹了【嵌入式數(shù)據(jù)庫(kù)之sqlite3】。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

目錄

一.數(shù)據(jù)庫(kù)基本概念(理解)

1.數(shù)據(jù)

2.數(shù)據(jù)庫(kù)

二.常用的數(shù)據(jù)的數(shù)據(jù)庫(kù)(了解)

1.大型數(shù)據(jù)庫(kù)

2.中型數(shù)據(jù)庫(kù)

3.小型數(shù)據(jù)庫(kù)

三.基于嵌入式的數(shù)據(jù)庫(kù)(了解)

四.SQLite基礎(chǔ)(了解)

五.創(chuàng)建數(shù)據(jù)庫(kù)(熟練)

1.手工創(chuàng)建

2.代碼創(chuàng)建

六.SQLite編程接口

七.代碼示例(學(xué)生管理系統(tǒng))

八.水果店鋪管理系統(tǒng)


一.數(shù)據(jù)庫(kù)基本概念(理解)

1.數(shù)據(jù)

????????能夠輸入計(jì)算機(jī)并能夠計(jì)算機(jī)程序識(shí)別和處理的信息集合。(不只是數(shù)字)

2.數(shù)據(jù)庫(kù)

????????數(shù)據(jù)庫(kù)是在數(shù)據(jù)庫(kù)管理系統(tǒng)管理和控制之下,存放在存儲(chǔ)介質(zhì)上的數(shù)據(jù)集合。

二.常用的數(shù)據(jù)的數(shù)據(jù)庫(kù)(了解)

1.大型數(shù)據(jù)庫(kù)

????????Oracle公司是最早開(kāi)發(fā)關(guān)系數(shù)據(jù)庫(kù)的廠商之一,其產(chǎn)品支持最廣泛的操作系統(tǒng)平臺(tái)。目前Oracle關(guān)系數(shù)據(jù)庫(kù)產(chǎn)品的市場(chǎng)占有率名列前茅。 IBM 的DB2是第一個(gè)具備網(wǎng)上功能的多媒體關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),支持包Linux在內(nèi)的一系列平臺(tái)。

2.中型數(shù)據(jù)庫(kù)

????????Server是微軟開(kāi)發(fā)的數(shù)據(jù)庫(kù)產(chǎn)品,主要支持windows平臺(tái)。

3.小型數(shù)據(jù)庫(kù)

????????mySQL是一個(gè)小型關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),開(kāi)發(fā)者為瑞典MySQL AB公司,2008年被Sun公司收購(gòu),開(kāi)放源碼。

????????

三.基于嵌入式的數(shù)據(jù)庫(kù)(了解)

????????基于嵌入式Linux的數(shù)據(jù)庫(kù)主要有SQLite, Firebird, Berkeley DB, eXtremeDB

????????Firebird是關(guān)系型數(shù)據(jù)庫(kù),功能強(qiáng)大,支持存儲(chǔ)過(guò)程、SQL兼容等

????????SQLite關(guān)系型數(shù)據(jù)庫(kù),體積小,支持ACID事務(wù)

????????Berkeley DB中并沒(méi)有數(shù)據(jù)庫(kù)服務(wù)器的概念,它的程序庫(kù)直接鏈接到應(yīng)用程序中

????????eXtremeDB是內(nèi)存數(shù)據(jù)庫(kù),運(yùn)行效率高

四.SQLite基礎(chǔ)(了解)

????????SQLite的源代碼是C,其源代碼完全開(kāi)放。SQLite第一個(gè)Alpha版本誕生于2000年5月。 他是一個(gè)輕量級(jí)的嵌入式數(shù)據(jù)庫(kù)。

SQLite有以下特性:

???????? 零配置一無(wú)需安裝和管理配置;

????????儲(chǔ)存在單一磁盤(pán)文件中的一個(gè)完整的數(shù)據(jù)庫(kù);

????????數(shù)據(jù)庫(kù)文件可以在不同字節(jié)順序的機(jī)器間自由共享;

????????支持?jǐn)?shù)據(jù)庫(kù)大小至2TB;

????????足夠小,全部源碼大致3萬(wàn)行c代碼,250KB;

????????比目前流行的大多數(shù)數(shù)據(jù)庫(kù)對(duì)數(shù)據(jù)的操作要快;

五.創(chuàng)建數(shù)據(jù)庫(kù)(熟練)

1.手工創(chuàng)建

????????使用SQLite3工具,通過(guò)手工輸入SQL命令行完成數(shù)據(jù)庫(kù)創(chuàng)建. 用戶在Linux的命令行界面中輸入SQLite3可啟動(dòng)SQLite3工具

? ? ? ?數(shù)據(jù)庫(kù)的安裝

?sudo dpkg -i ?*.deb  //本地安裝包安裝
 sudo apt-get install sqlite3  //在線安裝

????????數(shù)據(jù)庫(kù)常用命令

? ? ? ? (1)?系統(tǒng)命令都以“ . ”開(kāi)頭

.exit //退出
.quit //退出
.table //查看表
.schema <table_name> //查看表的結(jié)構(gòu) 
.help //顯示所有命令
.database //顯示當(dāng)前打開(kāi)的數(shù)據(jù)庫(kù)文件

打開(kāi)數(shù)據(jù)庫(kù)文件?

在終端下運(yùn)行sqlite3   <*.db>,出現(xiàn)如下提示符
SQLite  version  3.7.2
Enter “.help” for instructions
Enter SQL statements terminated with a “;”
sqlite>
<*.db> 是要打開(kāi)的數(shù)據(jù)庫(kù)文件。若該文件不存在,則自動(dòng)創(chuàng)建

?????????(2)sql執(zhí)行語(yǔ)句,都以“ ;”結(jié)尾

創(chuàng)建一張表

create  table  <table_name>  (f1  type1, f2  type2,…);

crerate table stuinfo(id integer ,name char ,age intger,score float);

插入一條記錄?

insert  into  <table_name>  values (value1, value2,…);

insert into stuinfo values(1001, 'zhangsan', 18, 80);
insert into stuinfo (id, name, score) values(1002, 'lisi', 90);

?查看數(shù)據(jù)庫(kù)記錄(where后面是條件)

select  *  from  <table_name>  where  <expression>;

select * from stuinfo;
select * from stuinfo where score = 80;
select * from stuinfo where score = 80 and name= 'zhangsan';
select * from stuinfo where score = 80 or name='wangwu';
select name,score from stuinfo;  查詢指定的字段
select * from stuinfo where score >= 85 and score < 90;

?刪除一條記錄

sqlite>delete  from  <table_name>  where  <expression>;

delete from stuinfo where id=1003 and name='zhangsan';

更新一條記錄?

sqlite>update  <table_name>  set  <f1=value1>, <f2=value2>… where<expression>;  

update stuinfo set age=20 where id=1003;
update stuinfo set age=30, score = 82 where id=1003;

?刪除一張表

drop  table  <table_name>

drop table stuinfo;

?增加一列

alter table <table> add column <field> <type> default  …; 

alter table stuinfo add column sex char;

?刪除一列(通過(guò)創(chuàng)建新的表來(lái)刪除)

create table stu as select id, name, score from stuinfo;
drop table stuinfo;
alter table stu rename to stuinfo;

2.代碼創(chuàng)建

????????在程序運(yùn)行過(guò)程中,當(dāng)需要進(jìn)行數(shù)據(jù)庫(kù)操作時(shí),應(yīng)用程序會(huì)首先嘗試打開(kāi)數(shù)據(jù)庫(kù),此時(shí)如果數(shù)據(jù)庫(kù)并不存在,程序則會(huì)自動(dòng)建立數(shù)據(jù)庫(kù),然后再打開(kāi)數(shù)據(jù)庫(kù)

六.SQLite編程接口

? ? ? ? 1.打開(kāi)(創(chuàng)建)sqlite數(shù)據(jù)庫(kù)

int   sqlite3_open(char  *path,   sqlite3 **db);

path:數(shù)據(jù)庫(kù)文件路徑(數(shù)據(jù)庫(kù)名稱)
db:指向sqlite句柄的指針
返回值:成功返回0,失敗返回錯(cuò)誤碼(非零值)

? ? ? ? 2.關(guān)閉sqlite數(shù)據(jù)庫(kù) ? ? ??

int   sqlite3_close(sqlite3 *db);
    
返回值:成功返回0,失敗返回錯(cuò)誤碼

? ? ? ? 3.得到錯(cuò)誤信息的描述

const  char  *sqlite3_errmg(sqlite3 *db);         
返回值:返回錯(cuò)誤信息

? ? ? ? 4.執(zhí)行SQL語(yǔ)句操作?

Int sqlite3_exec(
sqlite3 *db,
const  char  *sql, 
sqlite3_callback callback, 
void *, char **errmsg
);

db:數(shù)據(jù)庫(kù)句柄
sql:SQL語(yǔ)句
callback:回調(diào)函數(shù)
errmsg:錯(cuò)誤信息指針的地址
返回值:成功返回0,失敗返回錯(cuò)誤碼


 /* Callback function */
功能:查詢語(yǔ)句執(zhí)行之后,會(huì)回調(diào)此函數(shù)
查詢回調(diào)函數(shù):

int (*callback)(void* arg,int ncolumns ,char** f_value,char** f_name);

參數(shù):arg   接收sqlite3_exec 傳遞來(lái)的參數(shù)
      ncolumns 列數(shù)(記錄中包含的字段數(shù)目)
      f_value 列的值的地址(包含每個(gè)字段值的指針數(shù)組)
      f_name   列的名稱(包含每個(gè)字段名稱的指針數(shù)組)
返回值:成功返回0,失敗返回-1

? ? ? ? 5.?不使用回調(diào)函數(shù)執(zhí)行SQL操作查詢

不使用回調(diào)函數(shù)執(zhí)行SQL語(yǔ)句
int   sqlite3_get_table(sqlite3 *db, const  char  *sql,  char ***resultp,  int*nrow,  int *ncolumn, char **errmsg);

db:數(shù)據(jù)庫(kù)句柄
sql:SQL語(yǔ)句
resultp:用來(lái)指向sql執(zhí)行結(jié)果的指針
nrow:滿足條件的記錄的數(shù)目
ncolumn:每條記錄包含的字段數(shù)目
errmsg:錯(cuò)誤信息指針的地址
返回值:成功返回0,失敗返回錯(cuò)誤碼

七.代碼示例(學(xué)生管理系統(tǒng))

????????管理學(xué)生的信息

八.水果店鋪管理系統(tǒng)

? ? ? ? 管理水果種類,重量,價(jià)格等信息和信息變動(dòng)記錄文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-704104.html

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sqlite3.h>
#include <time.h>
 
#define  DATABASE  "fruit.db"
#define TABLES "fruit"
#define  N  128
 
int do_insert(sqlite3 *db,char *buf);
int do_update_weight(sqlite3 *db,char *buf);
int do_update_price(sqlite3 *db);
int do_query(sqlite3 *db);
int callback(void *arg, int f_num, char ** f_value, char ** f_name);
 
int main(int argc, const char *argv[])
{
	sqlite3 *db;
	char *errmsg;
	int n;
	char sql[128] = {};
	char buf[128] = {};
 
	time_t t;
	struct tm *tp;
 
	if(sqlite3_open(DATABASE, &db) != SQLITE_OK)
	{
		printf("%s\n", sqlite3_errmsg(db));
		return -1;
	}
	else
	{
		printf("open DATABASE success.\n");
	}
	sprintf(sql,"create table if not exists '%s' (id integer primary key autoincrement,name char,weight float,price float,time char);",TABLES);
	if(sqlite3_exec(db, sql,NULL, NULL, &errmsg) != SQLITE_OK)
	{
		printf("%s\n", errmsg);
	}
	else
	{
		printf("Create or open table success.\n");
	}
	time(&t);
	tp = localtime(&t);
	sprintf(buf,"%d-%02d-%02d %02d:%02d:%02d\n",tp->tm_year+1900, tp->tm_mon+1,tp->tm_mday, tp->tm_hour, tp->tm_min, tp->tm_sec);
	
	printf("%s",buf);
	while(1)
	{
		puts("-----------------------------------------");
		do_query(db);
		puts("-----------------------------------------");
		puts("");
		printf("********************************************\n");
		printf("1: insert 插入  2:query 查詢 3:trade 交易 4:update 更新 5:quit 退出系統(tǒng)\n");
		printf("********************************************\n");
		printf("Please select:");
		scanf("%d", &n);
 
		switch(n)
		{
		case 1:
			do_insert(db,buf);
			break;
		case 2:
			do_query(db);
			break;
		case 3:
			do_update_weight(db,buf);
			break;
		case 4:
			do_update_price(db);
			break;
		case 5:
			printf("main exit.\n");
			sqlite3_close(db);
			exit(0);
			break;
		default :
			printf("Invalid data n.\n");
		}
 
	}
 
	return 0;
}
 
 
 
int do_insert(sqlite3 *db,char *buf)
{
	char name[32] = {};
	float weight;
	float price;
	char sql[N] = {};
	char *errmsg;
 
 
	printf("Input fruit name:");
	scanf("%s", name);
	getchar();
 
	printf("Input weight:");
	scanf("%f", &weight);
 
	printf("Input price:");
	scanf("%f", &price);
 
	sprintf(sql, "insert into '%s' (name,weight,price,time)values('%s', '%.3f', '%.3f','%s')",TABLES, name, weight, price,buf);
 
	if(sqlite3_exec(db, sql, NULL, NULL, &errmsg) != SQLITE_OK)
	{
		printf("%s\n", errmsg);
	}
	else
	{
		printf("Insert done.\n");
	}
 
	return 0;
}
 
 
int do_update_weight(sqlite3 *db,char *buf)
{
	int id;
	char sql[N] = {};
	char *errmsg;
	float weight;
 
	printf("Input id:");
	scanf("%d", &id);
 
	printf("Input weight:");
	scanf("%f", &weight);
 
 
	sprintf(sql, "update '%s' set weight='%f',time='%s' where id=%d",TABLES, weight,buf,id);
 
	if(sqlite3_exec(db, sql, NULL, NULL, &errmsg) != SQLITE_OK)
	{
		printf("%s\n", errmsg);
	}
	else
	{
		printf("Delete done.\n");
	}
 
	return 0;
}
 
 
int do_update_price(sqlite3 *db)
{
	float price;
	int id;
	char sql[N] = {};
	char *errmsg;
 
	printf("Input id:");
	scanf("%d", &id);
 
	printf("Input alter price:");
	scanf("%f", &price);
 
	sprintf(sql, "update '%s' set price='%f' where id=%d",TABLES , price,id);
 
	if(sqlite3_exec(db, sql, NULL, NULL, &errmsg) != SQLITE_OK)
	{
		printf("%s\n", errmsg);
	}
	else
	{
		printf("update done.\n");
	}
 
	return 0;
}
 
 
int callback(void *arg, int f_num, char ** f_value, char ** f_name)
{
	int i = 0;
 
	for(i = 0; i < f_num; i++)
	{
		//	printf("%-8s %s", f_value[i], f_name[i]);
		printf("%-8s", f_value[i]);
	}
 
	putchar(10);
 
	puts("-----------------------------------------");
 
	return 0;
}
 
int do_query(sqlite3 *db)
{
	char *errmsg;
	char sql[N] = {};
 
	sprintf(sql,"select * from '%s';",TABLES);
	if(sqlite3_exec(db, sql, callback,NULL , &errmsg) != SQLITE_OK)
	{
		printf("%s", errmsg);
	}
	else
	{
		printf("select done.\n");
	}
	return 0;
}

到了這里,關(guān)于【嵌入式數(shù)據(jù)庫(kù)之sqlite3】的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 嵌入式數(shù)據(jù)庫(kù):SQLite3的安裝和使用說(shuō)明

    嵌入式數(shù)據(jù)庫(kù):SQLite3的安裝和使用說(shuō)明

    目錄 一,SQLite簡(jiǎn)介 ①?SQLite與傳統(tǒng)服務(wù)器型數(shù)據(jù)庫(kù) ②?SQLite與MySQL比較 ③ 基于嵌入式的數(shù)據(jù)庫(kù)種類 二,SQLite數(shù)據(jù)庫(kù)安裝 ① 輸入命令安裝 ② 網(wǎng)頁(yè)安裝 ● 安裝步驟 三,SQLite命令用法 ●?創(chuàng)建一個(gè)數(shù)據(jù)庫(kù) ●?創(chuàng)建一張表格 ●?插入一條記錄 ●?查看數(shù)據(jù)庫(kù)的記錄 ●?刪除一條

    2024年01月21日
    瀏覽(36)
  • BL302嵌入式ARM控制器進(jìn)行SQLite3數(shù)據(jù)庫(kù)操作的實(shí)例演示

    BL302嵌入式ARM控制器進(jìn)行SQLite3數(shù)據(jù)庫(kù)操作的實(shí)例演示

    本文主要講述了在鋇錸技術(shù)BL302嵌入式arm控制器上運(yùn)行 SQLite3 數(shù)據(jù)庫(kù)的命令示例。SQLite3 是一個(gè)輕型的嵌入式數(shù)據(jù)庫(kù),不需要安裝數(shù)據(jù)庫(kù)服務(wù)器進(jìn)程,占用資源低且處理速度快。 首先,需要將對(duì)應(yīng)版本的 SQLite3 文件復(fù)制到設(shè)備的 /usr/ 目錄下,并解壓縮。然后進(jìn)入 /usr/lib 目錄,

    2024年02月14日
    瀏覽(22)
  • 嵌入式數(shù)據(jù)庫(kù)sqlite3【基礎(chǔ)篇】基本命令操作,小白一看就懂(C/C++)

    嵌入式數(shù)據(jù)庫(kù)sqlite3【基礎(chǔ)篇】基本命令操作,小白一看就懂(C/C++)

    目錄 前言 一、sqlite概念和特性 二、sqlite安裝 三、sqlite3數(shù)據(jù)類型? 四、sqlite數(shù)據(jù)庫(kù)約束 五、sqlite常用命令? 六、SQL語(yǔ)句(增刪改查) 七、sqlite使用實(shí)例(教學(xué)管理數(shù)據(jù)庫(kù)) 總結(jié) 數(shù)據(jù)在實(shí)際工作中應(yīng)用非常廣泛,數(shù)據(jù)庫(kù)的產(chǎn)品也比較多,oracle、DB2、SQL2000、mySQL;基于嵌入式

    2024年02月08日
    瀏覽(21)
  • 嵌入式培訓(xùn)機(jī)構(gòu)四個(gè)月實(shí)訓(xùn)課程筆記(完整版)-Linux系統(tǒng)編程第八天-Linux sqlite3數(shù)據(jù)庫(kù)(物聯(lián)技術(shù)666)

    ???更多配套資料CSDN地址:點(diǎn)贊+關(guān)注,功德無(wú)量。更多配套資料,歡迎私信。 物聯(lián)技術(shù)666_嵌入式C語(yǔ)言開(kāi)發(fā),嵌入式硬件,嵌入式培訓(xùn)筆記-CSDN博客 物聯(lián)技術(shù)666擅長(zhǎng)嵌入式C語(yǔ)言開(kāi)發(fā),嵌入式硬件,嵌入式培訓(xùn)筆記,等方面的知識(shí),物聯(lián)技術(shù)666關(guān)注機(jī)器學(xué)習(xí),arm開(kāi)發(fā),物聯(lián)網(wǎng),嵌入式硬件

    2024年01月25日
    瀏覽(31)
  • 嵌入式數(shù)據(jù)庫(kù)之SQLite

    嵌入式數(shù)據(jù)庫(kù)之SQLite

    1.SQLite簡(jiǎn)介 輕量化,易用的嵌入式數(shù)據(jù)庫(kù),用于設(shè)備端的數(shù)據(jù)管理,可以理解成單點(diǎn)的數(shù)據(jù)庫(kù)。傳統(tǒng)服務(wù)器型數(shù)據(jù) 庫(kù)用于管理多端設(shè)備,更加復(fù)雜。 SQLite是一個(gè)無(wú)服務(wù)器的數(shù)據(jù)庫(kù),是自包含的。這也稱為嵌入式數(shù)據(jù)庫(kù),這意味著數(shù)據(jù)庫(kù)引擎作 為應(yīng)用程序的一部分運(yùn)行。 My

    2024年02月15日
    瀏覽(19)
  • lv9 嵌入式開(kāi)發(fā) 數(shù)據(jù)庫(kù)sqlite

    lv9 嵌入式開(kāi)發(fā) 數(shù)據(jù)庫(kù)sqlite

    數(shù)據(jù)(Data) ? ? ? ????????能夠輸入計(jì)算機(jī)并能被計(jì)算機(jī)程序識(shí)別和處理的信息集合 數(shù)據(jù)庫(kù) (Database) ? ? ????????數(shù)據(jù)庫(kù)是在數(shù)據(jù)庫(kù)管理系統(tǒng)管理和控制之下,存放在存儲(chǔ)介質(zhì)上的數(shù)據(jù)集合 大型數(shù)據(jù)庫(kù) Oracle公司是最早開(kāi)發(fā)關(guān)系數(shù)據(jù)庫(kù)的廠商之一,其產(chǎn)品支持最廣

    2024年02月05日
    瀏覽(19)
  • 嵌入式中如何用C語(yǔ)言操作sqlite3(07)

    嵌入式中如何用C語(yǔ)言操作sqlite3(07)

    sqlite3編程接口非常多,對(duì)于初學(xué)者來(lái)說(shuō),我們暫時(shí)只需要掌握常用的幾個(gè)函數(shù),其他函數(shù)自然就知道如何使用了。 本篇假設(shè)數(shù)據(jù)庫(kù)為my.db,有數(shù)據(jù)表student。 no name score 4 嵌入式開(kāi)發(fā)愛(ài)好者 89.0 創(chuàng)建表格語(yǔ)句如下: sqlite3_open sqlite3_close sqlite3_get_table 舉例 下面比如我們要顯示st

    2024年02月07日
    瀏覽(19)
  • 一個(gè)小巧、快速、輕量級(jí)的 .NET NoSQL 嵌入式數(shù)據(jù)庫(kù)

    一個(gè)小巧、快速、輕量級(jí)的 .NET NoSQL 嵌入式數(shù)據(jù)庫(kù)

    今天給大家分享一個(gè)小巧、快速、輕量級(jí)的 .NET NoSQL 嵌入式數(shù)據(jù)庫(kù):LiteDB。本篇文章主要是介紹LiteDB和在.NET中如何使用。 LiteDB 是一個(gè)小巧、快速和輕量級(jí)的 .NET NoSQL 嵌入式數(shù)據(jù)庫(kù)。 無(wú)服務(wù)器的 NoSQL 文檔存儲(chǔ) 簡(jiǎn)單的 API,類似于 MongoDB 100% 的 C# 代碼支持 .NET 4.5 / NETStandard 1.

    2024年02月02日
    瀏覽(21)
  • Python數(shù)據(jù)庫(kù)模塊(sqlite3,SQLite3)

    創(chuàng)建數(shù)據(jù)庫(kù):在控制臺(tái)sqlite3 name sqlite3.connect(database [,timeout ,other optional arguments]) 打開(kāi)數(shù)據(jù)庫(kù);如果指數(shù)據(jù)庫(kù)存在則返回一個(gè)連接對(duì)象,如果不存在則會(huì)創(chuàng)建一個(gè)數(shù)據(jù)庫(kù); connection.cursor() 創(chuàng)建一個(gè)cursor; cursor.execute(sql) 執(zhí)行一個(gè)sql語(yǔ)句,該語(yǔ)句可以被參數(shù)化; connection.execut

    2024年03月19日
    瀏覽(27)
  • 數(shù)據(jù)庫(kù)--Sqlite3

    數(shù)據(jù)庫(kù)--Sqlite3

    ?1、思維導(dǎo)圖 ?2sqlite3在linux中是實(shí)現(xiàn)數(shù)據(jù)的增刪,改 #includemyhead.h int main(int argc, const char *argv[]) { ? ? ? ? //1、定義一個(gè)數(shù)據(jù)庫(kù)句柄指針 ? ? ? ? sqlite3* ppDb =NULL; ? ? ? ? //2、創(chuàng)建或打開(kāi)數(shù)據(jù)庫(kù) ? ? ? ? if(sqlite3_open(\\\"./mydb.db\\\",ppDb)!=SQLITE_OK) ? ? ? ? { ? ? ? ? ? ? ? ? printf(

    2024年04月27日
    瀏覽(28)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包