我的linux c程序有什么问题(其中用到sqlite3)? 我无法往数据库中加入资料!!!!!!!!

#include<stdio.h>
#include<sqlite3.h>
main()
{
sqlite3 *db;
int result;
char buf[124];
result=sqlite3_open("db.db",&db);
if(SQLITE_OK!=result)
{
printf("open fail\n");
return -1;
}
result=sqlite3_exec(db,"create table student(name,score)",NULL,NULL,NULL);
if(SQLITE_OK==result)
{
printf("create table fail\n");
return -1;
}
/*通过这个循环往数据库中加入资料*/
do
{
scanf("%s",buf);
if(strcmp(buf,"exit")==0)
break;
result=sqlite3_exec(db,buf,NULL,NULL,NULL);
}while(1);
sqlite3_close(db);

应该是数据库创建的有问题,result=sqlite3_exec(db,"create table student(name,score)",NULL,NULL,NULL);中create table student(name,score)没有指明创建的字段是什么类型的,改为create table student(ID integer primary key autoincrement,name varchar(50),score integer) 最好加个主键字段ID。
另外后面跟着的
if(SQLITE_OK==result)
{
printf("create table fail\n");
return -1;
}
估计是弄错了,应该是 if(SQLITE_OK!=result)表示数据库创建不成功则退出,由于这个错误所以数据库没有创建成功就继续下面的程序,因为没有创建数据库后面的插入语句也就执行失败了。
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-04-25
?? 是什么数据库,要用的话还是用mysql吧.sqlserver是微软自己开发的,怎么会给linux用.

sqlite3数据库基本命令操作
sqlite>.show 退出 sqlite 终端,您可以使用以下命令:sqlite>.quit 或 sqlite>.exit 接下来,让我们深入了解 SQL 的指令格式。所有 SQL 指令均以分号结尾,并使用两个减号表示注释。例如:sqlite>create studen_table(Stu_no interger PRIMARY KEY, Name text NOT NULL, Id interger UNIQUE, Age inte...

在linux下用sqlite3数据库提示找不到table文件怎么办
sqlite的数据库就是单个文件,数据库的相应驱动是一个dll,根据你的情况,可能是数据库中不存在你要操作的表,要用相应的SQL语句操作游标,进行相应表的创建。如create table user_table (ID,uname,pas)什么的。创建了表,再对表进行操作。

linux c语言如何实现txt文本文件数据导入到sqlite3中?
其中,xxx.sql是sqlite3的数据库文件。file的每一行表示一条记录,由t分割。

django生命周期是什么意思(2023年最新分享)
组件化开发、组件传值、axios简单使用、vue-router使用、vue-cli安装? 项目初始化\/首页??项目介绍、创建、初始化、element-ui的使用,单文件组件的使用和axios在单文件中的使用和配置、vue-cli的介绍和使用、路飞项目顶部导航栏页面效果搭建,轮播图组件的使用和调整、购物车页面搭建和课程详情页面搭建,vue-video-player...

django如何安装mysql?
数据库使用(sqlite3和mysql)一、sqlite3 使用 1、import sqlite3 确认系统中是否安装 2、进入当前项目目录,cmd后运行python,进入命令行模式 3、import sqlite3,sqlite3.connect('{path\\name.db}')大括号内表示自定义,真实情况没有大括号 4、修改settings.py文件 DATABASES = { 'default':{ '...

python编程软件简介(常用python编程软件)
1、IDLE 交互式开发环境 IDLE是Python标准库的一部分,是一个简单的文本编辑器和集成开发环境。它具有代码着色、自动补全和调试功能,非常适合初学者。2、Thonny Thonny是一个跨平台的Python IDE,具有用户友好的界面和调试工具。它还提供了对其他软件包的扩展支持,例如Numpy和Matplotlib。3、PyCharm社区版...

django的高并发怎么处理?
简而言之,一个程式至少有一个程序,一个程序至少有一个执行绪. 也就是说一个程序可以有很多执行绪。 “并行”是指无论从微观还是巨集观,二者都是一起执行的,就好像两个人各拿一把铁锨在挖坑,一小时后,每人一个大坑。 高并发实时系统涉及到多执行绪处理,这样合理么 你的这个问题这么久没人回答,我估计是因为...

自己如何搭建服务器。
1、打开控制面板,选择并进入“程序”,双击“打开或关闭Windows服务”,在弹出的窗口中选择“Internet信息服务”下面所有地选项,点击确定后,开始更新服务。2、更新完成后,打开浏览器,输入“http:\/\/localhost\/”回车,如果此时出现IIS7欢迎界面,说明Web服务器已经搭建成功。3、当web服务器搭建成功后,...

对android的认识?
android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和linux核心层。 二.搭建环境 搭建开发环境 对国内的开发者来说最痛苦的是无法去访问android开发网站。为了更好的认识世界,对程序员来说,会翻墙也是的一门技术,带你去领略墙外的世界,好了,不废话了,国内开发者访问(androiddevtools...

关于怎么外链django的sqllite的信息
1.把你的.sqlite文件打包成zip文件放在Assert目录下。2.在程序第一次运行时,Activity.getAssert()函数读助assert目录下的sqlite文件,复制到你想要的目录下(一般是sd卡目录下,不过要注意的就是 要检查sd卡是否存在)3.用SqliteDataBase.openDataBase()函数打开数据库,进行各种操作。--- 但你的需求...

相似回答