Commit Graph

26 Commits

Author SHA1 Message Date
Aleksandar Fabijanic
9530a77347
Insert NULL using BULK #4001 (#4755)
* fix(ODBC): Insert NULL using BULK #4001
resolve bound types and sizes at compile time

* fix: remove string suffix for static_assert

* Insert NULL using BULK #4001

* fix: typo

* fix(SQLite): missing functions; consolidate extract calls

* chore(SQLite): remove unnecessary typedef

* fix(SQLite): remove duplicate functions

* fix(SQLite): compile errors and warnings

* fix(SQLite): extract implementation signatures

* fix(SQLite): long64 platforms compile errors

* fix(SQLite): long64 platforms compile errors, part ii

* fix(ODBC): windows build

* fix(ODBC): MSSQL big string on windows

* fix(Data): psql and mysql compile errors

* fix(PostgreSQL): add missing functions

* fix(ODBC): revert column size discovery (breaks Oracle)

* fix(PostgreSQL): Nullable extraction #4001

* fix(MySQL): Nullable extraction #4001

* chore(Data): code tidy up

* fix(ODBC): add missing changes
2024-11-11 18:23:21 +01:00
Aleksandar Fabijanic
36c808230c
fix(ODBC): Poco:Data::ODBC - MSSQL (n)varchar(max) length issue #4324 (#4738)
* fix(ODBC): Poco:Data::ODBC - MSSQL (n)varchar(max) length issue #4324

* chore(ODBC): remove unused vars; fix SQL Server SDK include path #4324

* fix(ODBC): trim UTF16 string #4324

* chore(ODBC): add compile time big string diagnostics #4324

* chore(ODBC): add SQLServer big string vector test case #4324

* fix(ODBC): detect SQLServer header #4324

* chore: add listing msodbdcsql18 folder #4324

* ci: change odbc drivers installation order #4324

* chore(CMake): Add option ENABLE_DATA_SQL_SERVER_BIG_STRINGS, auto-detection of msodbcsql.h on Linux and macOS

* fix(ODBC): detect backend at runtime for string size; add Session::dbmsName() #4324

* fix(ODBC): wrong char to string conversion #4324

---------

Co-authored-by: cunj123 <n.belusic@pta.hr>
Co-authored-by: Matej Kenda <matejken@gmail.com>
2024-10-19 21:43:00 +02:00
Aleksandar Fabijanic
86084cb7b2
feat(Data::AbstractSessionImpl): add autoCommit property and tests #4261 (#4262)
* fix(Data::AbstracSessionImpl): protect autocommit feature handlers #4261

* chore(CI): re-enable mysql

* MySQL SessionImpl: make sure autocommit mode is on when session is openend or reset.

* PostgreSQL SessionImpl: reuse autocommit flag of AbstractSessionImpl.

* Github workflow: re-activated linux-gcc-make-postgres

* Fixed indentation in ci.yml

* Fix for DataTest SQLExecutor: use connector

* Data::Session: when parser is not used and autocommit mode is off, assume any SQL statement begins a transaction.

* PostgreSQL: don't use SQL parser (it currently cannot handle placeholders).

* PostgreSQL: added test sessionTransactionNoAutoCommit

* PostgreSQL test suite: removed reference to generic SQLExecutor

* PostgreSQL: fixes for sessionTransactionNoAutoCommit.

* MySQL: added test sessionPoolAndUnicode (from #2801)

* Fixed #define in sql-parser

* Data generic testsuite: support numbered placeholders

* PostgreSQL test suite: added missing include directory to Makefile.

* Attempt to fix PostgreSQL Makefiles

* PostgreSQL testsuite: added include path to Makefile

* PostgreSQL testsuite: added PocoDataTest library to Makefile

* DataTest SQLExecutor::formatSQL: don't use string_view

* PostgreSQL test suite: delegated most tests to Poco::Data::Test

* Makefile: added dependencies on Data-Tests

* Weaken assumptions about async in generic transaction tests

* Makefile: added dependency for Prometheus samples

* Fix deadlock in DataTest SQLExecutor

* PostgreSQL tests SQLExecutor: cleanup

* feat(Data::AbstractSessionImpl): add autoCommit property and tests #4261

* Brought MySQL backend in line with _autoCommit flag of AbstractSessionImpl.

---------

Co-authored-by: Friedrich Wilckens <frwilckens@gmail.com>
Co-authored-by: Friedrich Wilckens <friedrich.wilckens@ingramcontent.com>
2023-12-22 09:27:34 +01:00
Kari Argillander
bf3c519183
Fix some issues found with clang-tidy (#4353)
* directoryiterator: Fix missing inline

Add missing inline to inline function.

This was found with clang-tidy check:  misc-definitions-in-headers

* Convert deprecated throw() to noexcept

throw() has been deprecated in standar in C++17. It has been removed in
C++20. Code still compiles but let's just define these at those should
be.

These where found with clang-tidy check: modernize-use-noexcept

* Fix unnecessary copy initializations

Clang-tidy did find these with check:

  performance-unnecessary-copy-initialization

* Fix some strings not references

Looks like these are just missing reference marks.

---------

Co-authored-by: Kari Argillander <kari.argillander@fidelix.com>
2023-12-17 16:55:30 +01:00
Aleksandar Fabijanic
5fa1779f22
Merge pull request #4257 from pocoproject/4244-postgres-setAutoCommit-should-not-call-startTransaction
4244 postgres set auto commit should not call start transaction
2023-11-10 12:52:32 +01:00
Friedrich Wilckens
8740816c78 PostgreSQL SessionHandle: const fixes. 2023-11-03 19:48:52 -07:00
Friedrich Wilckens
6eec8adfcb PostgreSQL SessionHandle: don't call startTransaction in setAutoCommit 2023-11-02 19:45:28 -07:00
Friedrich Wilckens
512e63915b PostgreSQL: when connecting, free old bad connection if there is one. 2023-10-30 14:00:15 -07:00
Friedrich Wilckens
9fcc2fd54d PostgresSQL: make sure session is freed when disconnecting even if its status is not OK. 2023-10-30 13:50:45 -07:00
Friedrich Wilckens
c7b6fa17be Poco::Data::PostGreSQL::SessionHandle: free _pConnection when connection attempt fails. 2023-10-29 13:53:11 -07:00
omerbrandis
3793c0a515
added new memeber SqlState to PostgreSQLException and made use of it. (#4099)
* added new memeber SqlState to PostgreSQLException and made use of it in StatementExecutor

* Added test case testSqlState

* fixed nameing convention errors. fixed bug in PostgreSQLException::PostgreSQLException regarding null termination of _sqlState data member
2023-10-20 17:44:04 +02:00
Günter Obiltschnig
5f17a02548 #3935: The extractor in postgresql drops milliseconds 2023-07-10 21:52:36 +02:00
Günter Obiltschnig
562b3b90c0 merge pg binary extraction support 2022-05-17 07:33:50 +02:00
Günter Obiltschnig
4b0e1848b2 #3559: Poco::Data::PostgreSQL - DateTime extraction truncates fractional seconds 2022-04-07 19:06:51 +02:00
Günter Obiltschnig
ca3d168153 improve BLOB handling, clean-up code 2021-06-25 09:22:58 +02:00
Günter Obiltschnig
6a6f1353ff style, remove unused var 2021-06-24 22:14:52 +02:00
Günter Obiltschnig
7569ccf82b #3318: Data: Support Poco::UUID for data binding 2021-06-19 08:40:49 +02:00
Günter Obiltschnig
8bf57d48e0 #3166: Fix PostgresSQL BLOB extractor 2021-06-15 07:22:18 +02:00
Günter Obiltschnig
4615774f57 #3099: Fixed Postgres extraction into Dynamic::Var 2021-06-15 07:07:09 +02:00
Günter Obiltschnig
8671b08fb4 Postgres: set connector name 2021-04-11 16:06:28 +02:00
Günter Obiltschnig
cfd05c5524 Postgres: fix extractor 2021-04-11 16:05:59 +02:00
Günter Obiltschnig
14e58b7fea code cleanup 2020-01-25 20:43:13 +01:00
Alex Fabijanic
854bf4d79f few PostgreSQL fixes 2020-01-17 10:59:02 +01:00
Günter Obiltschnig
aa46e9b6e4 fixed type overloads 2020-01-09 18:02:29 +01:00
Vojtěch Erben
8d4dee26ea Fixed PostgreSQL SessionImpl, use mysql_reset_connection() if it is
available

Use mysql_reset_connection() only if MySQL version is >= 5.7 or MariaDB
version is >= 3.0.0 otherwise fall back to myslq_refresh()
2018-11-21 10:14:07 +01:00
Alex Fabijanic
f75bc3e00d add postgresql 2018-05-07 15:28:38 +00:00