㈠ 基于开源嵌入式数据库的档案管理系统
可以包括:
1.工业控制:
基于嵌入式芯片的工业自动化设备将获得长足的发展,目前已经有大量的8、16、32 位嵌入式微控制器在应用中,网络化是提高生产效率和产品质量、减少人力资源主要途径,如工业过程控制、数字机床、电力系统、电网安全、电网设备监测、石油化工系统。就传统的工业控制产品而言,低端型采用的往往是8位单片机。但是随着技术的发展,32位、64位的处理器逐渐成为工业控制设备的核心,在未来几年内必将获得长足的发展。
2.交通管理:
在车辆导航、流量控制、信息监测与汽车服务方面,嵌入式系统技术已经获得了广泛的应用,内嵌GPS模块,GSM模块的移动定位终端已经在各种运输行业获得了成功的使用。目前GPS设备已经从尖端产品进入了普通百姓的家庭,只需要几千元,就可以随时随地找到你的位置。
3.信息家电:
这将称为嵌入式系统最大的应用领域,冰箱、空调等的网络化、智能化将引领人们的生活步入一个崭新的空间。即使你不在家里,也可以通过电话线、网络进行远程控制。在这些设备中,嵌入式系统将大有用武之地。
4.家庭智能管理系统:
水、电、煤气表的远程自动抄表,安全防火、防盗系统,其中嵌有的专用控制芯片将代替传统的人工检查,并实现更高,更准确和更安全的性能。目前在服务领域,如远程点菜器等已经体现了嵌入式系统的优势。
5.POS网络及电子商务:
公共交通无接触智能卡(Contactless Smartcard, CSC)发行系统,公共电话卡发行系统,自动售货机,各种智能ATM终端将全面走入人们的生活,到时手持一卡就可以行遍天下。
6.环境工程与自然:
水文资料实时监测,防洪体系及水土质量监测、堤坝安全,地震监测网,实时气象信息网,水源和空气污染监测。在很多环境恶劣,地况复杂的地区,嵌入式系统将实现无人监测。
7.机器人:
嵌入式芯片的发展将使机器人在微型化,高智能方面优势更加明显,同时会大幅度降低机器人的价格,使其在工业领域和服务领域获得更广泛的应用。
这些应用中,可以着重于在控制方面的应用。就远程家电控制而言,除了开发出支持TCP/IP的嵌入式系统之外,家电产品控制协议也需要制订和统一,这需要家电生产厂家来做。同样的道理,所有基于网络的远程控制器件都需要与嵌入式系统之间实现接口,然后再由嵌入式系统来控制并通过网络实现控制。所以,开发和探讨嵌入式系统有着十分重要的意义。
你可以到华清远见网站上了解更多嵌入式的相关资料。
㈡ 学院学生档案管理系统,怎么做,最简单
前 言
学生档案管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生档案管理系统应该能够为用户提供充足的信息和快捷的查询手段�1�7
学生档案管理系统是典型的信息管理系统(MIS),经过分析如此情况,我们用Visual Foxpro 6.0开发工具,利用其提供的各种面向对象的开发工具和功能强大的SQL(结构化查询语言),尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,在开发阶段设计利用的数据库是Microsoft Visual FoxPro Drivers对DBC数据库进行开发,具有很强的移植性�1�7
关键字:面向对象(Object)�1�0数据窗口(DataWindow)�1�0信息管理系统(Mis)�1�0学生档案�1�7
一�1�0系统需求分析
1.1 编写目的 本需求的编写目的在于研究学生档案管理系统软件的开发途径和应用方法�1�7
1.2 背景及范围 本项目的名称:学生档案管理系统�1�7 本软件基本上能具体化�1�0合理化的管理学生的学籍档案,用结构化的思维方式去了解计算机的基本工作原理和高级程序设计语言�1�7
1.3 功能
主要功能:班级设置�1�0课程设置�1�0学生基本信息录入�1�0学生成绩录入�1�0学生信息和成绩修改�1�0查询成绩�1�7
㈢ C语言程序设计--班级档案管理系统
给,已经编译运行确认了:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<conio.h>
#define N 10
int M=0;
struct student
{
char num[13];
char name[20];
char sex;
char address[30];
int age;
};
typedef struct LB
{
struct student XINXI;
struct LB *next;
}LB_1,*LB_2;
void CAIDANG()
{
printf(" \t \t \t (欢迎使用本班级档案管理系统)\t\t\t\t\n");
printf("★*★*★*★*★*★*★*★*★*★ 欢迎进入我们的系统 ★*★*★*★*★*★*★*★*★*★\n\n");
printf("1.录入学生资料\t\t\t\t\t4.查询学生信息\n\n");
printf("2.修改学生信息\t\t\t\t\t5.删除学生信息\n\n");
printf("3.保存学生信息\t\t\t\t\t0.退出档案系统\n\n");
printf(" \n");
printf("★*★*★*★*★*★*★*★*★*★ 欢迎进入本系统 ★*★*★*★*★*★*★*★*★*★\n");
}
/*文本颜色*/
void color()
{
textbackground(8);
textcolor(9);
clrscr();
}
void Wrong()
{
printf("\n对不起您的输入错误!\n");
}
void SORRY()
{
printf("\n对不起该同学现没有任何信息!\n");
}
void printe(LB_1 *p)/* 本函数用于输出英文 */
{
printf(" %-2s %s\t %s\t%s\t %d\t \n",p->XINXI.num,p->XINXI.name,p->XINXI.sex,p->XINXI.address,p->XINXI.age);
}
/* 该函数用于定位链表中符合要求的接点,并返回该指针 */
LB_1 *Locate(LB_2 l,char findmess[],char nameornum[])
{
LB_1 *r;
if(strcmp(nameornum,"num")==0) /* 按学号查询 */
{
r=l->next;
while(r!=NULL)
{
if(strcmp(r->XINXI.num,findmess)==0)
return r;
r=r->next;
}
}
else if(strcmp(nameornum,"name")==0) /* 按姓名查询 */
{
r=l->next;
while(r!=NULL)
{
if(strcmp(r->XINXI.name,findmess)==0)
return r;
r=r->next;
}
} return 0;
}
/*以下是增加学生信息的函数*/
void TIANJIA(LB_2 l)
{
LB_1 *p,*r,*s;
char num[13];
r=l; s=l->next;
while(r->next!=NULL) /*些处循环一直到最后*/
r=r->next;
while(1)
{
printf(" 请输入添加的学生学号(输入'0'返回上一级菜单:)");
scanf("%s",num);
if(strcmp(num,"0")==0)
break;
while(s)
{
if(strcmp(s->XINXI.num,num)==0)
{
printf("(必看提示):学号为'%s'的学生已有信息,若要修改请你输入'2 修改'!\n",num);
printe(s);
printf("\n");
return;
}
s=s->next;
} p=(LB_1 *)malloc(sizeof(LB_1));
strcpy(p->XINXI.num,num);
printf(" 请你输入学号:");
scanf("%s",p->XINXI.num);
getchar();
printf(" 请你输入姓名:");
scanf("%s",p->XINXI.name);
getchar();
printf(" 请你输入性别:");
scanf("%s",p->XINXI.sex);
getchar();
printf(" 请你输入地址:");
scanf("%s",p->XINXI.address);
getchar();
printf(" 请你输入年龄:");
scanf("%d",&p->XINXI.age);
getchar();
/* 下面是把指针变量转到链表的下一个结点中以便循环的时候使用 */
p->next=NULL;
r->next=p;
r=p; M=1;
}
}
/*以下是删除学生信息的函数*/
void SHANCHU(LB_2 l)
{
int sel;
LB_1 *p,*r;
char findmess[20];
if(!l->next)
{
printf("\n******(必看提示):对不起,现文件中没有信息:所以您不能查询!\n");
return;
}
printf("\n <必看提示> <以学号删除请输入1\n> <以姓名删除请输入2\n> PLEASE:");
scanf("%d",&sel);
if(sel==1)
{
printf("请输入要删除的学生的学号PLEASE:");
scanf("%s",findmess);
p=Locate(l,findmess,"num");
if(p)
{ r=l;
while(r->next!=p)
r=r->next;
r->next=p->next;
free(p);
printf("\n*******(必看提示):该学生的信息已完全删除成功!\n");
M=1;
}
else
SORRY();
}
else if(sel==2)
{
printf("请输入要删除的学生的姓名PLEASE:");
scanf("%s",findmess);
p=Locate(l,findmess,"name");
if(p)
{ r=l;
while(r->next!=p)
r=r->next;
r->next=p->next;
free(p);
printf("\n******(必看提示):该学生信息已成功删除!\n");
M=1;
}
else
SORRY();
}
else
Wrong();
}
/*以下是查询学生信息*/
void CHAXIONG(LB_2 l)
{ int sel;
char findmess[20];
LB_1 *p;
if(!l->next)
{ printf("\n******(必看提示):对不起,现文件中没有信息:所以您不能查询!\n");
return;
}
printf("\n以学号查询请输入1:\n以姓名查询请输入2:\n以性别查询请输入3:\n以性别查询请输入4:\n PLEASE:");
scanf("%d",&sel);
if(sel==1)/*输入学号查询*/
{
printf("请你输入要查找的学号:");
scanf("%s",findmess);
p=Locate(l,findmess,"num");
if(p)
{ printf("\t\t\t\t查找结果\n");
printf(" 学号:%s\n姓名:%s\n性别:%s\n地址:%s\n年龄:%d\n",p->XINXI.num,p->XINXI.name,p->XINXI.sex,p->XINXI.address,p->XINXI.age);
}
else
SORRY();
}
if(sel==2) /* 输入姓名查询 */
{
printf("请你输入要查找的姓名:");
scanf("%s",findmess);
p=Locate(l,findmess,"name");
if(p)
{ printf("\t\t\t\t查找结果\n");
printf(" 学号:%s\n姓名:%s\n性别:%s\n地址:%s\n年龄:%d\n",p->XINXI.num,p->XINXI.name,p->XINXI.sex,p->XINXI.address,p->XINXI.age);
}
else
SORRY();
}
else
Wrong();
}
/*以下是修改学生信息的函数*/
void XIUGEI(LB_2 l)
{
LB_1 *p;
long int i,j;
char findmess[20];
if(!l->next)
{ printf("\n(必看提示):对不起,现文件中没有信息:所以您不能查询!\n");
return;
}
for(i=1;i<=2;i++)
{
printf("\n\n\n\n\n");
printf("请输入密码:");
scanf("%s",&j);
if(j==2007)break;
else
{if(j!=2007)
return(CAIDANG());
}
}
printf("请你输入要修改的学生学号:");
scanf("%s",findmess);
p=Locate(l,findmess,"num");
if(p)
{ printf("请你输入新学号(原来是%s):",p->XINXI.num);
scanf("%s",p->XINXI.num);
printf("请你输入新姓名(原来是%s):",p->XINXI.name);
scanf("%s",p->XINXI.name);
printf("请你输入新性别(原来是%s):",p->XINXI.sex);
scanf("%s",p->XINXI.sex);
printf("请你输入新地址(原来是%s):",p->XINXI.address);
scanf("%s",p->XINXI.address);
printf("请你输入新年龄(原来是%d):",p->XINXI.age);
scanf("%s",p->XINXI.age);
getchar();
M=1;
}
else
SORRY();
}
/*保存在文件中*/
void BAOCONG(LB_2 l)
{
FILE* fp;
LB_1 *p;
int flag=1,count=0;
fp=fopen("c:\\lyg","wr");
if(fp==NULL)
{
printf("\n=====>提示:重新打开文件时发生错误!\n");
exit(1);
}
p=l->next;
while(p)
{
if(fwrite(p,sizeof(LB_1),1,fp)==1)
{ p=p->next;
count++;
}
else
{ flag=0;
break;
}
}
if(flag)
{ printf("\n 提示;正在保存文件 共保存了%d条信息\n",count);M=0;
}
fclose(fp);
}
/*以下是主函数*/
void main()
{
LB_2 l;/* 连表 */
FILE *fp; /* 文件指针 */
int sel;long i,j,d;
char ch;
char jian;
int count=0;
LB_1 *p,*r;
color();
clrscr();
l=(LB_1*)malloc(sizeof(LB_1));
l->next=NULL;
r=l;
fp=fopen("C:\\lyg","rb");
if(fp==NULL)
{
printf("\t\t\t\t\n\n");
printf("\n");
printf(" *_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*\n"
" *_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*\n"
" Welcome to come to our system!!! \n"
" You can only inquire your own messages! If you want to see about other \n"
" students' messages,you need first to send inquirment to them,asking for \n"
" agreement,then you can visit his/her messages! \n"
" Have a good time! now you can come in!!! \n"
" *_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*\n"
" *_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*\n"
" 注意:系统启动码为 : ILOVEMYSCHOOLVERYMUCH !!! \n"
" *_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*\n"
" *_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*\n");
printf("欢迎使用,本系统中现没有任何记录,您要先创建文件请按以下操做进行PLEASE:\n");
printf("\n 提示:文件还不存在,是否创建?(y/n)请做选择--\n");
printf("\n");
scanf("%c",&jian);
if(jian=='y'||jian=='Y')
{fp=fopen("C:\\lyg","wb");
clrscr();
}
{for(i=1;i<=2;i++)
{
printf("\n\n\n\n\n");
printf("请输入密码:");
scanf("%ld",&j);
if(j==2007)break;
else
{if(j!=2007)return;
}
}
}
exit(0);clrscr();
}
while(!feof(fp))
{
p=(LB_1*)malloc(sizeof(LB_1));
if(fread(p,sizeof(LB_1),1,fp)) /* 将文件的内容放入链表中 */
{
p->next=NULL;
r->next=p;
r=p; /*把该结点放入链表中*/
count++;
}
}
fclose(fp); /* 关闭文件 */
while(1)
{
CAIDANG();
printf("请你选择操作:");
scanf("%d",&sel);
clrscr();
printf("\n\n\n");
if(sel==0)
{
if(M==1)
{ getchar();
printf("\n(必看提示):链表中的信息已经改动,如果确认把改动保存在文件中请做选择(y/n)?\n");
scanf("%c",&ch);
if(ch=='y'||ch=='Y')
BAOCONG(l);
}
break;clrscr();
}
switch(sel)
{
case 1: TIANJIA(l);break;
case 4: CHAXIONG(l);break;
case 3: BAOCONG(l);break;
case 2: XIUGEI(l);break;
case 5: SHANCHU(l);break;
default: getchar();break;
}
} end:
getchar();
}
㈣ 关于档案数据库建设问题的探讨
余虹剑
(中国地质调查局南京地质调查中心)
摘要 数字化各种档案的目的是要向社会提供信息服务,这种服务需要一个由档案网络体系、网站、数据库、信息服务系统、档案资源等组成的良好的服务平台做支撑。档案数据库建设就是为数字化了的档案提供服务的资源平台。
关键词 着录 数据库 规范 管理
1 标准化、规范化数据着录
档案数据库属于文献数据库,是档案自动化的重要内容。档案数据库是以系统的方法编排的,并可通过电子方式单独访问的档案数据的集合。[1]档案数据库建设的成功与否,在很大程度上取决于数据库的质量。库中的数据条目必须标准、规范,达到有序、有效,库管理本身是科学合理的,这样的数据库操作性一般较强、使用面也较广。科学实用的档案数据库在建库时,一般都会按照相应的技术标准、管理标准和工作标准,最终形成一个自身的标准,形成规范的档案数字化利用平台。作为一个数字档案馆,应先建立馆藏档案的目录数据库,也是着录数据库,包括全宗级、案卷级、文件级目录,并应注意它们之间的关系。另外,根据本单位的馆藏特色开展档案全文数据库建设。档案全文数据库涵盖面较广,一般含有文本型、图形图像型和多媒体型。目录数据库与全文数据库要实现结构化,促发式。档案目录数据库是档案数据库的基本,它能提供便捷的查询路径,阅览者可根据需要,通过一次输入就能提取阅览者希望查询的结果。提供类似查询前必须建立基础信息数据,这些数据包括档案题名、责任者、来源、页码、分类号、主题词、摘要等,少数包含档案全文。[2]这项工作对着录的内容特征如关键词、题名、项目负责人等着录不详细、标准不统一、索引的档案内容深度广度不够,在检索时就会有误差,出现检索不准确、不全面的现象,在一定程度上会影响档案利用率。可以说,着录标引是否标准规范是影响数据库管理的关键因素之一,这项工作大体上决定着数据结构的合理性,这项工作能完成好是检索系统查全、查准的前提。除档案目录数据库外,档案全文数据库、多媒体档案数据库、Web数据库的建设也必须遵守档案着录、标引等标准的原则要求。
2 建立数据库
现阶段根据有关部门的工作需要和计划,按照内容不同,我们建立的数据库分为成果数据库和科技档案数据库,分别针对地质大调查形成的资料和单位各项目形成的资料、收集来的各项各类资料录入数据条目。该数据库更新到目前已收集的所有合格项目的资料和数据,针对这个数据库还建立了目录级数据库共分两级:第一级是项目大类共552条。第二级是各个项目详细内容条目,截至拟稿更新到第一级第240条记录的具体内容共5836条记录。还有一大半有待继续更新录入。
3 保障数据安全是档案信息数据库的根本
档案数据生成即必须长期甚至永久保存。该怎么保证经过数字化后的档案的原始性,防范这些数字内容不被篡改等,都是建设档案数据库时在安全方面应解决的问题。数据库的参数设定、数据存储方式和位置、数据传输途径、使用等各个环节和整个过程都涉及档案数据库的安全。为防止数据丢失、损毁,避免保密信息流失等事故,又要保障海量信息数据的安全、完整,使日积月累产生和收集来的档案数据能在日后长期得到利用,必须把更新档案数据库安全体系、合乎实际工作需求的管理制度作为数据库建设的关键环节。制定既利于工作又能监管数据出入的防范措施,加强数据运行中的监控和管理,使数据库从建设到利用各环节都万无一失。档案数据库建设时,经常使用技术手段实现权限控制,日常的数据备份必不可少。广义上,权限控制应设置读写控制、数据加密等方面,从实际工作需求出发,一般根据用户类别、部门允许访问范围内(包括阅览、下载等)的目录和档案数据对访问和使用设置可访问层度、控制和监督。防写控制是使信息保真的手段,使得用户只能读取信息,而不能修改、复制,以防止信息被篡改。加密技术可以确保控制档案内容的非公开性。为保证权限控制的有效性,要在系统中配置使用记录系统,全程跟踪、自动记录使用情况,进行定期检测与维护,还要随着高新技术的发展,引进新的安防技术。
4 档案信息化建设需要切实加强集中统一的管理体制
档案信息化建设的管理体制是从管理制度上保证业务技术的规范、标准和硬软件选用的统一性,使各层次、各专业办公都纳入统一的档案信息自动化系统管理当中,实现集中统一的管理。使其不能各行其是自建系统,从而减少信息分割和资源浪费现象的发生。档案信息化系统的管理体制,要在较强的管理和先进的技术条件下,实行高度集中管理和方便使用相结合的模式。
5 结束语
本文阐述的只限于在档案资料数据库建设中遇到的极有限的实际工作问题。档案数据库建设是一项长期、持久的工作,作为档案管理部门在进行数据库建设时,要有规划地形成数据库产品,一般需要做用户需求分析、本馆状况分析、效益分析等。科学选题,合理规划,循序渐进,杜绝短期行为的发生,形成良性循环,档案数据库建设才能有持久发展的动力。
参考文献
[1]孙淑梅.档案管理与计算机[M].北京:档案出版社,1987.
[2]洪漪编.档案信息组织与检索[M].武汉:武汉大学出版社,1998.
㈤ 数据库设计一个《人事档案管理信息系统》
这么庞大的一个工程岂是几句话就说得清的
㈥ 小型数据库管理系统的设计
小规模的数据库关系系统
㈦ 怎样设计一个学生档案管理系统
我曾在部队里是兵员信息系统管理部的,说白了,就是一个信息资源的调渡与共享,你根据自己的需要,与应用的需要,结合相应专业知识,做一个适合的系统,可能需要几次失败做为代价,你这个在网是无法得到具体答案的,也正如你所说,需要文字....
你可以先设计,可以393324244交流
㈧ 求一个简单档案信息管理的数据库,结构如下。
你这是需要一个档案信息关系系统吧,只是设计数据库还好说,这需要前台和后台一起实现的啊,估计在这的没谁有那么多时间去弄,需要的话可以联系我
㈨ 数据库课程设计--健康档案管理系统
插入insert into
修改用update
查询用select * from *
删除用delete
我记得好像是这么多
统计是不是要用到水晶报表啊?
数据字典,E-R图,关系模式,数据表都非常简单,你可以参照你学过的软件工程导论这本书
数据流图要麻烦一些,主要图案你别搞错了!
你做这个小型系统是非常简单的,自己多学学!简单的我可以为你解答解答!
㈩ 企业员工档案管理系统的设计思路及工作方法
业员工档案管理系统采用关系数据库,对企业员工的信息以及跟人事相关的工作流程进行集中管理,方便企业建立一个完善的、强大的员工信息数据库,主要包括后台数据库的建立(如:员工的基本信息)和系统开发维护(如:员工信息的添加、删除以及登陆密码的修改及前端应用的开发),系统采用的Microsoft SQL Sever2005可以为系统提供安全、稳定、可靠的数据服务。而对于后者则要求应用程序具有准确、完善、易使用等特点。它是以Visual C++和Microsoft SQL Sever2005数据库作为开发平台。