comparison Framework/Odbc/OdbcDatabase.cpp @ 338:79e21c33962d

cppcheck
author Sebastien Jodogne <s.jodogne@gmail.com>
date Wed, 11 Aug 2021 14:09:43 +0200
parents b5fb8b77ce4d
children d543832987da
comparison
equal deleted inserted replaced
337:8f109cfbfc5d 338:79e21c33962d
68 { 68 {
69 std::unique_ptr<IResult> result(Execute(statement, parameters)); 69 std::unique_ptr<IResult> result(Execute(statement, parameters));
70 } 70 }
71 71
72 public: 72 public:
73 OdbcImplicitTransaction(OdbcDatabase& db) : 73 explicit OdbcImplicitTransaction(OdbcDatabase& db) :
74 db_(db) 74 db_(db)
75 { 75 {
76 SetAutoCommitTransaction(db_.GetHandle(), true); 76 SetAutoCommitTransaction(db_.GetHandle(), true);
77 } 77 }
78 78
121 { 121 {
122 const std::string state(reinterpret_cast<const char*>(stateBuf)); 122 const std::string state(reinterpret_cast<const char*>(stateBuf));
123 123
124 if (state == "40001") 124 if (state == "40001")
125 { 125 {
126 #if ORTHANC_PLUGINS_VERSION_IS_ABOVE(1, 9, 2)
126 throw Orthanc::OrthancException(Orthanc::ErrorCode_DatabaseCannotSerialize); 127 throw Orthanc::OrthancException(Orthanc::ErrorCode_DatabaseCannotSerialize);
128 #else
129 throw Orthanc::OrthancException(Orthanc::ErrorCode_Database, "Collision between multiple writers");
130 #endif
127 } 131 }
128 } 132 }
129 133
130 switch (completionType) 134 switch (completionType)
131 { 135 {
140 } 144 }
141 } 145 }
142 } 146 }
143 147
144 public: 148 public:
145 OdbcExplicitTransaction(OdbcDatabase& db) : 149 explicit OdbcExplicitTransaction(OdbcDatabase& db) :
146 db_(db), 150 db_(db),
147 isOpen_(true) 151 isOpen_(true)
148 { 152 {
149 SetAutoCommitTransaction(db_.GetHandle(), false); 153 SetAutoCommitTransaction(db_.GetHandle(), false);
150 } 154 }
502 506
503 return false; 507 return false;
504 } 508 }
505 509
506 510
507 void CheckMSSQLEncodings(OdbcDatabase& db) 511 void CheckMSSQLEncodings(const OdbcDatabase& db)
508 { 512 {
509 // https://en.wikipedia.org/wiki/History_of_Microsoft_SQL_Server 513 // https://en.wikipedia.org/wiki/History_of_Microsoft_SQL_Server
510 if (db.GetDbmsMajorVersion() <= 14) 514 if (db.GetDbmsMajorVersion() <= 14)
511 { 515 {
512 // Microsoft SQL Server up to 2017 516 // Microsoft SQL Server up to 2017
539 } 543 }
540 } 544 }
541 } 545 }
542 546
543 547
544 void CheckMySQLEncodings(OdbcDatabase& db) 548 void CheckMySQLEncodings(const OdbcDatabase& db)
545 { 549 {
546 // https://dev.mysql.com/doc/connector-odbc/en/connector-odbc-configuration-connection-parameters.html 550 // https://dev.mysql.com/doc/connector-odbc/en/connector-odbc-configuration-connection-parameters.html
547 551
548 std::string value; 552 std::string value;
549 if (LookupConnectionOption(value, "charset")) 553 if (LookupConnectionOption(value, "charset"))