博客
关于我
sqlite3笔记
阅读量:486 次
发布时间:2019-03-07

本文共 2405 字,大约阅读时间需要 8 分钟。

SQLite数据库安装与使用指南

1. 安装 SQLite

1.1 本地安装

如果你使用的是 Ubuntu 或 Debian 系统,可以通过以下命令安装 SQLite:

sudo dpkg -i *.deb

安装完成后,运行以下命令查看 SQLite 版本:

sqlite3 --version

这将显示 SQLite 的版本信息,确认安装成功。

1.2 在线安装

如果你的系统已经支持包管理工具(如 apt-get),并且你能连接互联网,可以通过以下命令在线安装 SQLite:

sudo apt-get install sqlite3

2. 创建数据库

2.1 创建数据库

运行以下命令创建一个名为 student.db 的数据库:

sqlite3 student.db

注意:数据库文件名可以任意命名,但 student.db 是常用的选择。

3. 数据库基本操作

3.1 系统命令

  • 查看帮助文档:
    .help
  • 退出 SQLite 会话:
    .quit
  • 退出提示:
    .exit
  • 查看当前打开的数据库:
    .databases

3.2 SQL 命令

3.2.1 创建表

  • 创建一个新表 stu
    create table stu(    id integer,    name char,    score integer);
  • 如果表已存在,使用以下命令创建(不会报错):
    create table if not exists student(    id integer,    name char,    score integer);

3.2.2 插入数据

  • 插入一条记录:
    insert into stu values(100, 'zhangsan', 80);
  • 插入特定字段的值:
    insert into stu (name, score) values('zhangsan', 100);

3.2.3 查询数据

  • 查询所有记录:
    select * from stu;
  • 查询指定字段:
    select name from stu;
  • 根据条件查询:
    select * from stu where score = 80;

3.2.4 删除记录

  • 删除整个表:
    delete from stu;
  • 删除特定条件的记录:
    delete from stu where name = 'zhangsan';

3.2.5 修改字段

  • 更新特定记录:
    update stu set name = 'cainiao' where id = 1002;

3.2.6 表操作

  • 添加一列:
    alter table stu add column address char;
  • 删除一列(注意:SQLite 不支持直接删除列,需通过以下步骤操作):
  • 创建新表:
    create table stdu1 as select id, name, score from stu;
  • 删除旧表:
    drop table stu;
  • 重命名新表为旧表名:
    alter table stu1 rename to stu;

4. 编译 SQLite 应用程序

4.1 安装依赖

安装 SQLite 开发库:

sudo apt-get install libsqlite3-dev

4.2 编译源代码

将代码保存为 student_manager.c,运行以下命令编译:

gcc student_manager.c -o student_manager -lsqlite3

5. 使用示例

5.1 创建表

#include 
#include
sqlite3 *db;char *database_path = "student.db";char *table_name = "student";int create_table(char *table_name) { char *sql = "create table if not exists %s(id integer, name char, score integer);", table_name; if (sqlite3_exec(db, sql, NULL, 0, NULL) != SQLITE_OK) { fprintf(stderr, "SQL error: %s\n", sqlite3_errmsg(db)); return -1; } printf("Table created successfully\n"); return 0;}int main() { // 初始化数据库 sqlite3_open(database_path, &db); if (sqlite3_exec(db, "PRAGMA journal_mode = off;", NULL, 0, NULL) != SQLITE_OK) { fprintf(stderr, "无法打开数据库: %s\n", sqlite3_errmsg(db)); return -1; } // 创建表 create_table(table_name); // ... 其他操作 ... sqlite3_close(db); return 0;}

6. 常见问题

  • 权限问题:确保你有权限访问数据库文件。
  • 未安装依赖:检查是否安装了 libsqlite3-dev
  • 数据库文件丢失:请确保数据库文件存在且不被删除。

通过以上步骤,你应该能够顺利安装 SQLite 并使用它来管理你的数据。如果有任何问题,请参考 SQLite官方文档或社区获取帮助。

转载地址:http://lozcz.baihongyu.com/

你可能感兴趣的文章
Nim游戏
查看>>
NIO ByteBuffer实现原理
查看>>
Nio ByteBuffer组件读写指针切换原理与常用方法
查看>>
NIO Selector实现原理
查看>>
nio 中channel和buffer的基本使用
查看>>
NIO基于UDP协议的网络编程
查看>>
NISP一级,NISP二级报考说明,零基础入门到精通,收藏这篇就够了
查看>>
Nitrux 3.8 发布!性能全面提升,带来非凡体验
查看>>
NI笔试——大数加法
查看>>
NLog 自定义字段 写入 oracle
查看>>
NLog类库使用探索——详解配置
查看>>
NLP 基于kashgari和BERT实现中文命名实体识别(NER)
查看>>
NLP 项目:维基百科文章爬虫和分类【01】 - 语料库阅读器
查看>>
NLP_什么是统计语言模型_条件概率的链式法则_n元统计语言模型_马尔科夫链_数据稀疏(出现了词库中没有的词)_统计语言模型的平滑策略---人工智能工作笔记0035
查看>>
NLP学习笔记:使用 Python 进行NLTK
查看>>
NLP的神经网络训练的新模式
查看>>
NLP采用Bert进行简单文本情感分类
查看>>
NLP问答系统:使用 Deepset SQUAD 和 SQuAD v2 度量评估
查看>>
NLP:使用 SciKit Learn 的文本矢量化方法
查看>>
Nmap扫描教程之Nmap基础知识
查看>>