ODB学习笔记之基础环境搭建

ODB学习笔记之基础环境搭建一,简介ODB是应用于C++的一个开源、跨平台、跨数据库的对象关系映射(ORM)系统。它可以让你持久化C++对象到关系数据库,而不必处理表、列或者SQL,无需手动编写任何映射代码。ODB支持My

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一,简介

ODB是应用于C++的一个开源、跨平台、跨数据库的对象关系映射(ORM)系统。

它可以让你持久化C++对象到关系数据库,而不必处理表、列或者SQL,无需手动编写任何映射代码。

ODB支持MySQL,SQLite,PostgreSQL,Oracle和微软SQL Server关系数据库以及C ++98/03和C ++11语言标准。

它还配备了用于Boost和Qt可选的配置文件,让你可以无缝地使用这些库持久化C++类的值类型、容器和智能指针。

它有易用性,简洁的代码,安全,数据库可移植性,优良的性能,可维护性等优点。

总之它具有完善的学习文档的非常棒的C++的ORM框架。

可以去官网查看更多:http://www.codesynthesis.com/products/odb/

 

二,准备工作

以sqlite为例,在windows平台,用VS2013来搭建开发环境。

1,下载安装包

2,下载ODB核心库

3,下载数据库运行库

4,下载例子程序

5,下载sqlite的源文件(用sqlite所以需要)

地址:http://www.codesynthesis.com/products/odb/download.xhtml

ODB学习笔记之基础环境搭建

由于是windows平台,sqlite数据库,用的以下文件。(别的平台,别的数据库下载相应该的库文件)

odb-2.3.0-i686-windows(ODB的编译器,就是所对象成对sql和头文件,用于持久化相关)

libodb-2.3.0(ODB的核心库,编译出来的odb_d.lib(Debug版本)在examples中需要)

libodb-sqlite-2.3.0(odb操作sqlite的相关功能,编译出来的odb-sqlite-d.lib(Debug版本)在examples中需要)

odb-examples-2.3.0 (odb的例子和演示)

 

三,安装ODB

安装很简单。

1,解压odb-2.3.0-i686-windows,

2,把bin目录加到环境变量中

3,命令行输入odb –version看是否安装成功

详细的可以看README里面写的。

ODB学习笔记之基础环境搭建

如现如下提示,可以就说安装成功了

ODB学习笔记之基础环境搭建

 

四,编译ODB核心库,ODB的sqlite库,sqlite库

以下都是说的debug版本。

1,编译ODB核心库,生成odb-d.lib和odb-d-2.3-vc11.dll

2,编译sqlite库,生成sqlite.lib

3,编译ODB的sqlite库,生成odb-sqlite-d.lib和odb-sqlite-d-2.3-vc11.dll

 

 

解压libodb-2.3.0,后会看见vs2008-2011的工程文件,真接用VS打开就OK,然后把下面路径加到VC的目录中。

  Include:    …\libodb
  Library:    …\libodb\lib
  Executable: …\libodb\bin

然后编译,会在lib目录下生成odb-d.lib,在bin目录下生成odb-d-2.3-vc11.dll。

 

用sqlite编译出,生成sqlite.lib,直接可以参考官网。

需要注意的是,在编译的时候需要把SQLITE_ENABLE_UNLOCK_NOTIFY宏加上,如果不加上,那就要在libodb-sqlite-2.3.0工程中去掉LIBODB_SQLITE_HAVE_UNLOCK_NOTIFY宏。

 

解压libodb-sqlite-2.3.0,同样打开vs的工程文件。把vc目录添加到到工程中。

  Include:    …\libodb-sqlite
  Library:    …\libodb-sqlite\lib
  Executable: …\libodb-sqlite\bin

要把odb-d.lib所在目录加到Library中,把odb-d-2.3-vc11.dll加到Executable中。

还要把sqlite的头文件所以在的目录放到  Include中,把sqlite.lib所在目录加到Library中。

然后编译,会在lib目录下生成odb-sqlite-d.lib,在bin目录下生成odb-sqlite-d-2.3-vc11.dll。

 

五,运行例子程序

前期的工作已经做好了,直接解压,用vs的打开。

我先进的是Hello程序。

1,用ODB编译器生成,persion.hxx,和person-odb.ixx文件。

方法是: 在该目录下输入odb -d sqlite –generate-query –generate-schema person.hxx

详见:http://www.codesynthesis.com/products/odb/doc/odb.xhtml

2,把核心库头文件,libodb-sqlite的头文件及sqlite的头文件目录加到VC的Include中。

3,把sqlite.lib,odb-sqlite-d.lib,odb-d.lib的目录均加到VC的Libary中。

然后编译运行。出现

ODB学习笔记之基础环境搭建

说明搭建成功。

 

总结:

1,ODB也是才接触,当时走了不了弯路,原因就是求成心切,不看文档,下了程序包就开搞了,结果可想而知。勿在浮沙筑高台。

2,编译时当时为一个错误盲目google好久,最后发现自己output都没看,直接看error面板去了。

插曲:当时odb才安装好,在自己打开的cmd命令中odb是OK的,但在批处理中写的odb系统却找不到odb。导致vs中讲运例子出现错误。(vs中要调用odb修改相关文件),但vs报的是连接错误,cmd.exe 的9009错误。没看output,直接google去了。后来发现是找不到odb,半天也没解决。后来重起之后解决了。环境变量有一定的缓存?

3,多看看文档,官网上的操作写得很详细,而且每个包下,都有readme和insall文档,都对如何运行有详细的描述,按上面的来一般是没什么问题。这个项目考虑也很周全,2008到2011的工程都给出了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/167490.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 琶音的正确弹奏法

    琶音的正确弹奏法

    2021年6月6日
    143
  • 【永久一次性解决】github访问慢[通俗易懂]

    【永久一次性解决】github访问慢[通俗易懂]一次性解决

    2022年7月16日
    15
  • 接口 DatabaseMetaData.getColumns

    接口 DatabaseMetaData.getColumns来源:http://docs.oracle.com/javase/1.4.2/docs/api/java/sql/DatabaseMetaData.html#getColumns(java.lang.String,java.lang.String,java.lang.String,java.lang.String)http://www.cjsdn.net/doc/jdk50/

    2022年6月19日
    46
  • 常用的DML语句「建议收藏」

    常用的DML语句「建议收藏」常用的DML语句一、SELECT查询(Select字段1,字段2,字段3…….fromtable_name)—查询语句中可以使用一个或者多个表,表之间使用“,”隔开—select命令可以读取一条或者多条记录—你可以使用星号(*)来代替其他字段可以搭配select语句使用的有:where子句、like字句、join连接(1)Where子句(条件查询语句)(Select字段1,字段2,字段3…….fromtable_name)…

    2022年10月7日
    1
  • 快速加速计算机的方法,电脑慢的快速解决办法 四种方法电脑速度变快10倍[通俗易懂]

    快速加速计算机的方法,电脑慢的快速解决办法 四种方法电脑速度变快10倍[通俗易懂]电脑这种东西刚买来的时候用起来“刷刷”的,随着使用时间的增加,电脑就会开始莫名的变卡、变慢。作为一个资深的电脑大神,电脑慢这种问题根本就不能算电脑问题,让电脑变快的方法有很多,而且操作都巨简单,下面就一起来看看吧。电脑慢的快速解决办法一、系统常规优化1、你可以关闭系统属性中的特效,点击开始,控制面板,系统,高级,性能,设置在视觉效果中,设置为调整为最佳性能,确定。2、双击我的电脑,属性,高级,错…

    2022年6月5日
    53
  • 使用Java判断闰年

    使用Java判断闰年我们在做这一题之前 我们首先要弄清楚什么是闰年 简而言之闰年就是可以被 4 整除不能被 100 整除 或者可以被 400 整除 那么这一年就是闰年 leapyear 然后就按照以上条件一步一步写代码 public nbsp static nbsp void nbsp main String args nbsp nbsp nbsp nbsp nbsp nbsp Scannersc newScanner System in nbsp nbsp nbsp nbsp nbsp nbsp System out printl

    2025年8月22日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号