mysql自增字段赋值

发布时间: 2023-11-21 11:45 阅读: 文章来源:1MUMB2172PS

首先是下面的一段代码:实现创建数据库data1.db、并在数据库内创建了表fruit1、将id字段设置为自增字段;

#include#include"sqlite3.h"#define datalib "data1.db"int main(){sqlite3 *hd;char *errmsg;if((sqlite3_open(datalib,&hd))!=SQLITE_OK){printf("%s\n",sqlite3_errmsg(hd));return -1;}else{printf("data1 create ok\n");}//create tableif((sqlite3_exec(hd,"create table if not exists fruit1(id INTEGER PRIMARY KEY AUTOINCREMENT,name char,price float\,intime char,vitime char);",NULL,NULL,&errmsg))!=SQLITE_OK){printf("%s\n",errmsg);}else{printf("table ok\n");}sqlite3_close(hd);//close data1return 0;}

编辑切换为居中

添加图片注释,不超过 140 字(可选)

创建数据库使用了:sqlite3_open 函数

创建表使用了:sqlite_exec函数

这两个函数在之前的文章“数据库之SQLITE”中有介绍

自增字段的实现主要是靠 INTEGER PRIMARY KEY AUTOINCREMENT 来设定的、这样设定以后id的值

1.将会自动赋值为比当前表中该字段最大值还大1的值

2.在到达最大之后、要想自增是不行的,自增长字段会丢出一个SQLITE_FULL的错误

3.自增长字段在使用新值时,是使用从未被使用过的值

4.使用自增长字段、引擎内部会生成一个sqlite_sequence的表,用于记录自增长字段已经用过的值,用户可以操作但不建议、容易引起引擎混乱

•••展开全文