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

📄 minisql.cpp

📁 Mini SQL对用户提供的数据缺少充分过滤,远程攻击者可以利用这个漏洞对目标服务器进行格式字符串攻击,可能以数据库进程权限在系统上执行任意指令。 远程攻击者可以发送恶意格式串来触发此漏洞,导致破坏进
💻 CPP
字号:

#include "MiniSQL.h"   
#include<iostream.h> 
   
extern _M_Buffer Buffer;   
extern unsigned int BTreeNodeSize;   
extern char* ErrorMessage[];   
extern char CurLocation[256];   
extern char CurRelationName[33];   
extern unsigned int  SizeOfPageHead;   
   
void Init_MiniSQL();   
void Run_MiniSQL();   
void Exit_MiniSQL();   
 
   
void Init_MiniSQL()   
{   
  cout<<"                         WELCOME TO USE OUR MINISQL!";   
  Buffer.Start();  // initialize the buffer    
}   
   
void Exit_MiniSQL()   
{   
  Buffer.End();    // close the buffer    
  return;   
}   
   
void Run_MiniSQL()   
{   
  MSG msg = DEFAULT;  // make msg != QUIT      
   
  while(QUIT != msg)  // quit the program    
  {    
    try   
    {    
      TB_Create_Info* pCreateInfo;   
      TB_Select_Info* pSelectInfo;   
      TB_Insert_Info* pInsertInfo;   
      TB_Update_Info* pUpdateInfo;   
      TB_Delete_Info* pDeleteInfo;   
      // get commmand from API and execute according operation    
      msg = GetCommand(&pCreateInfo,&pSelectInfo,   
                       &pInsertInfo,&pUpdateInfo,&pDeleteInfo);   
         
      switch(msg)   
      {   
        case CREATE :  Create( *pCreateInfo );   break;   
        case SELECT :  Select( *pSelectInfo );   break;   
        case INSERT :  Insert( *pInsertInfo );   break;   
        case UPDATE :  Update( *pUpdateInfo );   break;   
        case DELETE :  Delete( *pDeleteInfo );   break;   
        case DROP   :  Ctrl_DropTB();            break;   
        case DROPDB :  Ctrl_DropDB();            break;   
        case QUIT   :  break;   
        default     :  break;   
      }   
    }   
           
      catch (int ERROR_CODE)   
      {    
        //print the error message    
       // DispatchError(ERROR_CODE);     
      }   
   
  }   
    return;   
}  

#include "MiniSQL.h" 
 
extern _M_Buffer Buffer; 
extern unsigned int BTreeNodeSize; 
extern char* ErrorMessage[]; 
extern char CurLocation[256]; 
extern char CurRelationName[33]; 
extern unsigned int  SizeOfPageHead; 
 
void Init_MiniSQL(); 
void Run_MiniSQL(); 
void Exit_MiniSQL(); 

 /*
void Init_MiniSQL() 
{ 
  cout<<"                         WELCOME TO USE OUR MINISQL!"; 
  Buffer.Start();  // initialize the buffer 
} 
 
void Exit_MiniSQL() 
{ 
  Buffer.End();    // close the buffer 
  return; 
} 
 
void Run_MiniSQL() 
{ 
  MSG msg = DEFAULT;  // make msg != QUIT   
 
  while(QUIT != msg)  // quit the program 
  {  
    try 
    {  
      TB_Create_Info* pCreateInfo; 
      TB_Select_Info* pSelectInfo; 
      TB_Insert_Info* pInsertInfo; 
      TB_Update_Info* pUpdateInfo; 
      TB_Delete_Info* pDeleteInfo; 
      // get commmand from API and execute according operation 
      msg = GetCommand(&pCreateInfo,&pSelectInfo, 
                       &pInsertInfo,&pUpdateInfo,&pDeleteInfo); 
       
      switch(msg) 
      { 
        case CREATE :  Create( *pCreateInfo );   break; 
        case SELECT :  Select( *pSelectInfo );   break; 
        case INSERT :  Insert( *pInsertInfo );   break; 
        case UPDATE :  Update( *pUpdateInfo );   break; 
        case DELETE :  Delete( *pDeleteInfo );   break; 
        case DROP   :  Ctrl_DropTB();            break; 
        case DROPDB :  Ctrl_DropDB();            break; 
        case QUIT   :  break; 
        default     :  break; 
      } 
    } 
         
      catch (int ERROR_CODE) 
      {  
        //print the error message 
        DispatchError(ERROR_CODE);   
      } 
 
  } 
 	return; 
}
*/
 
int main() 
{ 
  Init_MiniSQL();   //初始化一些基本配置 
  Run_MiniSQL();    //交互操作,是本程序的主体 
  Exit_MiniSQL();   //善后操作,在退出 
  return 1;  
} 






 

⌨️ 快捷键说明

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