我的编程空间,编程开发者的网络收藏夹
学习永远不晚

嵌入式MYSQL服务器的实现方法

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

嵌入式MYSQL服务器的实现方法

这篇文章主要介绍“嵌入式MYSQL服务器的实现方法”,在日常操作中,相信很多人在嵌入式MYSQL服务器的实现方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”嵌入式MYSQL服务器的实现方法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

 
//嵌入式MYSQL服务器

class CEmbeddedMySQL  
{
public:
 CEmbeddedMySQL();
 virtual ~CEmbeddedMySQL();
 
    static bool StartupEmbeddedServer();
    static void ShutdownEmbeddedServer();
 
    bool Open( const string &svr, const string &usr, const string &pwd, const string &db);
    void Close();
    bool ResetDB();
    void Set( const string &sField, const string &sValue );
    void Set( const string &sField, double dValue );
    void Set( const string &sField, long nValue );
    void Set( const string &sField, int nValue );
    void Set( const string &sField, BYTE *pBuf, int nLen );
    void SetNull( const string &sField );
    void registerOutParameter( const string &sField, char cType );
//    void SetRecord( const string &sField, const string &sTableName, const string &sTypeName, CStdRecord &Record );
   
    void Cmd(const char *cmd,...);
    bool More();
    long Exec();
//    bool SelectInto(CStdRecord *pRecord,bool bCreateHead=true);    
    
    double GetDouble(int id);
    double GetDouble(const string &name);
    long GetLong(int id);
    long GetLong(const string &name);
    string Get(int id);
    string Get(const string &name);
    string GetLastErrMsg();
    char* GetSql();
 
    bool MoreForUpdate();
    bool SetBuffer( int nFieldIndex, BYTE *pBuf, long nSize );
    bool SetBuffer( const string &sField, BYTE *pBuf, long nSize );
    bool GetBuffer( const string &sField, BYTE *pBuf, long &nSize );
    bool GetBuffer( int nFieldIndex, BYTE *pBuf, long &nSize );
    long GetDataSize( const string &sField );
    long GetDataSize( int nFieldIndex );
    long GetActualSize( const string &sField );
    long GetActualSize( int nFieldIndex );
    void ClearSql();
    long GetColIndex( const string &sField );
    string GetColName( int nFiledIndex );
    string GetColType( int index );
    int GetNumCols();
    string GetHeadScript();
    
    int  row_getsize();
    bool row_gethead( string &sHead );
    bool row_more( char *pData, int &nSize );    
    
    void SetAutoCommit( bool autoCommit );
    void RollBack();
    void Commit();
    bool IsDead();
    bool SetParam( int nType, const string &sVal );
protected:
 void WriteSQLErrLog();
 
 // 获取过程返回值
 string GetStorageProReturnValue(const string &name);
 void CopyRowData(char * pData,MYSQL_ROW row); // added by cailei
    CStdString GetCurTime(time_t nTime=0);
    long GetCurDate(time_t nTime=0);
 MYSQL *m_hMySQL;
 MYSQL_RES *m_pRes;
 MYSQL_ROW m_Row;
 MYSQL_FIELD *m_pFields;
    long m_nRowSize;
 
 bool m_bRegParam;                  // 是否注册了过程返回变量
 
protected:
    string m_sSvr;
    string m_sUser;
    string m_sPwd;
    string m_sDB;
    string m_sUserMode;
    bool   m_bReopen; //是系统重新打开连接
 
    int     m_nStatus; // 0 :SQL 空闲状态 1 :有SQL语句等待执行 2:有结果数据待取出 
    int     m_nCount; //结果集记录数量
    int     m_nCode; //执行返回码
    int     m_nSQLSize; //默认是16K
    string  m_sErr; //错误消息
    char    *m_pSQL; //SQL语句
    string  m_sclass="lazy" data-src; //调用源
    bool    m_bError; //语句执行是否出错
    int     m_nDBType;  //驱动类型
    void    *m_pUniDBRecv; //保留
    bool    m_bTran; //事务标志
    void    *m_pReq;  www.2cto.com  
    byte    *m_pReqBuf;
    int     m_nReqSize;
    bool    m_bDebug;
};
#endif // !defined(AFX_EMBEDDEDMYSQL_H__516724E2_889C_4899_9DAE_330CD4C5954F__INCLUDED_)

到此,关于“嵌入式MYSQL服务器的实现方法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

嵌入式MYSQL服务器的实现方法

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

嵌入式连接阿里云服务器实现远程控制与管理

随着科技的不断发展,嵌入式设备已经广泛应用于各种领域,如智能家居、工业自动化、物联网等。为了更好地管理和控制这些嵌入式设备,很多用户选择将嵌入式设备连接到阿里云服务器上。这篇文章将详细介绍如何通过嵌入式设备连接到阿里云服务器,以及实现远程控制和管理的方法。正文:一、连接阿里云服务器连接阿里云服务器需要一个阿里云的
嵌入式连接阿里云服务器实现远程控制与管理
2023-11-07

python实现FTP服务器服务的方法

FTP服务的主动模式和被动模式 在开始之前,先聊一下FTP的主动模式和被动模式,两者的区别 , 用两张图来表示可能会更加清晰一些: 主动模式:主动模式工作过程: 1. 客户端以随机非特权端口N,就是大于1024的端口,对server端21端
2022-06-04

裸金属服务器实现方式

金属服务器通常采用的是全硬件架构,即将服务器的硬件部分(如主板、CPU和内存等)集成在单一的金属外壳中。这种架构具有以下优势:高性能:金属服务器能够处理更快的数据访问速度,同时减少了对传统服务器所需的电源和散热的需求,因此可以实现更高的性能。轻量级设计:金属服务器通常采用较轻的设计,可以有效地降低服务器的重量,从而降低了整体成本。更好的维护性:金属服务器通常具有更好的可扩展性,因为它们可以使用更多
2023-10-25

mysql分布式锁实现的方法是什么

MySQL本身并没有提供分布式锁的实现方法,但可以借助MySQL的特性和其他技术来实现分布式锁。以下是几种常见的实现方法:1. 基于数据库的乐观锁:在表中添加一个version字段,通过比较version值来判断是否可以获取锁。每次更新前先
2023-10-09

Java实现批量向mysql写入数据的方法

本文实例讲述了Java实现批量向mysql写入数据的方法。分享给大家供大家参考,具体如下:private static String user = "root";private static String pass = "123456";p
2023-05-30

MySQL实现批量插入测试数据的方式总结

在开发过程中经常需要一些测试数据, 这个时候如果手敲的话, 十行二十行还好, 多了就很死亡了, 接下来介绍两种常用的MySQL测试数据批量生成方式,希望对大家有所帮助
2023-05-20

MySQL事务实现的方法是什么

在MySQL中,可以使用以下方法来实现事务:使用START TRANSACTION、COMMIT和ROLLBACK语句来开始、提交和回滚事务。START TRANSACTION; -- 开始事务-- 执行一系列的操作COMMIT; -
MySQL事务实现的方法是什么
2024-03-12

mysql居然还能实现分布式锁的方法

前言之前的文章中通过电商场景中秒杀的例子和大家分享了单体架构中锁的使用方式,但是现在很多应用系统都是相当庞大的,很多应用系统都是微服务的架构体系,那么在这种跨jvm的场景下,我们又该如何去解决并发。单体应用锁的局限性在进入实战之前简单和大家
2022-05-13

阿里云服务器实现方式详解

随着云计算技术的不断发展,越来越多的企业和个人开始使用云服务器。阿里云作为国内最大的云计算服务提供商,其服务器实现方式备受关注。本文将详细介绍阿里云服务器的实现方式。阿里云服务器实现方式一:虚拟化技术阿里云服务器的实现主要依赖于虚拟化技术。虚拟化技术可以将一台物理服务器分割成多个虚拟服务器,每个虚拟服务器都拥有自
阿里云服务器实现方式详解
2023-10-29

springboot+jersey+tomcat实现跨域方式上传文件到服务器的方式

这篇文章主要介绍了springboot+jersey+tomcat实现跨域方式上传文件到服务器,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
2023-03-09

编程热搜

目录