用C或C++编程实现数据库的查询,添加,删除,修改功能。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用C或C++编程实现数据库的查询,添加,删除,修改功能。相关的知识,希望对你有一定的参考价值。

明天面试,这是最基本的题目了。我不懂C++。

一个教材管理系统,给你参考下
void shumingsearch(struct book *head) /*按教材名称查找*/
struct book *p;
char name[20];
int c;
if(head==NULL) printf("未打开任何文件");getchar();return;
printf("1,查找专业 2,查找教材名称:");
scanf("%d",&c);
getchar();
if(c==2)
printf("请输入要查找的教材名称:");

else printf("请输入要查找的专业:");
gets(name);
p=head;
do if(c==2)
if(strcmp(p->shuming,name)==0)

printf("教材编号:%s\n教材名称:%s\n数量:%d\n价格:%d\n专业:%s\n作者:%s\n出版社:%s\n备注:%s\n",p->number,p->shuming,p->shuliang,p->jiage,p->zhuanye,p->zuozhe,p->chubanshe,p->beizhu);


if(c==1)
if(strcmp(p->zhuanye,name)==0)

printf("教材编号:%s\n教材名称:%s\n数量:%d\n价格:%d\n专业:%s\n作者:%s\n出版社:%s\n备注:%s\n",p->number,p->shuming,p->shuliang,p->jiage,p->zhuanye,p->zuozhe,p->chubanshe,p->beizhu);


p=p->next;
while(p!=NULL);
printf("查找完成");
return;


struct book *add(struct book *head) /*增加记录*/
struct book *p,*e,*f,*h;
if(head==NULL) printf("未打开任何文件");getchar(); return NULL;
h=f=e=head;

p=(struct book *)malloc(sizeof(struct book));
printf("\n教材编号:");
gets(p->number);
printf("\n教材名称:");
gets(p->shuming);
printf("\n数量:");
scanf("%d",&p->shuliang);
printf("\n价格:");
scanf("%d",&p->jiage);
getchar();
printf("\n专业:");
gets(p->zhuanye);
printf("\n作者:");
gets(p->zuozhe);
printf("\n出版社:");
gets(p->chubanshe);
printf("\n备注:");
gets(p->beizhu);

if(strcmp(f->number,p->number)>0) p->next=f;h=p;printf("\n添加成功");return h;
if(f->next==NULL) f->next=p;p->next=NULL;printf("\n添加成功");return h;
do
if(f->next!=NULL)
if(strcmp(f->number,p->number)>0)

e->next=p;p->next=f;printf("\n添加成功");return h;


if(f->next==NULL)

f->next=p;
p->next=NULL;
printf("\n添加成功");
return h;


f=f->next;
e=e->next;
while(1);


struct book *delet(struct book *head) /*删除记录*/
struct book *p,*e;
char num[20];
if(head==NULL) printf("未打开任何文件");getchar();return NULL;
printf("请输入要删除的教材编号:");
scanf("%s",num);
p=e=head;
if(strcmp(p->number,num)==0) head=head->next; print(head);return head;
else p=p->next;
do

if(strcmp(p->number,num)==0)

if(p->next!=NULL)
e->next=p->next;
if(p->next==NULL) e->next=NULL;
print(head);
return head;

p=p->next;
e=e->next;
while(p!=NULL);
printf("搜索完毕,未找到该记录");
return head;


struct book *change(struct book *head) /*修改记录*/
struct book *p;
char num[20];
if(head==NULL) printf("未打开任何文件");getchar();return NULL;
printf("请输入要修改的教材编号:");
scanf("%s",num);
getchar();
p=head;
do
if(strcmp(p->number,num)==0)

printf("教材编号:%s\n教材名称:%s\n数量:%d\n价格:%d\n专业:%s\n作者:%s\n出版社:%s\n备注:%s\n",p->number,p->shuming,p->shuliang,p->jiage,p->zhuanye,p->zuozhe,p->chubanshe,p->beizhu);
printf("\n教材编号:");
gets(p->number);
printf("\n教材名称:");
gets(p->shuming);
printf("\n数量:");
scanf("%d",&p->shuliang);
printf("\n价格:");
scanf("%d",&p->jiage);
getchar();
printf("\n专业:");
gets(p->zhuanye);
printf("\n作者:");
gets(p->zuozhe);
printf("\n出版社:");
gets(p->chubanshe);
printf("\n备注:");
gets(p->beizhu);
printf("修改成功");
return head;

p=p->next;
while(p!=NULL);
printf("未找到要修改的记录");
return head;


int mima()
FILE *fp;
char mima1[20],mima2[20];

if((fp=fopen("mima","r"))==NULL)

printf("尚未设置密码请输入:");
scanf("%s",mima1);
printf("请再次输入密码:");
scanf("%s",mima2);
if(strcmp(mima1,mima2)!=0) printf("两次密码不一样");return 0;
else
fp=fopen("mima","w");
fprintf(fp,"%s",mima1);
printf("密码设置成功");
return 1;



printf("请输入初始化密码:");
scanf("%s",mima1);
fscanf(fp,"%s",mima2);
if(strcmp(mima1,mima2)==0)

printf("密码正确");
printf("请输入要删除的文件名:");
scanf("%s",mima1);
if(remove(mima1)==0)

printf("删除成功");
getchar();
return 1;

else
printf("删除失败,请检查是否存在该文件或路径是否正确");
getchar();
return 0;


else
printf("密码错误");
getchar();
return 0;



void main()

struct book *head=NULL;
char i;
getch();

system("cls");
do
printf(" ☆★☆★☆★ 教材管理系统 ☆★☆★☆★\n");
printf("m--菜单 h--帮助");
printf("\n请输入命令:");
i=getch();
if(i=='h')
printf("\n1,录入教材信息的时候,每一个项目都必须输入相应的内容。\n2,修改,增加,删除,查找记录前必须先打开一个文件,修改完后必须记得保存教材信息。\n3,必须使用正确的路径打开文件,建议保存文件时候不用输入路径(此时是默认路径,即保存在程序目录下。)");
getch();
break;

if(i=='m')
break;
system("cls");
while(i!='m'||i!='h');

system("cls");
do
printf(" ☆★☆★☆★ 教材管理系统 ☆★☆★☆★\n");

printf("┌————-———┐\n");
printf("│1,录入教材信息│\n│2,显示教材信息│\n│3,打开一个记录│\n│4,编辑一个记录│\n│5,保存教材信息│\n│6,查找记录 │\n│s,初始化系统 │\n│e,退出系统 │\n");
printf("└———————-┘\n");
printf("\n请输入功能编号:");
i=getch();
system("cls");
switch(i)

case '1': head=creat();save(head);break;
case '2': print(head);break;
case '3': head=openfile();break;
case '4': system("cls");
printf("┌————-———┐\n");
printf("│1,增加一个记录│\n");
printf("│2,删除一个记录│\n");
printf("│3,修改一个记录│\n");
printf("└———————-┘\n");
i=getch();
switch(i)

case '1':
head=add(head);break;
case '2':
head=delet(head);break;
case '3': head=change(head);break;
default: break;

break;
case '5': save(head);break;
case '6': shumingsearch(head);break;
case 's': mima();break;
case 'e': exit(0);
default :break;

system("cls");
while(1);
参考技术A 如果用VC做,可以参考MFC类库 CDatabase和CRecordset。
查询,添加,删除,修改功能都用相应的SQL语句实现。
参考技术B 我QQ空间有个类似的C程序,你看看可以使吗
QQ:1246298204
参考技术C 什么数据库啊?

python基础编程:学生信息管理系统 包含学生的添加查询修改删除等功能。

 【python基础编程题目】
     使用python编写一个基本的学生信息管理系统,包含功能菜单,学生信息的录入,增加,学生信息的查询,学生信息的修改,学生信息的删除等,所有操作过的学习信息要能够永久保存,下次打开程序时,上次录入的数据应该还在。

【思路分析】

     这个题目主要是考察python中类和方法的定义,循环、字符串的使用,输入输出的使用,文件的使用等,是比较综合性的一个题目,对于初学者可能比较难。

      学生的信息,我们申明一个类来定义,通过init方法把学生的姓名等信息传入,在类里再定义一个输出学习信息的方法。

       学生信息的录入,我们用input来接收用户输入的数据,因为用户输入的时候是把学生所有的信息混在一起输入的,我们要使用split方法把各个信息分隔开,这样才知道哪个值是姓名,哪个值是学号。那什么时候停止呢,我们判断当用户输入ok的时候表示全部输入完成。因为 这里要求数据要永久保存,因此,停止输入后,我们要把输入的信息存储到文件中,这里就需要用到文件的写入。

        查询和修改删除学生信息主要就是对已有学生数组中数据的修改了,主要考察对数组的循环、删除的使用。

      功能菜单,我们用字典来存储和显示,当用户输入一个数字时,根据是什么数字来调用相应的方法。

【代码实现】

import numpy as np

class Student():
    # 学生信息࿱

以上是关于用C或C++编程实现数据库的查询,添加,删除,修改功能。的主要内容,如果未能解决你的问题,请参考以下文章

数据结构作业~急求~~~用c语言或c++ 使用单链表实现系统进程列表,完成插入、删除、查询等操作。

c语言!!!程序设计:建立一个学生信息链表,包括学号,姓名,成绩.(实现添加,删除,查询,排序,平均)

delphi中如何实现对sql数据库记录进行添加,删除,修改

es 批量查询,修改,删除,增加操作

用C语言写一个链表储存学生信息

用java编写一个简单的学生管理系统实现添加,删除,修改,查询的功能