ODB hello world example using PostgreSQL in windows

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 17:58   4291   0

hello example编译运行总结:

一定要学会看官网文档,需要哪些库下载下来,然后看库包里的INSTALL或readme文档。路径的确定要参考文档,不要理所当然。

要安装postgreSQL installer,否则没有pgsql服务,不能监听5432端口。
要安装installer,而不是binaries,binaries还要配置一下才能创建pgsql应用(keyword:安装postgres)
pgsql的超级用户是postgres,密码安装的时候设置了
运行hello example前,先要在postgres中创建用户和数据库,赋予用户所有权限,然后调用odb生成的sql文件创建table:

cmd进入example目录;
登录postgres:

psql -U postgres


创建用户:
CREATE USER Mike WITH PASSWORD 'password';

创建数据库,并指定所有者为Mike :
CREATE DATABASE person OWNER Mike ;

将person数据库的所有权限都赋予Mike ,否则Mike 只能登录控制台,没有任何数据库操作权限:
GRANT ALL PRIVILEGES ON DATABASE person to Mike ;

运行sql文件,创建person表:
\i person.sql;

到此,然后VS就可以运行hello example了


可以用构造函数传参数

使用tracer打印详细的sql语句:
transaction t (db->begin ());
// 打印出详细的sql语句
t.tracer(stderr_tracer);

错误:
数据库不存在:postgres没有创建数据库
42P01:postgres没有创建table

还以为person.sql会自动被调用,原来还是有手动运行sql文件(\i FILE)


参考:

C++ Object Persistence with ODB

【一】ODB - C++ 访问数据库的利器--Hello World On Windows(Version-24)

PostgreSQL新手入门

Windows上PostgreSQL安装配置教程,postgresql安装教程

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP