2-Sqlite数据库的基本操作

184 阅读2分钟

数据库的基本操作

安装 SQLite 数据库

apt-get install sqlite3
apt-get install libsqlite3-dev

SQLite 支持的数据类型(sqlite 表中字段的数据类型)

空类型:NULL
整形数据: INTERGER
实体型数据: REAL
文本型数据: TEXT
BLOB型数据库: 二进制类型数据数据,不做任何格式的转换

SQL 语言简介

    (1) 什么是sql语言
    sql(Structure Query Language, 结构化查询语言)是一种数据库专用的计算机语言。

    (2) SQL 语句的组成

    SQL语言是由命令、子句、运算符、加总函数等组成。

    SQL命令表示对数据的操作,主要包括插入,删除,查询,修改,
    常用的SQL命令有:select insert update  delete

    子句用于设定命令要操作的对象, SQL 常用的子句有 fromwhereorder by

    运算符, 子句中使用运算符构成不同的条件表达式,常用的运算符有:
    AND,OR,NOT, <, <=, >, >=, =, !=

    统计函数,常用的统计函数有
    AVG(求平均值),COUNT(统计记录个数),SUM(求和),MAX(求最大值),MIN(求最小值)

    例如:select count(*) from stuInfo // 求学生信息的记录数
         select avg(math) from stuInfo // 求数学平均分

SQLite 常用命令

数据库文件及数据表操作命令
(1) 进入sqlite命令行界面,#sqlite DbName; // 打开数据库,进入sqlite命令行界面
(2) 查看sqlite支持的命令 sqlite>.help
(3) 退出sqlite命令行界面 sqlite>.quit
(4) 显示当前打开的数据库文件 sqlite>.database
(5) 显示数据库中所有的表名 sqlite>.tables
(6) 创建一个新得数据库表
    sqlite> create table <table_name> (field1 type1, field2 type2 ...)
(7) 查看表结构 sqlite>.schema <table_name>
(8) 删除数据表sqlite> drop table <table_name>

为数据库创建一个表
    学号(stuno) INTERGER
    姓名(name) TEXT
    年龄(age) INTERGER

# 创建表
create table stuInfo(stuno interger, name text, age interger);
# 查看有那些表
.tables
# 查看表结构
.schema stuInfo

数据记录操作命令

-- (1) 往数据表中新增一条记录
sqlite>insert into <table_name> values(value1, value2 ...)

-- 例如新增一条学生信息:
sqlite>insert into stuInfo values(100, "jack", 19);
sqlite>insert into stuInfo values(101, "henry", 43);
sqlite>insert into stuInfo values(102, "jack", 33);

-- (2) 查询表中的记录

-- 查询表中所有记录
sqlite>select * from <table_name>
-- 查询表中满足某些条件的记录
sqlite>select * from <table_name> where <条件表达式>
-- 例如:
-- 查询姓名等于susan的学生信息
sqlite>select * from stuInfo where Name="susan"

-- (3) 删除表中记录
-- 删除表中满足条件的记录
sqlite>delete from <table_name> where <条件表达式>
-- 例如:删除stuInfo表中年龄大于等于40的学生信息
sqlite>delete from stuInfo where Age >= 40

-- (4) 更新表中的记录
-- 更新表中满足某种条件的记录信息
sqlite>update <table_name> set <field1=value1>,<field2=value2> where <条件表达式>

-- 例如:修改姓名为susan的学生记录的年龄为22,学号为"008"
sqlite>update stuInfo set Age=22,stuNo="008" where Name="susan"