数据库操作
面对数据库操作语法的总结归纳
45°的阳光
虽然你变秃了,但是你变强了
展开
-
sqlite3提升执行速度——事务操作
数据库在执行多条操作时就会显得速度很慢,为了提升速度可以使用数据库的事务操作来提升速度一、事务介绍 事务(Transaction)是一个对数据库执行工作单元。事务(Transaction)是以逻辑顺序完成的工作单位或序列,可以是由用户手动操作完成,也可以是由某种数据库程序自动完成。 例如:在一张表中插入一条数据,删除数据,修改数据,查找数据,都是在执行事务。实际上可以把一些相同操作的事务归并在一起,最后一起提交就可以变成一个事务,大大提高了数据库执行的效率。1.事务操作分类1."begin tr原创 2020-08-26 16:10:11 · 2730 阅读 · 0 评论 -
sqlite3_exec()函数归纳
一、sqlite3_exec函数介绍sqlite3_exec是sqlite3的接口API函数源码API接口截图1.参数分析:int sqlite3_exec( sqlite3*, /* An open database */ const char *sql, /* SQL to be evaluated */ int (*callba原创 2020-08-26 14:44:52 · 7965 阅读 · 0 评论 -
sqlite表更新添加字段——sqlite3
sqlite_master结构1.sql语句:SELECT * from sqlite_master where name = '表名' and sql like '%字段名%'//查询表中有无要添加的字段:alter table 表名 add column 字段 INTEGER default 1//在表的结尾添加新字段2.demon节选int sql_exec(sqlite3 *db, const char *sql){ int res; sqlite3_stmt *stmt = NULL原创 2020-08-25 18:54:42 · 5362 阅读 · 0 评论 -
sqlite线程模式——sqlite3_threadsafe、sqlite3_config的使用
sqlite一共有三种线程模式:sqlite3_threadsafe:sqlite3_threadsafe()函数的返回值可以确定编译时指定的线程模式(0-单线程模式 1-串行模式 2-多线程模式源码截图:sqlite_config:sqlite3_config()函数可以修改线程,模式(参数为:SQLITE_CONFIG_SINGLETHREAD---单线程 SQLITE_CONFIG_MULTITHREAD----多线程 SQLITE_CONFIG_SERIALIZED-----串行模式)源码原创 2020-08-25 15:42:36 · 4456 阅读 · 1 评论 -
sqlite_master结构——sqlite3
1.sqlite_master表 sqlite_master是一个表,属于系统表,存放在根页中,每一个数据库的.db文件都有一个sqlite_master表。 sqlite_master表存放了.db中所有表的相关信息,比如:表的名称、用于创建此表的sql语句、索引、索引所属的表、创建索引的sql语句等。 sqlite_master表是只读的,只能对他进行读操作,写的操作由系统自动执行,使用者没有写的执行权限。用户对自定义表的操作多会自动同步到这个表中。2.sqlite_master结构:原创 2020-08-24 16:03:55 · 1213 阅读 · 0 评论 -
sqlite数据库——select查询
sql语句:1.select count(*) FROM student//查询表中数据行数2.SELECT sex,student_number FROM student where name=?//查询名字为《要查的名字》的性别,学号查询demon//查找表中所有学生人数#define SELECT_STUDENT_MSG "select count(*) FROM student"//查找某个学生的信息#define SELECT_STUDENT_NAME "SELECT sex,st原创 2020-08-14 18:32:04 · 3181 阅读 · 0 评论 -
sqlite数据库更新过程
1.sqlite语句:update student(表名) set student_number(列名)=?,sex(列名)=? where name(列名)=?2.更新代码://更新学生信息#define UPDATE_STUDENT_MSG "update student set student_number=?,sex=? where name=?;"void update_student_msg(int student_number,char *sex,char *name){ int原创 2020-08-14 13:52:34 · 2661 阅读 · 0 评论 -
提升SQLite数据插入效率的方法
前言SQLite数据库由于其简单、灵活、轻量、开源,已经被越来越多的被应用到中小型应用中。甚至有人说,SQLite完全可以用来取代c语言中的文件读写操作。因此我最近编写有关遥感数据处理的程序的时候,也将SQLite引入进来,以提高数据的结构化程度,并且提高大数据的处理能力(SQLite最高支持2PB大小的数据)。但是最开始,我发现,直接使用SQL语句的插入效率简直低的令人发指的。后来不断查文档、查资料,才发现了一条快速的“数据插入”之路。本文就以插入数据为例,整合网上和资料书中的各种提高SQLite效率的转载 2020-07-27 15:33:16 · 380 阅读 · 0 评论 -
sqlite数据库删除操作
1.sql语句//清空表格#define EMPTY_STUDENT "DELETE FROM student"//按学号删除---【?号为占位符】#define DELETE_STUDENT_NUMBER "DELETE FROM student WHERE student_number= ?;"2.代码示例/**************************数据库删除数据 author:乐乐*参数:要删除的数据**************************///清空数据库原创 2020-07-09 17:34:35 · 5099 阅读 · 0 评论 -
sqlite数据库插入过程
1.插入的sql语句:INSERT or IGNORE INTO student (student_number,name,sex) VALUES (?,?,?)2.插入操作代码/**************************数据库插入数据 author:乐乐*参数:要插入的数据**************************/#define INSERT_MSG "INSERT or IGNORE INTO student (student_number,name,sex) VAL原创 2020-07-09 16:35:39 · 2670 阅读 · 0 评论 -
sqlite数据库的创建过程--超详细注释-适合新手
简单的创建数据库的demon,备有详细注释,后期会继续更新更多关于sqlit的知识,适合初学者,【技术交流加关注】/*****************************************demon:创建数据库 author:乐乐****************************************/#include <stdio.h>#include <sqlite3.h>#define DB_PATH "./student.db" //数据原创 2020-07-09 14:59:56 · 1925 阅读 · 0 评论