linux c 应该学哪个数据库,Linux c 数据库 学习

一、数据库的安装:

1、将sqlite3安装包移动到Linux/tmp)

2、解压:tar -xzvf sqlite-autoconf-3071700.tar.gz

3、进入文件:cd sqlite-autoconf-3071700

4、运行./configure(用来生成makefile文件)

5、make

6、sudo make install

二、数据库的启动

sqlite3 student.db

(其中student.db是要操作的数据库文件,如果不存在就会自动新建。一个新的空数据库)

三、sqlite3命令行工具

.exit,退出sqlite互动模式的命令

.help,列出命令的提示信息

.tables,显示数据库中所有表名。

.schema查看表结构

.datebase 显示当前打开的数据库文件

四、创建表

用create语句在数据库中创建表

create table student(

ID INTEGER,

name TEXT,

sex TEXT,

age INTEGER,

primary key(ID)

);

五、增加一列数据以及表的重命名

alter table stu rename to stu2;//将表stu重命名为stu2

alter table stu1 add column sex text;//在表stu1中增加sex列

六、删除表

drop table student; //将表 student 删除

七、插入记录以及查询

insert into student values(1,'zhang','M',18); //插入新纪录

select id from stu1; //查找stu1中的id

select * from stu1; //查找stu1中的所有信息

select * from stu1 order by id; //按ID的顺序查找stu1中的所有信息

select * from stu1 order by id asc; //按id的正顺序查找stu1的所有信息

select * from stu1 order by id desc; //......倒序查询

select * from stu1 where id >3; //查找id>3 的所有信息

select * from stu1 where id between 2 and 4;

select * from stu1 where id >=2 and id<=4; //查找2<=id<=4的所有信息

select * from stu1 where name like 'T%'; //T开头的名字的所有信息

select * from stu1 where name like '%T%'; //有T的名字 的所有信息

八、修改记录

update stu1 ?set name ='wim'where id =2; //将表stu1中id=2的那么改为wim

九、删除记录

delete from student where ID=2;

如果没有where子句,则整张表都会被删掉成为一张空表;

十、打开数据库

#include //头文件

int sqlite3_open (文件名,sqlite3**);

这个函数开始数据库操作。传入两个参数,文件名 eg:database.db。

(如果此文件不存在,sqlite会自动建立)

代码段:

int main()

{

sqlite3 *db =NULL;

int result;

result=sqlite3_open("database.db",&db);

if(result!=SQLITE_OK)

{

return -1;

}

sqlite3_close(db);

return 0;

}

十一、执行sql语句

int sqlite3_exec(sqlite3*,const char * sql,sqlite3_callback,viod*,char **errmsg);

这是 执行一条sql语句的函数。

1、第一个参数:前面open函数得到的指针;

2、const char *sql: 一条sql语句,以\0结尾;

3、sqlite3_callback 是回调 ,当这条语句执行完之后,sqlite3 会去调用你提供的函数;

4、viod*:这个参数最终会传到回调函数里,如果不需要传递指针给回调函数,可以填NULL;

5、char ** errmsg:这是错误信息。 注意 是指针的指针。sqlite3里面有很多固定的错误信息

执行sqlite3_exec之后,执行失败时可以查阅这个指针(直接printf("%s\n",errmsg);)

得到一个字符串信息告诉你错在哪?

6、编译时需要加入-lsqlite3的库文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值