news 2026/4/23 14:36:31

数据库——基础概念与 SQLite 实践

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
数据库——基础概念与 SQLite 实践

目录

一、数据库的核心概念

二、SQLite 概述

三、SQLite 的安装与编译

1.安装(Linux 系统)

2.编译(C 语言程序)

四、SQLite 操作指令与 SQL 语句

1.SQLite 终端指令

2.常用 SQL 语句

五、C 语言操作 SQLite


数据库是用于存储、统计与管理数据(增删改查)的系统,广泛应用于各类场景,包括嵌入式设备。本文将介绍数据库基础概念,并以 SQLite 为例展开实践说明。

一、数据库的核心概念

数据库的层级结构为:库→表(行)→记录(行)→字段(列)。

常用数据库按规模分类:

  • 大型数据库:ORACLE
  • 中型数据库:MySQL、MSSQL
  • 小型数据库:SQLite、DBII、powdb

关键术语:

  • DB:数据库
  • DBMS:数据库管理系统
  • MIS:管理信息系统
  • OA:办公自动化

二、SQLite 概述

SQLite 是一款嵌入式数据库,具备以下特性:

  1. 开源,基于 C 语言开发
  2. 代码量约 1 万行,整体体积小于 10M
  3. 无需安装,为绿色软件
  4. 属于文件型数据库,可直接移动
  5. 最大数据存储容量为 2T

三、SQLite 的安装与编译

1.安装(Linux 系统)

执行以下命令完成安装:

sudo apt-get install sqlite3 # 安装SQLite工具 sudo apt-get install libsqlite3-dev # 安装开发依赖库

2.编译(C 语言程序)

编写 C 语言代码后,通过以下命令编译(以 sqli.c 为例):

gcc sqli.c -lsqlite3

四、SQLite 操作指令与 SQL 语句

1.SQLite 终端指令

进入 SQLite 环境(执行 sqlite3 数据库名 .db)后,常用指令:

  • .database:查看数据库关联文件
  • .table:查看数据库中的表
  • .schema:查看表的创建语句
  • .q/.quit/.exit:退出数据库
  • .header on:查询结果显示表头

2.常用 SQL 语句

SQL 语句需以分号结尾,核心操作如下:

  • 创建表
create table user(id int, name char, age int);
  • 删除表:
drop table user;
  • 插入数据
insert into user values(3,"wang",11);
  • 查询数据
select * from user where age>20 or age<50;
  • 修改数据:
update user set id = 1 where name = 'li';
  • 删除数据
delete from user where id = 1 or id = 2;

五、C 语言操作 SQLite

通过 C 语言操作 SQLite 的核心流程为:

  1. 打开数据库(sqlite3_open)
  2. 执行 SQL 语句(sqlite3_exec)
  3. 关闭数据库(sqlite3_close)

示例代码如下(向 user 表插入数据):

#include <stdio.h> #include <sqlite3.h> int main(int argc, char** argv) { sqlite3* db = NULL; // 1. 打开数据库 int ret = sqlite3_open("123.db", &db); if (ret != SQLITE_OK) { fprintf(stderr, "sqlite3_open: %s\n", sqlite3_errmsg(db)); sqlite3_close(db); return 1; } char* errmsg = NULL; // 2. 执行SQL语句 char sql_cmd[512] = "insert into user values(6,'zhangsan',21);"; ret = sqlite3_exec(db, sql_cmd, NULL, NULL, &errmsg); if (ret != SQLITE_OK) { fprintf(stderr, "sqlite3_exec: %s\n", errmsg); sqlite3_free(errmsg); sqlite3_close(db); return 1; } // 3. 关闭数据库 sqlite3_close(db); return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/22 22:59:45

Anaconda Prompt命令行安装PyTorch-GPU版本指南

基于 Anaconda 快速构建 PyTorch-GPU 开发环境 在深度学习项目中&#xff0c;最让人头疼的往往不是模型设计&#xff0c;而是环境配置——明明代码没问题&#xff0c;却因为 CUDA not available 卡住一整天。特别是当你要在 Windows 上用 GPU 训练一个 Transformer 模型时&…

作者头像 李华
网站建设 2026/4/23 11:14:28

mptools v8.0自定义安装路径配置实战案例

mptools v8.0 自定义安装路径实战&#xff1a;从原理到避坑全解析你有没有遇到过这样的场景&#xff1f;在企业服务器上部署一个管理工具&#xff0c;刚准备执行安装脚本&#xff0c;系统却报错&#xff1a;Error: Cannot write to /opt/mptools — Permission denied再一看安全…

作者头像 李华
网站建设 2026/4/23 12:33:54

新手避坑指南:PyTorch安装常见错误与解决方案

新手避坑指南&#xff1a;PyTorch安装常见错误与解决方案 在深度学习的世界里&#xff0c;一个看似简单的“import torch”失败&#xff0c;可能意味着你接下来要花上几个小时甚至几天去排查驱动版本、CUDA 兼容性、Python 依赖冲突……这种经历对初学者来说再熟悉不过。明明只…

作者头像 李华
网站建设 2026/4/23 11:11:36

SSH隧道转发实现安全访问远程Jupyter服务

SSH隧道转发实现安全访问远程Jupyter服务 在深度学习和人工智能开发中&#xff0c;越来越多的团队与个人选择将计算密集型任务部署在配备高性能 GPU 的远程服务器上。然而&#xff0c;如何安全、便捷地访问这些资源&#xff0c;尤其是在使用交互式工具如 Jupyter Notebook 时&a…

作者头像 李华
网站建设 2026/4/23 12:10:30

如何在PyTorch-CUDA-v2.8中使用wandb记录训练指标?

如何在 PyTorch-CUDA-v2.8 中使用 wandb 记录训练指标&#xff1f; 在深度学习项目中&#xff0c;一个常见的尴尬场景是&#xff1a;你启动了一个长达数小时的训练任务&#xff0c;却只能靠打印 loss 值来“盲猜”模型是否收敛。等训练结束一看结果&#xff0c;才发现早早就过…

作者头像 李华