数据(Data)
能够输入计算机并能被计算机程序识别和处理的信息集合
数据库 (Database)
数据库是在数据库管理系统管理和控制之下,存放在存储介质上的数据集合
基于嵌入式的数据库
基于嵌入式Linux的数据库主要有
- SQLite, Firebird, Berkeley DB, eXtremeDB
- Firebird是关系型数据库,功能强大,支持存储过程、SQL兼容等
- SQLite关系型数据库,体积小,支持ACID事务
- Berkeley DB中并没有数据库服务器的概念,它的程序库直接链接到应用程序中
- eXtremeDB是内存数据库,运行效率高
SQLite的源代码是C,其源代码完全开放
Ubuntu20.04环境:
su
apt-get update
apt-get upgrade
安装sqlite3:
sudo apt-get install sqlite3
如果在ubuntu20.04系统中安装sqlite出现下面的错误:
“下列软件包有未满足的依赖关系:
sqlite3 : 依赖: libsqlite3-0 (= 3.8.2-1ubuntu2.2) 但是 3.11.0-1ubuntu1.5 正要被安装
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。sudo dpkg --purge --force-depends libsqlite3-0”
执行以下命令即可:
sudo apt-get install -f
sudo apt-get install libsqlite3-0
sudo apt-get install libsqlite3-dev
sudo apt-get install sqlite3
linux@ubuntu:~$ sqlite3 student.db //启动sqlite
sqlite命令分为两种:
.help 帮助 .quit 退出 .exit 退出 .schema 查看表的结构图
1-- 创建一张表 create table stuinfo(id integer, name text, age integer, score float); 2-- 插入一条记录 insert into stuinfo values(1001, 'zhangsan', 18, 80); insert into stuinfo (id, name, score) values(1002, 'lisi', 90); 3-- 查看数据库记录 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; 4-- 删除一条记录 delete from stuinfo where id=1003 and name='zhangsan'; 5-- 更新一条记录 update stuinfo set age=20 where id=1003; update stuinfo set age=30, score = 82 where id=1003; 6-- 删除一张表 drop table stuinfo; 7-- 增加一列 alter table stuinfo add column sex char; 8-- 删除一列 create table stu as select id, name, score from stuinfo; drop table stuinfo; alter table stu rename to stuinfo;