⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cbase.c

📁 c语言编写的微型数据库 实现了插入、删除、更新等基本功能
💻 C
字号:
#include "Std_Head.H"  /* 标准头文件 */

#include "Cdb_head.H"  /* CBase基本头文件 */

#include "Windows.H"   /* 界面文件 */

 main()
 {
        int i ;
    
        char(*ch)[15][30];
    
        char(*ch1)[3][30];
    
        clock_t First,Last ; /* 时间变量 */
    
        CmdRec_Type CmdRec;/* 命令记录结构,存放用户输入的全部信息,为下一步操作提供参数,如字段信息结构,插入记录,删除记录,查询条件 */
   
        char CmdLine[300];/* 存放用户命令行 */

        Window();  /* 调用界面函数 */

        clrscr();

        textbackground(BLUE);

        textcolor(YELLOW);


for(;;)   /* 整个系统为一个大的for循环,直至输入exit退出 */

    {   clrscr();

        textbackground(BLUE);

        textcolor(YELLOW);

        printf("Please Input The Command Line(\"exit\":quit,\"help\":help):");  /* 输入命令行 */

        printf("\n");
        
        gets(CmdLine);

        First=clock();  /* 取起始时间 */

        Init_CmdRec(CmdRec);    /* 初始化 */

        CmdRec=CmdLine_To_CmdRec(CmdLine);   /* 将用户输入的命令行分解并存入结构CmdRec中 */

       switch(CmdRec.Cmd_N)/* 根据不同命令分流控制 */

        {
            case CREATE : /* 建表 */
            
                CmdRec.Fld=Change(CmdRec.Token1); /*   CmdRec.Fld存放各字段信息结构 */

                clrscr(); /* 调用dos命令,清屏 */

                textbackground(BLUE);

                textcolor(YELLOW);

                 Do_Create(CmdRec);
               /* 把用户指定的数据库名,各个字段名,字段类型,字段长度及创建时间,状态等,
                    转换为第一,二级元数据保存在DBF文件中*/
                break ;
            
            case DROP :

                ChangeExt(CmdRec.UserStr,".TXT");/* 加文件名后缀.TXT */

                Do_Remove(CmdRec.UserStr); /* 删除文件 */

                 break ;
            
           case INSERT : /* 插入 */

                ch=Value(CmdRec.Token1);
            
                for(i=1;i<=CmdRec.Count+1;i++)
            
                   CmdRec.FldValue[i]=(*ch)[i];  /* 将插入值放入 CmdRec.FldValue中 */

                 Do_Insert(CmdRec); /* 执行插入操作 */
            
                 break ;
            
           case SELECT :

                Do_Select(CmdRec,CmdRec.Token1);
            
                break ;
            
          case UPDATE :

                  Do_Update(CmdRec,CmdRec.Token1);  /* 执行更新操作 */

                  break ;
            
         case DELETE :

                Do_Delete(CmdRec,CmdRec.Token1);

                 break ;
            


         case HELP:   /* 帮助 */

           Do_Help();

            break;

         case EXIT :  /* 退出 */

                exit(0);

                 break ;

        default:break;
}
                           
        Last=clock();  /* 获取终止时间 */

        printf("The operation takes  %f seconds\n",(Last-First)/CLK_TCK);/* 得到系统运行时间 */

        getch();
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -