Linux +C+sqlite3 一个简单的学生管理系统
2012-08-11 11:22
477 查看
#include<stdio.h> #include<stdlib.h> #include<sqlite3.h> #include<string.h> char *errmsg; void insert_data(sqlite3 *db) { int number,age,score; char name[20]; printf("input the number: "); scanf("%d",&number); getchar(); printf("input the name: "); scanf("%s",name); getchar(); printf("input the age: "); scanf("%d",&age); getchar(); printf("input the score "); scanf("%d",&score); getchar(); char *sql=sqlite3_mprintf("insert into student values('%d','%s','%d','%d')",number,name,age,score); if(sqlite3_exec(db,sql,NULL,NULL,&errmsg) != SQLITE_OK) { perror("sqlite3_exec"); exit(-1); } else printf("insert success!!\n"); return; } void delete_data(sqlite3 *db) { int num; printf("please input the number you want to delete\n"); scanf("%d",&num); getchar(); char *sql=sqlite3_mprintf("delete from student where number ='%d'",num); if(sqlite3_exec(db,sql,NULL,NULL,&errmsg) != SQLITE_OK) { perror("sqlite3_exec_delete"); exit(-1); } else printf("delete success!!\n"); return; } void updata_data(sqlite3 * db) { int num,age,score; char name[20]; printf("please input the number you want to updata\n"); scanf("%d",&num); getchar(); printf("input the name: "); scanf("%s",name); getchar(); printf("input the age: "); scanf("%d",&age); getchar(); printf("input the score "); scanf("%d",&score); getchar(); // char sql[1024]; // sprintf(sql,"update student set name='%s',age='%d',score='%d' where number='%d'",name,age,score,num); char *sql=sqlite3_mprintf("update student set name='%s',age='%d',score='%d' where number='%d'",name,age,score,num); if(sqlite3_exec(db,sql,NULL,NULL,&errmsg) != SQLITE_OK) { perror("sqlite3_exec_update"); exit(-1); } else printf("update success!!\n"); return; } void show_data(sqlite3 *db) { char ** resultp; int nrow,ncolumn,i,j,index; char *sql="select * from student"; if(sqlite3_get_table(db,sql,&resultp,&nrow,&ncolumn,&errmsg) != SQLITE_OK) { perror("sqlite3_get_table"); exit(-1); } index = ncolumn; for(i = 0 ;i< ncolumn; i++) printf("%s\t",resultp[i]); printf("\n"); for(i = 0;i< nrow;i++) { for(j = 0;j< ncolumn;j++) printf("%s\t",resultp[index++]); printf("\n"); } return ; } void quit(sqlite3 *db) { printf("BYBYE!!\n"); sqlite3_close(db); exit(0); } int main() { int nu; sqlite3 *db; if(sqlite3_open("my.db",&db) != SQLITE_OK) { perror("sqlite3_open"); exit(-1); } while(1) { printf("**********************\n"); printf("* 1.insert data *\n"); printf("* 2.delete data *\n"); printf("* 3.updata data *\n"); printf("* 4.show data *\n"); printf("* 5. quit *\n"); printf("**********************\n"); printf("please input the number you want to operate:\n"); scanf("%d",&nu); getchar(); switch(nu) { case 1: insert_data(db); break; case 2: delete_data(db); break; case 3: updata_data(db); break; case 4: show_data(db); break; case 5 : quit(db); break; } } return 0; }
相关文章推荐
- 简单实现了一个学生成绩信息管理系统
- linux下c/c++实例之十五简单的学生信息管理系统
- php--实现一个简单的学生管理系统
- Linux环境下C语言实现简单的基于文件的学生信息管理系统
- 一个简单的学生信息管理系统(循环双向链表)
- 使用python实现一个简单的学生信息管理系统
- Sqlite的使用和一个简单的书籍管理系统(下)
- 使用python实现一个简单的学生信息管理系统
- 一个简单的学生管理系统 能添加学生 查询学生
- 练习一个简单的学生管理系统,不成熟,但是综合性很强
- 一个简单的学生管理系统
- 一个简单的学生管理系统
- 一个简单的学生成绩管理系统
- 使用Java模拟一个简单的Dos学生成绩管理系统:
- 【十二】一个简单的学生成绩管理系统
- 基于linux socket 简单学生信息管理系统server程序
- 用链表实现一个简单的学生操作管理系统C语言版
- 用java实现一个简单的学生管理系统
- C实现的一个简单的学生成绩管理系统
- 基于linux socket 简单学生信息管理系统client程序