c 管理信息系统mysql_学生信息管理系统(unix下用c对mysql进行操作)

学生信息管理系统,用c在unix下直接对数据库进行操作的版本。

#include

#include

#include

#include

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;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值