1. 综述
终于来到了SSQLS( Specialized SQL Structure),照我看来这是一个很类似于Hibernate的功能。也就是说,通过SSQLS可以将一张表完全对应到一个C++结构体中,然后只要对于这个结构体进行操作,同时再加入到对应的mysqlpp:: Query对应的方法中,我们就可以执行对应的SQL语句。
继续阅读 »
1. 综述
终于来到了SSQLS( Specialized SQL Structure),照我看来这是一个很类似于Hibernate的功能。也就是说,通过SSQLS可以将一张表完全对应到一个C++结构体中,然后只要对于这个结构体进行操作,同时再加入到对应的mysqlpp:: Query对应的方法中,我们就可以执行对应的SQL语句。
继续阅读 »
1. 什么是Template Query
在我们实际的编程过程中,我们很容易碰到printf这类需要在运行时来决定到底打印出什么的函数,例如
1 |
printf(“hello %s”, sth); |
在这个例子中,那个%s占位符表明了我们以后希望打印的内容格式和位置。同样,在我们书写SQL语句的时候,也会出现这样的情况,例如
继续阅读 »
1. 综述
其实一看到这两个单词的时候我有点莫名其妙,可能英语没有学好,我的理解就是quoting是“引用”的意思,而Escaping是“逃脱”的意思。后来在看到了作者的TUTORIAL之后才大致明白了两者的意思。
继续阅读 »
1. 综述
DbDriver只是对于MYSQL C API的一个非常简单的封装,作者原句是This class does as little as possible to adapt between its public interface and the interface required by the underlying C API. 作为MYSQL++的使用者我们不应该直接去创建这个类型,而应该默认让mysqlpp:: Connection来来创建和管理,如果实在是需要,可以通过mysqlpp:: Connection::driver( )来获取底层的DbDriver类型。
继续阅读 »
mysqlpp::Field其实使用的并不多,主要在于Result.h中ResultBase以及他的派生类型(UseQueryResult和StoreQueryResult)的几个获取下一个field的方法(全部定义在了ResultBase中),主要如下
继续阅读 »
一、mysqlpp::Row类型
在之前的介绍中我们看到了如何通过mysqlpp::Query找到各种Result类型,然后又仔细分析了各种Result类型又是如何生成对应的Row类型(如下所示)。
继续阅读 »
在本节中,我将首先介绍MYSQL++中的查询的几个简单例子用法,然后看一下mysqlpp::Query中的几个与查询相关的方法原型(重点关注返回值),最后对几个关键类型进行解释。
继续阅读 »
这次要说明的是在MYSQL++中为了实现SQL中的NULL而做出的一系列的举措。我的感觉是Null<T, B>类型通常出现在SSQLS和template Query中比较多。
继续阅读 »
该类型是SQLBuffer的灵魂,它用来表示从SQL TYPE到C++ TYPE的相互转变。该类型被定义在type_info.h中。在这个头文件中,其实定义了三个类型,其中前两个都是在mysql_type_info中所使用的utility类型。
继续阅读 »
1. mysqlpp::SQLBuffer
该类型其实就是SQLTypeAdapter传入的各种类型(int, string, double, long, String, …) 的包装,包装的结果就是
继续阅读 »
近期评论