学生信息管理系统(unix下用c对mysql进行操作)
来源:互联网 发布:淘宝运营职责 编辑:程序博客网 时间:2024/06/16 15:37
学生信息管理系统,用c在unix下直接对数据库进行操作的版本。
头文件需要加上mysql.h,编译命令参见http://blog.csdn.net/martinue/article/details/53996835
#include<mysql.h>#include<stdio.h>#include<stdlib.h>#include<string.h>int idd;void add(){ idd++; char sex[10]; char name[50]; char tele[50]; char mail[50]; MYSQL *con; MYSQL_RES *res; MYSQL_ROW row; char sql_line[1024]=""; int rt=0,index_field,count; con = mysql_init((MYSQL *)0); if(!mysql_real_connect(con,"localhost","root","123456","stusql",0,NULL,0)) { printf("mysql connect failed !\n"); system("pause"); exit(-1); } printf("mysql connect successful!\n"); printf("请输入学生姓名:"); scanf("%s",name); printf("请输入学生性别(m||f):"); scanf("%s",sex); printf("请输入学生电话:"); scanf("%s",tele); printf("请输入学生邮箱:"); scanf("%s",mail); int ch,ma,en; printf("请输入学生的语文成绩:"); scanf("%d",&ch); printf("请输入学生的数学成绩:"); scanf("%d",&ma); printf("请输入学生的英语成绩:"); scanf("%d",&en); sprintf(sql_line,"insert into user(id,name,sex,telephone,email) values('%d','%s','%s','%s','%s')",idd,name,sex,tele,mail); rt=mysql_real_query(con,sql_line,strlen(sql_line)); if (rt) { printf("error:%s\n",mysql_error(con)); return; } sprintf(sql_line,"insert into score(id,user_id,course_id,score,flag) values('%d','%d','%d','%d','%d')",idd*3+0,idd,0,ch,0); rt=mysql_real_query(con,sql_line,strlen(sql_line)); if (rt) { printf("error:%s\n",mysql_error(con)); return; } sprintf(sql_line,"insert into score(id,user_id,course_id,score,flag) values('%d','%d','%d','%d','%d')",idd*3+1,idd,1,ma,0); rt=mysql_real_query(con,sql_line,strlen(sql_line)); if (rt) { printf("error:%s\n",mysql_error(con)); return; } sprintf(sql_line,"insert into score(id,user_id,course_id,score,flag) values('%d','%d','%d','%d','%d')",idd*3+2,idd,2,en,0); rt=mysql_real_query(con,sql_line,strlen(sql_line)); if (rt) { printf("error:%s\n",mysql_error(con)); return; } puts("add successful!"); mysql_close(con);}void modify(){ char sex[10]; char name[50]; char tele[50]; char mail[50]; MYSQL *con; MYSQL_RES *res; MYSQL_ROW row; char sql_line[1024]=""; int rt=0,index_field,count; con = mysql_init((MYSQL *)0); if(!mysql_real_connect(con,"localhost","root","123456","stusql",0,NULL,0)) { printf("mysql connect failed !\n"); system("pause"); return; } printf("mysql connect successful!\n"); printf("请输入要修改的学生的id:"); int idd; scanf("%d",&idd); printf("请输入学生姓名:"); scanf("%s",name); printf("请输入学生性别(m||f):"); scanf("%s",sex); printf("请输入学生电话:"); scanf("%s",tele); printf("请输入学生邮箱:"); scanf("%s",mail); int ch,ma,en; printf("请输入学生的语文成绩:"); scanf("%d",&ch); printf("请输入学生的数学成绩:"); scanf("%d",&ma); printf("请输入学生的英语成绩:"); scanf("%d",&en); sprintf(sql_line,"update user set name='%s',sex='%s',telephone='%s',email='%s' where id=%d",name,sex,tele,mail,idd); rt=mysql_real_query(con,sql_line,strlen(sql_line)); if (rt) { printf("error:%s\n",mysql_error(con)); return; } sprintf(sql_line,"update score set score='%d' where user_id=%d and course_id=0",ch,idd); rt=mysql_real_query(con,sql_line,strlen(sql_line)); if (rt) { printf("error:%s\n",mysql_error(con)); return; } sprintf(sql_line,"update score set score='%d' where user_id=%d and course_id=1",ma,idd); rt=mysql_real_query(con,sql_line,strlen(sql_line)); if (rt) { printf("error:%s\n",mysql_error(con)); return; } sprintf(sql_line,"update score set score='%d' where user_id=%d and course_id=2",en,idd); rt=mysql_real_query(con,sql_line,strlen(sql_line)); if (rt) { printf("error:%s\n",mysql_error(con)); return; } printf("modify successful!"); mysql_close(con);}void delete(){ MYSQL *con; MYSQL_RES *res; MYSQL_ROW row; char sql_line[1024]=""; int rt=0,index_field,count; con = mysql_init((MYSQL *)0); if(!mysql_real_connect(con,"localhost","root","123456","stusql",0,NULL,0)) { printf("mysql connect failed !\n"); return; } printf("connect successful!\n"); printf("请输入删除的学生的id:"); int xx; scanf("%d",&xx); sprintf(sql_line,"delete from user where id = '%d' ",xx); rt=mysql_real_query(con,sql_line,strlen(sql_line)); if (rt) { printf("mysql_real_query error !\n"); return; } sprintf(sql_line,"delete from score where user_id = '%d' ",xx); rt=mysql_real_query(con,sql_line,strlen(sql_line)); if(rt) { printf("mysql_real_query error !\n"); return; } puts("delete successful!"); mysql_close(con);}void watch(){ MYSQL mysql; MYSQL_RES *res = NULL; MYSQL_ROW row; char query_str[1024]; int rc=0, i, fields; int rows; if (NULL == mysql_init(&mysql)) { printf("mysql_init(): %s\n", mysql_error(&mysql)); return ; } if (NULL == mysql_real_connect(&mysql,"localhost","root","123456","stusql",0,NULL,0)) { printf("mysql_real_connect(): %s\n", mysql_error(&mysql)); return; } printf("Connected MySQL successful! \n"); printf("请输入要查询的学生的id:"); int xx; scanf("%d",&xx); sprintf(query_str,"select user.name,user.sex,user.telephone,user.email,course.name,score.score from user,score,course where user.id=score.user_id and user.id=%d and score.course_id=course.id;",xx); rc = mysql_real_query(&mysql, query_str, strlen(query_str)); if (0 != rc) { printf("mysql_real_query(): %s\n", mysql_error(&mysql)); return; } res = mysql_store_result(&mysql); if (NULL == res) { printf("mysql_restore_result(): %s\n", mysql_error(&mysql)); return ; } rows = mysql_num_rows(res); printf("The total rows is: %d\n", rows); fields = mysql_num_fields(res); printf("The total fields is: %d\n", fields); while ((row = mysql_fetch_row(res))) { for (i = 0; i < fields; i++) { printf("%s\t", row[i]); } printf("\n"); } mysql_close(&mysql);}void print(){ printf("----学生信息管理系统----\n"); printf(" 0.查看学生信息\n"); printf(" 1.录入学生信息\n"); printf(" 2.修改学生信息\n"); printf(" 3.删除学生信息\n"); int x; scanf("%d",&x); if(x==1) add(); else if(x==2) modify(); else if(x==3) delete(); else watch();}int main(){ idd=0; while(1) print(); return 0;}
0 0
- 学生信息管理系统(unix下用c对mysql进行操作)
- 学生信息管理系统(c++)
- 学生信息管理系统(jdbc操作MySQL)
- LINUX下的C学生信息管理系统
- LINUX下的C学生信息管理系统
- C#-学生信息管理系统
- 学生信息管理系统(C++)
- 学生信息管理系统--(Java+MySQL实现)
- 学生信息管理系统--(Java+MySQL实现)
- 学生信息管理系统(c语言)
- 学生信息管理系统(C语言)
- 学生信息管理系统(C语言)
- 学生信息管理系统(C实现)
- C语言学生信息管理系统(单链表)
- 单链表构建学生信息管理系统(C++)
- 基于链表的学生信息管理系统和基于MySQL的学生信息管理系统 -C语言
- 学生信息管理系统(c/c++)
- C语言《学生信息管理系统》链表+文件操作
- PAT 乙级 徳才论
- jQuery五星好评demo
- 指针 指向一维数组 二维数组 字符数组 返回值为地址 指向函数的指针 指针数组 常量指针
- 【Maven】私服搭建-Nexus的安装
- 购物车原理
- 学生信息管理系统(unix下用c对mysql进行操作)
- H.264中的SPS和PPS
- String,StringBuilder和StringBuffer的异同
- windows下安装tornado
- LeetCode 102. Binary Tree Level Order Traversal(bfs)
- android中用Spannable在TextView中设置超链接、颜色、字体
- OpenWRT(三)支持Web界面
- 值栈存储结构、实例笔记整理
- appium1-macOS10.12下如何丝滑的使用appium?