小编Ama*_*yer的帖子

C 语言 - 将字符串参数插入 sqlite 数据库 %s 不起作用

所以我正在使用 sqlite 并创建了这个数据库:

sql = "CREATE TABLE COMPANY("  \
     "NAME TEXT PRIMARY KEY    NOT NULL," \
     "LAST              TEXT," \
     "PIN               INT," \
     "DL                INT,"\
     "SSN               INT,"\
     "EMAIL             TEXT,"\
     "BALANCE           REAL );";
Run Code Online (Sandbox Code Playgroud)

我正在尝试在 NAME 中插入一个值,但它不断给出错误“没有这样的列:John

这就是我尝试插入它的方式:(假设一切都已声明)

strcpy(text, "John");
sprintf (sql,"INSERT INTO ATM (NAME,PIN) VALUES (%s',%d);",text,number);
Run Code Online (Sandbox Code Playgroud)

当我改用这行代码时:

sprintf (sql,"INSERT INTO ATM (NAME,PIN) VALUES ('john',%d);",number);
Run Code Online (Sandbox Code Playgroud)

它起作用了,我能够插入这两个值。

为什么第一个不工作?请有人帮忙

谢谢

c database sqlite

-1
推荐指数
1
解决办法
2529
查看次数

标签 统计

c ×1

database ×1

sqlite ×1