2.8作业

sqlite3数据库操作接口详细整理,以及常用的数据库语句

头文件: #include <sqlite3.h> 编译时候要加上-lsqlite3 gcc a.c -lsqlite3

1)sqlite3_open 打开一个数据库,如果数据库不存在,则创建一个数据库

2)sqlite3_close 关闭数据库,断开句柄所拥有的资源

3)sqlite3_errmsg 通过出错的句柄返回错误信息

4)sqlite3_errcode 通过错误句柄返回错误码

5) sqlite3_exec 调用该函数,执行sql语句

6)回调函数callback 处理sqlite3_exec执行sql语句后的结果集,每有一条记录,就会执行一次callback函数

7) sqlite3_get_table 通过执行sql语句,得到结果集中的内容

8)sqltie3_free_table 释放表的空间

1)创建表

create table 表名 (字段名 数据类型, 字段名 数据类型);

create table if not exists 表名 (字段名 数据类型, 字段名 数据类型);

2)删除表

drop table 表名;

3)插入

  1. 全字段插入 insert into 表名 values (数据1, 数据2, 数据3);

  2. 部分字段插入 insert into 表名 (字段名1, 字段名2) values (数据1, 数据2);

4)查看

  1. 查看所有记录 select * from 表名;

  2. 查看某几行 select * from 表名 where 限制条件;

逻辑与 and 逻辑或 or

3)查看某几列

1、 select 字段1, 字段2 from 表名;

2、select 字段1, 字段2 from 表名 where 限制条件;

5)修改

update 表名 set 字段=数值 where 限制条件;

6)删除

delete from 表名 where 限制条件; ​

7)主键

primary key 主键;

create table 表名(字段名 数据类型 primary key, 字段名 数据类型); primary key主键:唯一标识表格中的每一条记录;

8)拷贝

从a中拷贝所有数据到b中: create table b as select * from a;

从a中拷贝指定字段到b中: create table b as select 字段,字段,字段 from a;

9)增加列

alter table 表名 add column 字段名 数据类型;

10)修改表名

alter table 旧表名 rename to 新表名;

11)修改字段名(列名)

不支持直接修改列名

1.将表重新命名(a改成b)

alter table stuinfo rename to stu;

2.新建修改名字后的表(新建一个a)

create table stuinfo (name char, age1 int, sex char, score int);

3.从旧表b中取出数据,插入到新表a中; insert into stuinfo select * from stu;

12)删除列

不支持直接删除列;

1.创建一个新表b,并复制旧表a需要保留的字段信息;

create table stu as select name, age1, sex from stuinfo;

2.删除旧表a;

drop table stuinfo;

3.修改新表b的名字a;

alter table stu rename to stuinfo;

相关推荐
IvorySQL4 分钟前
PostgreSQL & IvorySQL 技术交流 Meetup・郑州站| 4.18 线下开讲,只聊硬核技术
数据库·postgresql·开源
iOS妖狐小北22 分钟前
mysql中主键索引和联合索引的原理解析
数据库·mysql
StarRocks_labs28 分钟前
StarRocks I/O 模型揭秘(一):查询是如何被拆解与调度的?
starrocks·sql·pipeline·mpp·fe
大嘴皮猴儿35 分钟前
AI图片翻译技术解析:以跨马翻译为例看电商图片翻译的实际效果
大数据·数据库·人工智能·自动翻译·教育电商
FlDmr4i2841 分钟前
.NET 开发 MCP 服务器完全指南:打造智能数据库查询助手
服务器·数据库·.net
cTz6FE7gA43 分钟前
XSS、CSRF、SQL注入、防重放与敏感数据保护的分层策略
sql·xss·csrf
AC赳赳老秦1 小时前
OpenClaw实战案例:用1个主控+3个Agent,实现SEO文章日更3篇
服务器·数据库·python·mysql·.net·deepseek·openclaw
零陵上将军_xdr1 小时前
MySQL中的索引
数据库·mysql
倔强的石头_1 小时前
数据库行标识符机制探究:OID、ROWID与自增主键的实现与应用
数据库·后端
SPC的存折1 小时前
1、MySQL数据库基础
linux·运维·数据库·mysql