From a2b2faa6019572388248617d0ac740bde95feb74 Mon Sep 17 00:00:00 2001
From: znone <glyc@sina.com.cn>
Date: Fri, 26 Feb 2021 13:44:08 +0000
Subject: [PATCH] PostgreSQL: support binary data PostgreSQl: add database pool
---
README_CN.md | 43 ++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 42 insertions(+), 1 deletions(-)
diff --git a/README_CN.md b/README_CN.md
index dd063ca..c44f017 100644
--- a/README_CN.md
+++ b/README_CN.md
@@ -413,6 +413,8 @@
| real | float |
| DOUBLE | double |
| text | const char*<br>std::string |
+| bytea | qtl::const_blob_data<br>std::vector<uint8_t> |
+| oid | qtl::postgres::large_object |
| date | qtl::postgres::date |
| timestamp | qtl::postgres::timestamp |
| interval | qtl::postgres::interval |
@@ -428,6 +430,8 @@
| real | float |
| DOUBLE | double |
| text | char[N]<br>std::array<char, N><br>std::string |
+| bytea | qtl::const_blob_data<br>qtl::blob_data<br>std::vector<uint8_t> |
+| oid | qtl::postgres::large_object |
| date | qtl::postgres::date |
| timestamp | qtl::postgres::timestamp |
| interval | qtl::postgres::interval |
@@ -448,7 +452,9 @@
编译测试用例的第三方库需要另外下载。除了数据库相关的库外,测试用例用到了测试框架[CppTest](https://sourceforge.net/projects/cpptest/ "CppTest")。
-测试用例所用的MySQL数据库如下:
+测试用例所用的数据库如下:
+
+### MySQL
```SQL
CREATE TABLE test (
ID int NOT NULL AUTO_INCREMENT,
@@ -466,4 +472,39 @@
);
```
+### PostgreSQL
+```SQL
+DROP TABLE IF EXISTS test;
+CREATE TABLE test (
+ id int4 NOT NULL GENERATED BY DEFAULT AS IDENTITY (
+INCREMENT 1
+MINVALUE 1
+MAXVALUE 2147483647
+START 1
+),
+ name varchar(255) COLLATE default,
+ createtime timestamp(6)
+)
+;
+
+ALTER TABLE test ADD CONSTRAINT test_pkey PRIMARY KEY ("id");
+
+DROP TABLE IF EXISTS test_blob;
+CREATE TABLE test_blob (
+ id int4 NOT NULL GENERATED BY DEFAULT AS IDENTITY (
+INCREMENT 1
+MINVALUE 1
+MAXVALUE 2147483647
+START 1
+),
+ filename varchar(255) COLLATE default NOT NULL,
+ md5 bytea,
+ content oid
+)
+;
+
+ALTER TABLE test_blob ADD CONSTRAINT test_blob_pkey PRIMARY KEY ("id");
+```
+
+
测试用例在 Visual Studio 2013 和 GCC 4.8 下测试通过。
--
Gitblit v1.9.3