官网地址:https://www.codesynthesis.com/products/odb/

环境搭建:ubuntu16.04-64

1、安装mysqlClient

 sudo apt-get install  mysql-client

2、下载包  odb_2.4.0-1_amd64.deb,  安装odb工具。

  sudo dpkg -i odb_2.4.0-1_amd64.deb

 查看版本:

3、 下载安装 libodb-2.4.0.tar.gz

  ./configure; make; make install

4、下载安装 libodb-boost-2.4.0.tar.gz

  ./configure; make; make install

5、下载安装  odb-2.4.0.tar.gz

  ./configure; make; make install

6、下载安装 libodb-mysql-2.4.0.tar.gz

  ./configure;

  遇到错误:configure: error: libmysqlclient_r is not found;

  解决:find / -name "libmysqlclient*"

  cp /usr/lib/x86_64-linux-gnu/libmysqlclient.so.20.3.11  /usr/lib/x86_64-linux-gnu/libmysqlclient_r.so

  ./configure 通过

  make;make install

7、 linux下mysql orm 开发环境搭好。

8、 来测试一下吧。

9、 vs2017, 创建跨平台linux项目。

10、将头文件等拷贝到工程目录下, 方便编码和代码查找。

cd libodb-2.4.0/

cp odb/ /media/sf_WinShareLinux/ormTest/ormTest -R

  cd libodb-mysql-2.4.0/odb/

cp mysql/ /media/sf_WinShareLinux/ormTest/ormTest/odb/ -R

11、添加包含目录, 库目录

   链接器>>

12、创建数据库相关的类

#pragma once
#include <string>
#include "odb/core.hxx" using namespace std;
//声明接下来的一个对象是与数据库相关的类
#pragma db object
class personinfo
{
public:
//查询需要的构造函数
personinfo() {};
//插入需要的构造函数
personinfo(string strName, string strSex, int nAge)
{
name = strName;
sex = strSex;
age = nAge;
}; public:
string name;
string sex;
int age;
private:
//我们将类的构造函数或者将数据成员声明为私有时,odb的access类可以访问我们的数据成员和构造函数。
friend class odb::access; //编号自动增长, #pragma db object 这行代码添加了, 则该行代码一定添加, 不然用odb编译会失败
#pragma db id auto
unsigned long id_;
};

在终端执行: odb -d mysql --generate-query --generate-schema personinfo.h

则会生成如下文件:

13、编译成功,(拷贝personinfo中的内容建表, 执行.out, 则成功插入一条数据)


c++::Mysql::ORM 开发环境搭建的更多相关文章

  1. express+mysql+vue开发环境搭建

    最近开始做一个实验室资产管理系统,后台使用node.js的Express框架,前端使用vue,数据库使用mysql.在这里开始简单记录一下开发过程和遇到的问题. 今天要说的是express+mysql ...

  2. Django Python MySQL Linux 开发环境搭建

    Django Python MySQL Linux 开发环境搭建 1.安装Python 进行Python开发,首先必须安装python,对于linux 或者Mac 用户,python已经预装. 在命令 ...

  3. Apache+MySQL+PHP开发环境的搭建(二)

    通过自主选择相应的apache,mysql,php等软件,根据自己的应用开发需求进行安装.此方法搭建的环境自主性较强,搭建过程较为复杂,繁琐. 1.所需软件: Apache: http-2.2.22- ...

  4. Apache+MySQL+PHP开发环境的搭建(一)

    通过套件来安装和配置php开发环境. 1.所需软件:AppServ(因为是开源,任何网站都能下载) 安装本软件基本上就是下一步. 2.进行安装 选择一个盘安装该软件点击next继续: 根据自己的实际情 ...

  5. JavaEE开发环境搭建(2)---(MySQL的安装)

    上次写了JavaEE开发环境搭建之jdk的安装...然后自己看的时候感觉有时候加载图片不是很流畅,所以这次就少添加点图片了~~ JavaEE开发环境搭建之MySQL的安装 1:mysql 的下载 在百 ...

  6. windows下搭建Apache+Mysql+PHP开发环境

    原文:windows下搭建Apache+Mysql+PHP开发环境 要求 必备知识 熟悉基本编程环境搭建. 运行环境 windows 7(64位); Apache2.2;MySQL Server 5. ...

  7. 搭建windows环境下(nginx+mysql+php)开发环境

    搭建windows环境下(nginx+mysql+php)开发环境   1. 所需准备应用程序包        1.1 nginx 程序包nginx-1.0.4.zip或其他版本(下载地址: http ...

  8. Docker + node(koa) + nginx + mysql 开发环境搭建

    什么是Docker Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然 ...

  9. spring mvc4.1.6 + spring4.1.6 + hibernate4.3.11 + mysql5.5.25 开发环境搭建及相关说明

    一.准备工作 开始之前,先参考上一篇: struts2.3.24 + spring4.1.6 + hibernate4.3.11 + mysql5.5.25 开发环境搭建及相关说明 struts2.3 ...

随机推荐

  1. 世界地图展开图,来自 Simon's World Map

    Simon's World Map 软件下载地址:https://www.dit-dit-dit.com/Blog/PostId/42/simons-world-map

  2. request对象的方法

    request对象封装的是请求的数据,由服务器创建,作为实参传递给Servlet的方法,一个请求对应一个request对象,request对象可以获得请求数据. 1.获取请求行信息 (1)get提交 ...

  3. Driect3D初始化演示

    初始化Direct3D演示 初始化Driect3D类: #include "Common\d3dApp.h" #include <DirectXColors.h> us ...

  4. Day 13 linux 的输入输出与管道的使用

    1.重定向概述 1.什么是重定向 将原本要输出到屏幕的数据信息,重新定向到某个指定的文件中.比如:每天凌晨定时备份数据,希望将备份数据的结果保存到某个文件中.这样第二天通过查看文件的内容就知道昨天备份 ...

  5. C#基础知识总结(三)--反射

    如何在C#.NET开发中使用反射. 首先,我新建一个普通的类库项目.在该项目的测试类中,定义好 属性.静态方法.实例方法.无参方法等... 代码如下: using System; using Syst ...

  6. 线上CPU飙升100%问题排查,一篇足矣

    一.引子 对于互联网公司,线上CPU飙升的问题很常见(例如某个活动开始,流量突然飙升时),按照本文的步骤排查,基本1分钟即可搞定!特此整理排查方法一篇,供大家参考讨论提高. 二.问题复现 线上系统突然 ...

  7. (转)在阿里云 CentOS 服务器(ECS)上搭建 nginx + mysql + php-fpm 环境

    阿里云的云服务器(ECS)可以选择多种操作系统,打算用它运行 Drupal或者 WordPress ,你最好选择 Linux 系统,这篇文章的演示是基于阿里云的 CentOS 操作系统的服务器.我们在 ...

  8. Django REST Framework之频率限制

    开放平台的API接口调用需要限制其频率,以节约服务器资源和避免恶意的频繁调用 使用 自定义频率限制组件:utils/thottle.py class MyThrottle(BaseThrottle): ...

  9. 两种读取.xml文件的方法

    这里介绍两种读取配置文件(.xml)的方法:XmlDocument及Linq to xml 首先简单创建一个配置文件: <?xml version="1.0" encodin ...

  10. js 跳转链接的几种方式

    1.跳转链接 在当前窗口打开 window.location.href="http://www.baidu.com" 等价于 <a href="baidu.com& ...