博客
关于我
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/

你可能感兴趣的文章
opencv resize
查看>>
Opencv Sift和Surf特征实现图像无缝拼接生成全景图像
查看>>
opencv SVM分类Demo
查看>>
OpenCV VideoCapture.get()参数详解
查看>>
opencv videocapture读取视频cap.isOpened 输出总是false
查看>>
opencv waitKey() 函数理解及应用
查看>>
OpenCV 中的图像转换
查看>>
OpenCV 人脸识别 C++实例代码
查看>>
OpenCV 在 Linux 上的 python 与 anaconda 无法正常工作.收到未实现 cv2.imshow() 的错误
查看>>
Opencv 完美配置攻略 2014 (Win8.1 + Opencv 2.4.8 + VS 2013)上
查看>>
opencv 模板匹配, 已解决模板过大程序不工作的bug
查看>>
OpenCV 错误:(-215)size.width>0 &&函数imshow中的size.height>0
查看>>
opencv&Python——多种边缘检测
查看>>
opencv&python——高通滤波器和低通滤波器
查看>>
OpenCV+Python识别车牌和字符分割的实现
查看>>
OpenCV-Python接口、cv和cv2的性能比较
查看>>
OpenCV/Python/dlib眨眼检测
查看>>
opencv1-加载、修改、保存图像
查看>>
opencv10-形态学操作
查看>>
opencv11-提取水平直线和垂直直线
查看>>